24 lines
886 B
Bash
24 lines
886 B
Bash
#!/bin/bash
|
|
# Бэкап /etc/pve и конфигов хоста (interfaces, hosts, resolv.conf).
|
|
# Запускать на хосте Proxmox под root. Cron: 0 3 * * * (после основного backup job в 02:00).
|
|
set -e
|
|
|
|
BACKUP_ROOT="/mnt/backup/proxmox/etc-pve"
|
|
RETENTION_DAYS=30
|
|
|
|
if [ "$(id -u)" -ne 0 ]; then
|
|
echo "Запускайте под root."
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "$BACKUP_ROOT"
|
|
DATE=$(date +%Y%m%d-%H%M)
|
|
|
|
tar -czf "$BACKUP_ROOT/etc-pve-$DATE.tar.gz" -C / etc/pve
|
|
tar -czf "$BACKUP_ROOT/etc-host-configs-$DATE.tar.gz" -C / etc/network/interfaces etc/hosts etc/resolv.conf 2>/dev/null || true
|
|
|
|
chmod 600 "$BACKUP_ROOT"/etc-pve-*.tar.gz "$BACKUP_ROOT"/etc-host-configs-*.tar.gz 2>/dev/null || true
|
|
|
|
find "$BACKUP_ROOT" -name 'etc-pve-*.tar.gz' -mtime +$RETENTION_DAYS -delete
|
|
find "$BACKUP_ROOT" -name 'etc-host-configs-*.tar.gz' -mtime +$RETENTION_DAYS -delete
|