Dokumentation optimiert
This commit is contained in:
parent
9b508ec1c5
commit
05287cce70
14
README.md
14
README.md
@ -1,6 +1,6 @@
|
|||||||
# PBS Backup Client Script
|
# 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
|
## Features
|
||||||
- pxar-Backups definierter Verzeichnisse zu PBS
|
- 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)
|
- TLS-Fingerprint nur bei selbstsigniertem PBS-Zertifikat notwendig (optional)
|
||||||
|
|
||||||
## Konfiguration
|
## 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`.
|
`CONFIG_FILE=/pfad/zur/pbs-backup.v2.conf`.
|
||||||
|
|
||||||
**PBS-Variablen:**
|
**PBS-Variablen:**
|
||||||
- `PBS_REPOSITORY` (Pflicht): Repository-String im Format
|
- `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>`
|
`root@pam!<apiuser>@<pbs-host>:<datastore>`
|
||||||
mit Port (z. B. öffentlich via HTTPS):
|
mit Port (z. B. öffentlich via HTTPS):
|
||||||
`root@pam!<apiuser>@<pbs-host>:<port>:<datastore>`
|
`root@pam!<apiuser>@<pbs-host>:<port>:<datastore>`
|
||||||
Beispiel:
|
Beispiel:
|
||||||
`root@pam!vps-backup@pbs.domain.com:443:backup2`
|
`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_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.
|
- `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):**
|
**Weitere Optionen (Auszug):**
|
||||||
- `INCLUDE_DIRS`: Array der zu sichernden Verzeichnisse.
|
- `INCLUDE_DIRS`: Array der zu sichernden Verzeichnisse.
|
||||||
- `LOGFILE`, `LOCKFILE`: Pfade für Log- und Lock-Datei.
|
- `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`.
|
- 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`.
|
- 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).
|
- 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:
|
> Eine Anleitung zur Installation von `msmtp` gibt es hier:
|
||||||
> https://www.cleveradmin.de/blog/2024/12/linux-einfach-emails-versenden-mit-msmtp
|
> https://www.cleveradmin.de/blog/2024/12/linux-einfach-emails-versenden-mit-msmtp
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user