Files
scripts/bin/backup.hdd.sh

61 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
DATE=/bin/date
RSYNC=/usr/bin/rsync
TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z`
LOGFILE=/mnt/hdd/backup/log/backup.$TIMESTAMP.log
LOG="/usr/bin/tee -a $LOGFILE"
function term() {
echo "Terminating." | $LOG
exit 1
}
trap term INT
function backup() {
ORIG_DIR=$1
MIRROR_DIR=$2
echo "Sync $ORIG_DIR to $MIRROR_DIR"
# Use --progress if interactive.
$RSYNC -aAXv --delete --force $ORIG_DIR $MIRROR_DIR | $LOG
}
function backupwd() {
ORIG_DIR=$1
MIRROR_DIR=192.168.0.6:/DataVolume/$2
backup $ORIG_DIR $MIRROR_DIR
}
#
# Log Header
#
echo Starting $LOGFILE | $LOG
echo start `$DATE` | $LOG
#
# Sync folders
#
backup "/srv/nextcloud" "/mnt/hdd/backup/docker"
backup "/var/lib/docker/volumes" "/mnt/hdd/backup/docker"
backup "/src/gerbera/music" "/mnt/hdd/public"
#backup "/srv/gitlab" "/mnt/hdd/backup/gitlab"
#backup "/srv/git" "/mnt/hdd/backup/git"
backuphdd "vahagn"
backuphdd "backup"
for i in $(ls /mnt/hdd/public); do
if [ $i != "movies" ]; then
backuphdd "public/$i"
fi
done
#
# Log Footer
#
echo end `$DATE` | $LOG