Add git backup script
parent
d7966e9f49
commit
f3b06d8ac4
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# e.g. 0 0 * * * /home/nathan/scripts/backup/backup_git.sh -d /srv/git -b /srv/dev-disk-by-uuid-d9f9e8fd-c473-450e-919e-c43200a6ac4a/gitBackup/ -r nathan@alphavps.aney.co.uk -R ~/backups/git/lilman/
|
||||||
|
|
||||||
|
while getopts s:d:b:r:R: flag
|
||||||
|
do
|
||||||
|
case "${flag}" in
|
||||||
|
d) DATA=${OPTARG};;
|
||||||
|
b) BACKUPDIR=${OPTARG};;
|
||||||
|
r) REMOTE=${OPTARG};;
|
||||||
|
R) REMOTEBACKUP=${OPTARG};;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
mkdir -p $BACKUPDIR
|
||||||
|
|
||||||
|
# Incremental backup of the directory locally
|
||||||
|
rdiff-backup $DATA $BACKUPDIR
|
||||||
|
# Don't keep backups over 1W. In case of accidental/malicious deletes overnight
|
||||||
|
rdiff-backup --remove-older-than 2W $BACKUPDIR
|
||||||
|
|
||||||
|
# Make offsite backup
|
||||||
|
ssh $REMOTE mkdir -p $REMOTEBACKUP
|
||||||
|
|
||||||
|
# Copy the incremental backup accross
|
||||||
|
rsync -az -e ssh \
|
||||||
|
--delete \
|
||||||
|
$BACKUPDIR \
|
||||||
|
$REMOTE:$REMOTEBACKUP
|
||||||
|
|
||||||
Loading…
Reference in New Issue