[[Uebersicht|← Zurück zur Homepage]]
# PaperSafe – Host-Konfiguration und Wiederherstellung
> **Wozu dieser Ordner:** Die hier gesicherten Dateien liegen auf dem **Proxmox-Host**, nicht im Container. Der `vzdump` sichert nur Gäste – Host-Dateien sind darin **nicht** enthalten. Ohne diese Sicherung wären sie bei einem Ausfall der Host-SSD verloren.
## Warum das kritisch ist
Nach einem Restore von CT 110 aus dem `vzdump` läuft Paperless wieder – **scheinbar**. Tatsächlich fehlt ohne die hier gesicherten Dateien:
| Fehlt | Folge |
|---|---|
| Die beiden CIFS-Mounts (`fstab`) | Consume-Ordner leer, Exportziel weg – **es wird nichts mehr importiert** |
| Der `/etc/hosts`-Eintrag | `dsobe2023` löst wieder nur auf IPv6 auf, der Host hat kein IPv6-Routing (siehe [[04-Betrieb-Backup]] 4b) |
| Die systemd-Timer | Wöchentlicher Export und tägliche Thin-Pool-Prüfung laufen nicht mehr |
**Alle vier Ausfälle sind still.** In der `fstab` steht `nofail`, der Bootvorgang meldet also keinen Fehler; nicht vorhandene Timer melden ebenfalls nichts. Es ist derselbe Fehlermodus wie beim IPv6-Vorfall vom 20.07.2026 – nur an vier Stellen gleichzeitig und ohne Anlass hinzusehen.
## Inhalt
| Datei | Ziel auf dem Host | Rechte |
|---|---|---|
| `papersafe-export.sh` | `/usr/local/sbin/` | `0700 root:root` |
| `thinpool-check.sh` | `/usr/local/sbin/` | `0700 root:root` |
| `papersafe-export.service` | `/etc/systemd/system/` | `0644 root:root` |
| `papersafe-export.timer` | `/etc/systemd/system/` | `0644 root:root` |
| `thinpool-check.service` | `/etc/systemd/system/` | `0644 root:root` |
| `thinpool-check.timer` | `/etc/systemd/system/` | `0644 root:root` |
| `
[email protected]` | `/etc/systemd/system/` | `0644 root:root` |
| `fstab-hosts-auszug.txt` | **nicht kopieren** – Zeilen einzeln übernehmen | – |
**Zeitpläne:** Export **zweimal täglich 07:00 und 19:00** (seit 21.07.2026, zuvor sonntags 03:00), Thin-Pool-Prüfung täglich 07:00 (`RandomizedDelaySec=10min`), beide `Persistent=true` – verpasste Läufe werden nachgeholt.
## ⚠ Nicht in dieser Sicherung: die Zugangsdaten
`/root/.smbcred-papersafeexport` und `/root/.smbcred-papersafeconsume` enthalten das NAS-Passwort und gehören nach Projektregel 6 **nicht ins Vault**. Sie müssen nach einem Restore von Hand angelegt werden – Aufbau siehe Schritt 3.
Die sieben kopierten Dateien wurden gegen `password`, `secret` und `token` geprüft: **secret-frei**. Die `fstab` verweist nur auf die Pfade der Zugangsdateien, nicht auf deren Inhalt.
## Wiederherstellung
### 1. Skripte und Units zurückspielen
```bash
# vom Arbeitsplatz aus, aus diesem Ordner heraus
scp papersafe-export.sh thinpool-check.sh proxmox:/usr/local/sbin/
scp *.service *.timer proxmox:/etc/systemd/system/
ssh proxmox
chmod 0700 /usr/local/sbin/papersafe-export.sh /usr/local/sbin/thinpool-check.sh
chmod 0644 /etc/systemd/system/papersafe-export.* /etc/systemd/system/thinpool-check.* \
/etc/systemd/system/
[email protected]
```
### 2. Namensauflösung des NAS
```bash
grep -q dsobe2023 /etc/hosts || \
echo '192.168.2.87 dsobe2023 dsobe2023.fritz.box' >> /etc/hosts
getent ahostsv4 dsobe2023 # muss 192.168.2.87 liefern
```
> `getent hosts` führt hier in die Irre – es fragt beide Adressfamilien ab. Aussagekräftig sind `getent ahostsv4` und `ping`.
### 3. Zugangsdaten neu anlegen
```bash
for s in papersafeexport papersafeconsume; do
cat > /root/.smbcred-$s <<'EOF'
username=dsadmin
password=<separat übermittelt>
EOF
chmod 0600 /root/.smbcred-$s
done
```
### 4. Mounts eintragen und prüfen
Die beiden Zeilen aus `fstab-hosts-auszug.txt` in `/etc/fstab` übernehmen, dann:
```bash
mkdir -p /mnt/papersafe-export /mnt/papersafe-consume
mount -a
mountpoint -q /mnt/papersafe-export && mountpoint -q /mnt/papersafe-consume && echo "beide Mounts OK"
```
> **Die UID im Consume-Mount ist tragend.** `uid=101000,gid=101000` entspricht Container-UID 1000 im unprivilegierten LXC. Ohne diese Zuordnung kann Paperless konsumierte Dateien nicht löschen und der Ordner läuft voll.
### 5. Timer aktivieren
```bash
systemctl daemon-reload
systemctl enable --now papersafe-export.timer thinpool-check.timer
systemctl list-timers 'papersafe-*' 'thinpool-*' --all
```
### 6. Funktionsprüfung
```bash
/usr/local/sbin/thinpool-check.sh # muss ohne Fehler durchlaufen
systemctl start papersafe-export.service # Export einmal von Hand
journalctl -u papersafe-export.service -n 30 --no-pager
```
Erst wenn eine Exportdatei auf `/mnt/papersafe-export` liegt und die Größenprüfung im Log bestätigt ist, ist die Wiederherstellung vollständig.
## Pflege
Diese Kopien sind ein Abbild vom **20.07.2026**. Wird ein Skript, eine Unit, die `fstab` oder der `hosts`-Eintrag auf dem Host geändert, muss die Änderung hier nachgezogen werden – sonst stellt die Anleitung einen veralteten Stand wieder her.
---
**Status:** Gesichert – 7 Dateien, secret-frei geprüft, Wiederherstellung beschrieben (nicht getestet)
**Version:** 1.0
**Letzte Aktualisierung:** 20.07.2026, 15:20 Uhr
### Änderungshistorie
| Version | Datum | Uhrzeit | Änderung |
|---|---|---|---|
| 1.0 | 20.07.2026 | 15:20 | Erstfassung. Sieben Host-Dateien ins Vault gesichert, nachdem festgestellt wurde, dass die gesamte Host-Konfiguration von PaperSafe in keiner Sicherung liegt. Wiederherstellung in sechs Schritten beschrieben, einschließlich der beiden nicht mitgesicherten Zugangsdateien |
---
[[Impressum|Impressum]] | [[Datenschutzerklärung|Datenschutz]]