Chrony/backup_proxy.sh

29 lines
900 B
Bash

#!/bin/bash
# /opt/backup_proxy.sh
# Konfiguration
BACKUP_QUELLE="/opt/proxy-manager"
BACKUP_ZIEL="/opt/backup"
ANZAHL_BACKUPS=3
DATUM=$(date +%Y%m%d_%H%M%S)
BACKUP_DATEI="${BACKUP_ZIEL}/proxy-manager_backup_${DATUM}.tar.gz"
# Erstelle das Backup-Verzeichnis, falls es nicht existiert
mkdir -p "${BACKUP_ZIEL}"
# Backup erstellen (inklusive Berechtigungen)
tar -czpf "${BACKUP_DATEI}" -C /opt/proxy-manager . --preserve-permissions
# Überprüfe, ob das Backup erfolgreich erstellt wurde
if [ $? -ne 0 ]; then
echo "Fehler beim Erstellen des Backups!"
exit 1
fi
# Alte Backups entfernen, sodass nur die 3 neuesten übrig bleiben
find "${BACKUP_ZIEL}" -name "proxy-manager_backup_*.tar.gz" -type f -printf '%T+ %p\n' | sort -r | tail -n +"$((ANZAHL_BACKUPS + 1))" | cut -d' ' -f2 | xargs rm -f
echo "Backup erfolgreich erstellt: ${BACKUP_DATEI}"
echo "Alte Backups wurden gelöscht."
exit 0