2.1 KiB
2.1 KiB
ntfy-backup-kit
Minimaler Satz an Skripten & Units, um Backups/Jobs an einen selbst gehosteten ntfy-Server zu melden.
Inhalt
scripts/notify-ntfy.sh— generisches ntfy-Notify-Skript (als CLI oder Library)scripts/ntfy-backup-wrap.sh— Wrapper: Start/OK/FEHLER mit Dauer & Größeetc/ntfy-env.example— EnvironmentFile für URL/User/Passsystemd/*.service|*.timer— Beispiel-Units für CloudPanel, Mailcow, Mailcow Cold
Installation
sudo install -m 0755 scripts/notify-ntfy.sh /usr/local/bin/notify-ntfy.sh
sudo install -m 0755 scripts/ntfy-backup-wrap.sh /usr/local/bin/ntfy-backup-wrap.sh
sudo install -m 0600 etc/ntfy-env.example /etc/default/ntfy-env
Trage
NTFY_URL,NTFY_USER,NTFY_PASSin/etc/default/ntfy-envein. Falls ntfy nur intern aufgelöst wird:/etc/hostsmit10.247.64.12 ntfy.davidt.cloudergänzen.
Schnelltest
source /etc/default/ntfy-env
notify-ntfy.sh "test" "CLI OK" "Hello from $(hostname -s)"
Beispiel: CloudPanel / Mailcow / Cold-Standby
Aktiviere die gewünschten Timer:
sudo cp systemd/backup-cloudpanel.service /etc/systemd/system/
sudo cp systemd/backup-cloudpanel.timer /etc/systemd/system/
sudo cp systemd/backup-mailcow.service /etc/systemd/system/
sudo cp systemd/backup-mailcow.timer /etc/systemd/system/
sudo cp systemd/backup-mailcow-cold.service /etc/systemd/system/
sudo cp systemd/backup-mailcow-cold.timer /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now backup-cloudpanel.timer backup-mailcow.timer backup-mailcow-cold.timer
Passe die Pfade/Kommandos in den Units an deine Umgebung an.
Beispiel-Aufrufe (manuell)
ntfy-backup-wrap.sh backup/cloudpanel "CloudPanel Backup" "/opt/backups/cloudpanel-backup.sh" "/opt/backups/cloudpanel/*"
ntfy-backup-wrap.sh backup/mailcow "Mailcow Backup" "/usr/local/bin/mailcow-backup.sh" "/var/backups/mailcow/*/"
ntfy-backup-wrap.sh backup/mailcow-cold "Mailcow Cold Standby" "rsync -a --delete -e 'ssh -p 10022' /var/backups/mailcow/ backup-master@davidt.i234.me:/volume1/Backups/mailcow/" "/var/backups/mailcow/*/"