Add restore handbook and Unraid job guide

This commit is contained in:
2026-05-07 11:11:36 +02:00
parent 16416d964f
commit d20b687211
3 changed files with 307 additions and 0 deletions
+106
View File
@@ -0,0 +1,106 @@
# 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
pwsh -File /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.ps1 -Mode 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
pwsh -File /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.ps1 -Mode vaultwarden -WhatIf \
> /mnt/user/backups/restore-reports/vaultwarden-plan-$(date +%F).md
```
## Script 3 - `restore-gitea-monthly`
Zeit:
- 3. Samstag im Monat, 07:00
V1-Inhalt:
```bash
#!/bin/bash
pwsh -File /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.ps1 -Mode gitea -WhatIf \
> /mnt/user/backups/restore-reports/gitea-plan-$(date +%F).md
```
## Script 4 - `restore-paperless-bimonthly`
Zeit:
- jeder 2. Monat, 2. Samstag, 08:00
V1-Inhalt:
```bash
#!/bin/bash
pwsh -File /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.ps1 -Mode paperless -WhatIf \
> /mnt/user/backups/restore-reports/paperless-plan-$(date +%F).md
```
## Warum V1 mit `-WhatIf`
- keine unkontrollierten Restore-Laeufe im Cron
- erst Host-Scheduler sauber verdrahten
- spaeter gezielt auf echte Vollautomatik umstellen
## V2 Zielbild
Spaeter werden die drei Restore-Scripts von Plan-/Scaffold-Modus auf echte Host-Ausfuehrung umgestellt:
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 pwsh -File /mnt/user/services/homelab/ops/restore-tests/run-restore-checks.ps1 -Mode freshness > "$REPORT"; then
echo "Restore freshness check ok: $REPORT"
else
echo "Restore freshness check failed: $REPORT"
fi
```