diff --git a/borg-backup b/borg-backup.sh similarity index 98% rename from borg-backup rename to borg-backup.sh index 1ccd537..f292f42 100755 --- a/borg-backup +++ b/borg-backup.sh @@ -28,7 +28,6 @@ info "Starting backup" --exclude 'var/cache/*' \ --exclude 'srv/data/backup' \ --exclude '*/.Trash*' \ - --exclude '*/Trash*' \ \ ::'{hostname}-{now}' \ /etc \ diff --git a/btrfs-raid-status b/btrfs-raid-status.sh similarity index 100% rename from btrfs-raid-status rename to btrfs-raid-status.sh diff --git a/download-with-sftp.sh b/download-with-sftp.sh new file mode 100755 index 0000000..cd5f11e --- /dev/null +++ b/download-with-sftp.sh @@ -0,0 +1,25 @@ +#!/bin/bash +export BORG_PASSPHRASE="$(cat /root/secret/borg-snowboard.key)" +if [[ -z "${BORG_PASSPHRASE}" ]]; then + echo 'BORG_PASSPHRASE is not set, cannot continue' + exit +fi +cd /srv/data/backup/borg/snowboard +mkdir -p old +mv data* old +backupdir="data-$(date -I)" +mkdir -p $backupdir +cd $backupdir +sftp fileserver@cscherr.de < /usr/local/cron/scripts/sftp-commands.txt +status_download=$? +echo "finished downloading from snowboard. Status: $status_download" +borg check -v data/backup/borg/snowboard +status_check=$? +echo "finished checking the downloaded repo. Status: $status_check" +if [ "$status_check" -eq "0" ]; then + cd /srv/data/backup/borg/snowboard + rm -r old +else + echo "the new repo was not checked successfully, keeping old repo." +fi +echo $(date +"%Y-%m-%dT%H:%M:%S%z") diff --git a/sftp-commands.txt b/sftp-commands.txt new file mode 100644 index 0000000..d22b421 --- /dev/null +++ b/sftp-commands.txt @@ -0,0 +1,3 @@ +# get all files and directories in /data +# /data is the main dir. / is only a gateway dir with a bind mount +get -R /data