Make backup report hostname configurable

This commit is contained in:
admin committed 2026-09-12 18:53:01 +02:00
1 parent 99da6460d2
commit 64eab1d3c2
7 files changed
+121 -7

No files matched your search

+31 -1
View File
@@ -28,6 +28,11 @@ nicht nachträglich.
Der Abschlussmarker wird außerdem bytegenau bestätigt, einschließlich seiner
Zeilenumbrüche, damit Backup und Restore dieselbe strikte Prüfung verwenden.
Seit 12.09.2026 lässt sich der Hostname in Mail-Betreff und Bericht mit
`MAIL_HOSTNAME` festlegen, etwa `gemini.jr-it-services.de` statt
`localhost.localdomain`. Einstellung und Update-Schritte stehen unter
[Mailberichte](#mailberichte).
## Automatisches Update-Paket (empfohlen)
Das neue Paket übernimmt Konfigurationsabgleich, Rechteprüfung, Installation,
@@ -229,10 +234,35 @@ ENABLE_MAIL_REPORT=true
MAIL_TO="johannes"
MAIL_FROM="" # Standard: app-backup@<FQDN>
MAIL_SUBJECT_PREFIX="[app-backup]"
MAIL_HOSTNAME="" # Leer: System-FQDN; überschreibt nur Betreff/Bericht
MAIL_INCLUDE_LOG_TAIL_LINES=200
MAIL_SEND_TIMEOUT=30
```
Für Gemini vor dem Start des neuen Update-Pakets die aktive Konfiguration öffnen:
```bash
sudoedit /etc/app-backup/app-backup.conf
```
Diese Zeile ergänzen beziehungsweise einen vorhandenen Wert ersetzen:
```bash
MAIL_HOSTNAME="gemini.jr-it-services.de"
```
Anschließend das aktuelle `.run`-Paket wie oben beschrieben installieren. Es erhält
die Einstellung; bereits die Mail des Abnahmebackups verwendet dann beispielsweise
`[app-backup] SUCCESS gemini.jr-it-services.de appbackup_2026-…` und
`Host: gemini.jr-it-services.de` im Bericht. Auch Fehlermails verwenden den Wert.
Nach Installation dieser Version genügt für spätere Änderungen das Bearbeiten der
Konfiguration; sie wird bei jedem Lauf neu gelesen, ein Dienstneustart ist nicht nötig.
Ein leerer oder fehlender Wert verwendet weiterhin den automatisch über Python
`socket.getfqdn()` ermittelten Systemnamen. `MAIL_HOSTNAME` ändert weder den
Systemhostname noch Archivnamen oder Absender. Für den Absender gilt weiterhin
`MAIL_FROM` beziehungsweise bei leerem Wert `app-backup@<System-FQDN>`.
`MAIL_TO` darf wie bisher ein lokaler Alias oder eine Mailadresse sein. Versand
über `/usr/sbin/sendmail`; die lokale Mailzustellung muss dafür eingerichtet sein.
Der Bericht bleibt zusätzlich unter `/var/log/app-backup/report_LAUF.eml` mit
@@ -248,4 +278,4 @@ docker build -t app-backup-test -f tests/Dockerfile .
docker run --rm --network none -v "$PWD:/src:ro" app-backup-test
```
ShellCheck, echte MariaDB-Dumps/Imports, gzip/zstd, rsync, lokale Crypt-Uploads und Remote-Restore sowie Fehlerfälle laufen im Container. systemd, Nextcloud-occ und der Mailversand sind simuliert; Nachrichten werden nur lokal erfasst. Am 10.09.2026 bestanden alle 65 Tests. Eine echte Rocky-/Nextcloud-/Gitea-/OneDrive-Wiederherstellungsprobe und die tatsächliche Mailzustellung bleiben Teil der Serverabnahme.
ShellCheck, echte MariaDB-Dumps/Imports, gzip/zstd, rsync, lokale Crypt-Uploads und Remote-Restore sowie Fehlerfälle laufen im Container. systemd, Nextcloud-occ und der Mailversand sind simuliert; Nachrichten werden nur lokal erfasst. Am 12.09.2026 wurden 68 Testfälle abgedeckt: 63 bestanden im Gesamtlauf; nach Korrektur von fünf Testprüfungen für SMTP-Zeilenumbrüche bestanden alle 13 gezielt wiederholten Mail-/Installertests, einschließlich dieser fünf Fälle. ShellCheck und Shell-Syntaxprüfung bestanden. Eine echte Rocky-/Nextcloud-/Gitea-/OneDrive-Wiederherstellungsprobe und die tatsächliche Mailzustellung bleiben Teil der Serverabnahme.