minikurse:raspberry:pdf_automatisierung_mit_bash_und_cron_raspberry_pi_und_dokuwiki:start

Dies ist eine alte Version des Dokuments!


PDF-Automatisierung mit Bash & Cron – Raspberry Pi & DokuWiki

In diesem Mini-Kurs richtest du eine automatische PDF-Erzeugung für dein DokuWiki ein.
Ganz ohne manuelles Klicken. Das PDF wird täglich erstellt und auf deiner SD-Karte gespeichert.

Lege ein neues Skript an, das dein gesamtes Kursmaterial und die PDF-Übersicht automatisch exportiert:

sudo nano /home/pi/pdf_export.sh

Inhalt:

#!/bin/bash
# PDF-Export-Skript für DokuWiki mit dw2pdf
 
# Aktuelles Datum
DATUM=$(date +%F)
 
# Zielverzeichnisse
ZIEL_KURS="/home/pi/pdf_exports/kursmaterial_${DATUM}.pdf"
ZIEL_OVERVIEW="/home/pi/pdf_exports/uebersicht_${DATUM}.pdf"
 
# Export-URLs
URL_KURS="http://localhost/doku.php?do=export_pdfbook&id=start"
URL_OVERVIEW="http://localhost/doku.php?do=export_pdfbook&id=pdfs:start"
 
# PDF-Generierung
wget -O "$ZIEL_KURS" "$URL_KURS"
wget -O "$ZIEL_OVERVIEW" "$URL_OVERVIEW"

Dann ausführbar machen:

chmod +x /home/pi/pdf_export.sh

Damit der Webserver (www-data) und dein Pi-Nutzer (pi) beide auf das Webverzeichnis und den PDF-Ordner zugreifen können, richten wir gemeinsame Rechte ein. So sparst du dir künftig manuelles Rechte-Setzen im Terminal, und kannst direkt in FileZilla Ordner/Dateien anlegen und löschen.

sudo usermod -aG www-data pi
sudo chown -R www-data:www-data /var/www/html
find /var/www/html -type d -exec chmod 2775 {} \;
find /var/www/html -type f -exec chmod 664 {} \;
chmod g+s /var/www/html

✅ Ergebnis: Du kannst als <code>pi</code> direkt PDF-Dateien schreiben, Skripte anlegen oder Wiki-Dateien ändern – ohne <code>sudo</code>.

📦 Jetzt einmal neu einloggen oder den Raspberry Pi neustarten, damit die neuen Gruppenrechte aktiv sind.

mkdir -p /home/pi/pdf_exports

Verzeichnis anlegen:

sudo mkdir -p /var/www/html/lib/plugins/dw2pdf/tpl/odp

Deckblatt (cover.html):

Pfad: `/var/www/html/lib/plugins/dw2pdf/tpl/odp/cover.html`

<html>
  <head>
    <style>
      body {
        background: #ffffff;
        font-family: monospace;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100vh;
        font-size: 16pt;
      }
      pre {
        text-align: center;
      }
    </style>
  </head>
  <body>
    <pre>
 ____  ____  _____ ____     _    ____  _   _ _  __
|  _ \|  _ \| ____|  _ \   / \  |  _ \| | | | |/ /
| | | | | | |  _| | |_) | / _ \ | | | | | | | ' / 
| |_| | |_| | |___|  _ < / ___ \| |_| | |_| | . \ 
|____/|____/|_____|_| \_/_/   \_\____/ \___/|_|\_\
 
DOKUWIKI PDF-KURS
    </pre>
  </body>
</html>

Kopfzeile (header_even.html & header_odd.html):

<div style="font-size: 8pt; text-align: right;">
Seite [[@PAGE@]]
</div>

Fußzeile (footer_even.html & footer_odd.html):

<div style="font-size: 7pt; text-align: center; color: #999;">
© Olaf Droste Products – wiki.droste-home.net
</div>

→ Dann in DokuWiki aktivieren unter Admin → PDF Export (`dw2pdf`) → Vorlage: `odp`

crontab -e

Füge am Ende diese Zeile hinzu:

0 0 * * * /home/pi/pdf_export.sh

🕛 Jetzt wird jeden Tag um Mitternacht automatisch dein PDF und eine PDF-Übersicht generiert.

Lege eine Seite `pdfs:start` mit folgendem Inhalt an:

```dokuwiki

PDF-Downloadübersicht

Hier findest du die automatisch erzeugten PDF-Dateien:

Diese Seite wird ebenfalls automatisch als PDF gespeichert.

  • minikurse/raspberry/pdf_automatisierung_mit_bash_und_cron_raspberry_pi_und_dokuwiki/start.1750956603.txt.gz
  • Zuletzt geändert: 2025/06/26 18:50
  • von strangelove