107 lines
2.1 KiB
Markdown
107 lines
2.1 KiB
Markdown
# Unraid User Scripts fuer Restore-Checks
|
|
|
|
## Ziel
|
|
|
|
Diese Vorlagen binden die validierten Restore-Checks in Unraid User Scripts ein.
|
|
|
|
Host-Repo-Pfad:
|
|
|
|
```text
|
|
/mnt/user/services/homelab
|
|
```
|
|
|
|
## Script 1 - `restore-freshness-weekly`
|
|
|
|
Zeit:
|
|
|
|
- Montag, 06:30
|
|
|
|
Inhalt:
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
bash /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.sh freshness \
|
|
> /mnt/user/backups/restore-reports/freshness-$(date +%F).md
|
|
```
|
|
|
|
Erwartung:
|
|
|
|
- prueft Dump-Frische
|
|
- prueft Report-Frische
|
|
- startet keine Container
|
|
|
|
## Script 2 - `restore-vaultwarden-monthly`
|
|
|
|
Zeit:
|
|
|
|
- 1. Samstag im Monat, 07:00
|
|
|
|
V1-Inhalt:
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
bash /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.sh vaultwarden \
|
|
> /mnt/user/backups/restore-reports/vaultwarden-$(date +%F).md
|
|
```
|
|
|
|
## Script 3 - `restore-gitea-monthly`
|
|
|
|
Zeit:
|
|
|
|
- 3. Samstag im Monat, 07:00
|
|
|
|
V1-Inhalt:
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
bash /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.sh gitea \
|
|
> /mnt/user/backups/restore-reports/gitea-$(date +%F).md
|
|
```
|
|
|
|
## Script 4 - `restore-paperless-bimonthly`
|
|
|
|
Zeit:
|
|
|
|
- jeder 2. Monat, 2. Samstag, 08:00
|
|
|
|
V1-Inhalt:
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
bash /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.sh paperless \
|
|
> /mnt/user/backups/restore-reports/paperless-$(date +%F).md
|
|
```
|
|
|
|
## Stand
|
|
|
|
- die Bash-Jobs wurden am 2026-05-07 hostseitig erfolgreich verifiziert
|
|
- `freshness`, `vaultwarden`, `gitea` und `paperless` laufen damit prinzipiell automatisch
|
|
- `ntfy` kommt erst als naechster Ausbau
|
|
|
|
## V2 Zielbild
|
|
|
|
Als naechster Ausbau kommen dazu:
|
|
|
|
1. Restore aus Borg
|
|
2. Testcontainer starten
|
|
3. Smoke-Test
|
|
4. Report schreiben
|
|
5. optional `ntfy`
|
|
6. Bereinigung
|
|
|
|
## Optionales `ntfy` Wrapper-Muster
|
|
|
|
Wenn `ntfy` spaeter dazukommt, soll der Host-Job nur Erfolg/Fehler referenzieren, nicht den ganzen Report in die Nachricht kippen.
|
|
|
|
Beispiel:
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
REPORT="/mnt/user/backups/restore-reports/freshness-$(date +%F).md"
|
|
if bash /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.sh freshness > "$REPORT"; then
|
|
echo "Restore freshness check ok: $REPORT"
|
|
else
|
|
echo "Restore freshness check failed: $REPORT"
|
|
fi
|
|
```
|