#!/bin/bash statusfile=/var/tmp/backup.monitoring ssh_login="${username}@${server}" if ! [[ -f /etc/backup.priv ]] then echo "abort_no_key" > "$statusfile" exit 1 fi run-parts --exit-on-error -- /etc/backup-pre-hooks.d exitcode=$? if [[ $exitcode != 0]] then echo "hook $exitcode" > "$statusfile" exit 1 fi rsync_errors="" % for path in sorted(paths): rsync -zaAP --numeric-ids --delete --relative \ --rsync-path="/usr/bin/rsync --fake-super" \ -e "ssh -o IdentityFile=/etc/backup.priv -o StrictHostKeyChecking=accept-new -p ${port}" \ "${path}" "$ssh_login":backups/ exitcode=$? if [[ $exitcode != 0 ]] && [[ $exitcode != 24 ]] then rsync_errors+=" $exitcode" fi % endfor if [[ -n "$rsync_errors" ]] then echo "rsync_error$rsync_errors" > "$statusfile" else echo "ok" > "$statusfile" fi