diff --git a/hosts/cfgmon.md b/hosts/cfgmon.md index 4f1420d..58d4f23 100644 --- a/hosts/cfgmon.md +++ b/hosts/cfgmon.md @@ -207,6 +207,44 @@ verlinkten Issues (ThreadNet-Web#2, gitops#44) abarbeiten. --- +## CFGMON-09 — Gitea-Backups off-host in die Storage Box (eigenes Borg-Repo) + +**Status:** offen — bewusst zurückgestellt am 2026-07-30 + +**Achtung: Der nächtliche Backup-Cron ist seit dem 2026-07-30 deaktiviert** +(auskommentiert in der Crontab von `rantanplan`). Bis zur Umsetzung dieses Punkts +laufen **keine Gitea-Backups** — der letzte Stand ist +`/opt/backup/gitea-dump-2026-07-30.tar.gz`. Beim Erledigen (oder Verwerfen) dieses +Punkts den Cron wieder aktivieren. + +Ausgangslage: Die Platte (38G) ist zu 73 % voll, der einzelne lokale Dump belegt +4,3 GB (beides `df`/`du` vom 2026-07-30). Das Backup-Script +(`/opt/thread-net-git/backup/gitea-backup.sh`) rotiert deshalb auf genau einen +Stand; Historie existiert nur, wenn jemand manuell per scp abzieht. +Off-host-Kopien fehlen komplett. + +Plan: **Eigenes Borg-Repo auf der Hetzner Storage Box.** Die Storage Box spricht +Borg nativ über SSH (Port 23, laut Hetzner-Doku — nicht von hier verifiziert, +es existiert noch keine Storage Box dafür), z. B. +`ssh://uXXXXXX@uXXXXXX.your-storagebox.de:23/./backups/gitea`. + +- **Dedup:** Die nächtlichen Dumps sind fast identisch — Borg überträgt nur + geänderte Blöcke. Dafür den Dump **unkomprimiert** an Borg geben (das `gzip` im + Script entfällt, Borg komprimiert selbst), sonst greift die Deduplizierung nicht. +- **Retention** über `borg prune` (z. B. 7 täglich, 4 wöchentlich, 6 monatlich) + statt nur eines Standes. +- Optional ein **Sub-Account** der Storage Box mit eigenem Verzeichnis, damit das + Gitea-Repo von anderen Backups getrennt bleibt. + +Voraussetzungen, beide beim User: + +1. Storage-Box-Username (`uXXXXXX`) bzw. Sub-Account (im Hetzner-Robot anlegen). +2. Der Host hat **keinen SSH-Key** (`~/.ssh/` enthält nur `authorized_keys`, + geprüft 2026-07-30) — Key generieren und den Public Key in der Storage Box + hinterlegen (Robot-Webinterface oder einmalig per Passwort-Login). + +--- + ## Erledigt ### CFGMON-05 — Monitoring-Stack unter IaC bringen · erledigt 2026-07-30