Dokumentation optimiert

This commit is contained in:
scriptos 2025-08-23 11:52:26 +02:00
parent 9b508ec1c5
commit 05287cce70

View File

@ -1,6 +1,6 @@
# PBS Backup Client Script
Dieses Bash-Script erstellt hostbasierte Datei-Backups (pxar) zu einem Proxmox Backup Server (PBS) und benachrichtigt dich bei Erfolg oder Fehler per E-Mail sowie optional via Ntfy. Es ist für den automatisierten Betrieb (z. B. Cron) ausgelegt und nutzt eine ausgelagerte Konfigurationsdatei.
Dieses Bash-Script erstellt hostbasierte Datei-Backups (pxar) zu einem Proxmox Backup Server (PBS) und benachrichtigt dich bei Erfolg oder Fehler optional per E-Mail sowie via Ntfy. Es ist für den automatisierten Betrieb (z. B. Cron) ausgelegt und nutzt eine ausgelagerte Konfigurationsdatei.
## Features
- pxar-Backups definierter Verzeichnisse zu PBS
@ -12,29 +12,29 @@ Dieses Bash-Script erstellt hostbasierte Datei-Backups (pxar) zu einem Proxmox B
- TLS-Fingerprint nur bei selbstsigniertem PBS-Zertifikat notwendig (optional)
## Konfiguration
Alle Einstellungen liegen **ausschließlich** in der Konfigurationsdatei. Standard: `pbs-backup.v2.conf` im selben Verzeichnis wie das Script; alternativ den Pfad per Umgebungsvariable setzen:
Alle Einstellungen liegen **ausschließlich** in der Konfigurationsdatei. Standard: `pbs-backup.v2.conf` im selben Verzeichnis wie das Script; alternativ den Pfad per Umgebungsvariable im Script setzen:
`CONFIG_FILE=/pfad/zur/pbs-backup.v2.conf`.
**PBS-Variablen:**
- `PBS_REPOSITORY` (Pflicht): Repository-String im Format
ohne Port:
ohne Port, wenn PBS unter dem Standard-Port erreichbar ist:
`root@pam!<apiuser>@<pbs-host>:<datastore>`
mit Port (z. B. öffentlich via HTTPS):
`root@pam!<apiuser>@<pbs-host>:<port>:<datastore>`
Beispiel:
`root@pam!vps-backup@pbs.domain.com:443:backup2`
Hinweis: Wenn der PBS aus dem Internet über einen anderen Port als den `8007` erreichbar ist, **muss** der HTTPS-Port angegeben werden.
Hinweis: Wenn der PBS aus dem Internet über einen anderen Port als den `8007` erreichbar ist, **muss** der Port angegeben werden.
- `PBS_FINGERPRINT` (optional): Nur erforderlich bei selbstsigniertem Zertifikat; sonst **leer lassen**.
- `PBS_API` (Pflicht für Auth): API-Key für die Authentifizierung. Das Script setzt ihn intern nur im Subshell als `PBS_PASSWORD`, damit er nicht ins globale Environment oder in Logs gelangt.
**Weitere Optionen (Auszug):**
- `INCLUDE_DIRS`: Array der zu sichernden Verzeichnisse.
- `LOGFILE`, `LOCKFILE`: Pfade für Log- und Lock-Datei.
- Mail: `MAIL_ENABLED`, `MAIL_CMD`, `MAIL_RECIPIENTS`, `MAIL_NOTIFY_ON_SUCCESS`, `MAIL_SUBJECT_SUCCESS`, `MAIL_SUBJECT_FAILURE`.
- Ntfy: `NTFY_ENABLED`, `NTFY_TOPIC_URL`, `NTFY_AUTH_TOKEN`, `NTFY_NOTIFY_ON_SUCCESS`, `NTFY_TITLE_SUCCESS`, `NTFY_TITLE_FAILURE`, `NTFY_PRIORITY_SUCCESS`, `NTFY_PRIORITY_FAILURE`, `NTFY_TAIL_LINES`.
- Mail: `MAIL_ENABLED`, `MAIL_CMD`, `MAIL_RECIPIENTS`, `MAIL_NOTIFY_ON_SUCCESS`, `MAIL_SUBJECT_SUCCESS`, `MAIL_SUBJECT_FAILURE`.
- Ntfy: `NTFY_ENABLED`, `NTFY_TOPIC_URL`, `NTFY_AUTH_TOKEN`, `NTFY_NOTIFY_ON_SUCCESS`, `NTFY_TITLE_SUCCESS`, `NTFY_TITLE_FAILURE`, `NTFY_PRIORITY_SUCCESS`, `NTFY_PRIORITY_FAILURE`, `NTFY_TAIL_LINES`.
- Monitoring: `HEALTHCHECK_OK_FILE` (wird bei Erfolg geschrieben, bei Fehler entfernt).
> Abhängigkeiten: `proxmox-backup-client`, für Ntfy `curl`, für E-Mail z. B. `mail` (msmtp/mailx).
> Abhängigkeiten: `proxmox-backup-client`, für Ntfy `curl`, für E-Mail z. B. `mail` (msmtp/mailx).
> Eine Anleitung zur Installation von `msmtp` gibt es hier:
> https://www.cleveradmin.de/blog/2024/12/linux-einfach-emails-versenden-mit-msmtp