Backup
From Attie's Wiki
Backup Procedure
${SCRATCH_DIR}/rsync_filter
# see FILTER RULES section of rsync(1) for help R ** + /etc/ + /etc/ssh/ + /etc/ssh/** - /etc/ssh/ssh_host_*_key + /etc/crontab + /etc/cron.*/ + /etc/cron.*/** + /etc/dhcp + /etc/dhcp/* - /etc/dhcp/ddns-keys + /etc/bind + /etc/bind/** - /etc/bind/rndc.key - **
${SCRATCH_DIR}/run.sh
#!/bin/bash -eux BACKUP_USER="user" BACKUP_HOST="backup_host" BACKUP_REPO="sys_config" BACKUP_ROOT="~/backups" ENCRYPTION_RECIPIENT="gpg_key" HOSTNAME="$(hostname -f)" HOSTNAME_REV="$(echo ${HOSTNAME} | sed 's/\./\n/g' | tac | sed ':a;$!{N;ba};s/\n/./g')" REPO_PATH="sftp://${BACKUP_USER}@${BACKUP_HOST}/${BACKUP_ROOT}/${HOSTNAME_REV}/${BACKUP_REPO}.obnam" # --- cd $(dirname $(readlink -f $0)) rsync -av --filter='merge rsync_filter' / ./data/ obnam backup \ --root="$(pwd)" \ --repository="${REPO_PATH}" \ --client-name="${HOSTNAME}" \ --encrypt-with="${ENCRYPTION_RECIPIENT}" \ --compress-with=deflate \ --deduplicate=verify