From c5cf677779c548174bf6c676a6b844726a902469 Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Sun, 23 Mar 2014 19:48:36 +0400 Subject: [PATCH 1/4] Backup scripts from config rep. --- backup/backup.git.sh | 10 ++++++++++ backup/backup.mybook.public.sh | 15 +++++++++++++++ backup/backup.mybook.vahagn.sh | 10 ++++++++++ 3 files changed, 35 insertions(+) create mode 100755 backup/backup.git.sh create mode 100755 backup/backup.mybook.public.sh create mode 100755 backup/backup.mybook.vahagn.sh diff --git a/backup/backup.git.sh b/backup/backup.git.sh new file mode 100755 index 0000000..f75d600 --- /dev/null +++ b/backup/backup.git.sh @@ -0,0 +1,10 @@ +DATE=/bin/date +TAR=/bin/tar +TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` + +LOG=/mnt/hdd/backup/backup.git.$TIMESTAMP.log +echo Starting $LOG | tee -a $LOG +echo start `$DATE` | tee -a $LOG +$TAR -cjvf /mnt/hdd/backup/git.$TIMESTAMP.tar.bz2 /home/vahagn/git | tee -a $LOG +echo end `$DATE` | tee -a $LOG + diff --git a/backup/backup.mybook.public.sh b/backup/backup.mybook.public.sh new file mode 100755 index 0000000..bf83487 --- /dev/null +++ b/backup/backup.mybook.public.sh @@ -0,0 +1,15 @@ +DATE=/bin/date +CP=/bin/cp +TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` + +LOG=/mnt/hdd/backup/backup.mybook.public.$TIMESTAMP.log +echo Starting $LOG | tee -a $LOG +echo start `$DATE` | tee -a $LOG +$CP -aufv /mnt/mybook/Public/_captured_MY_VIDEO/* /mnt/hdd/public/_captured_MY_VIDEO/ | tee -a $LOG +$CP -aufv /mnt/mybook/Public/pix/* /mnt/hdd/public/pix/ | tee -a $LOG +$CP -aufv /mnt/mybook/Public/music/* /mnt/hdd/public/music/ | tee -a $LOG +$CP -aufv /mnt/mybook/Public/books/* /mnt/hdd/public/books/ | tee -a $LOG +$CP -aufv /mnt/mybook/Public/map/* /mnt/hdd/public/map/ | tee -a $LOG +$CP -aufv /mnt/mybook/Public/src/* /mnt/hdd/public/src/ | tee -a $LOG +echo end `$DATE` | tee -a $LOG + diff --git a/backup/backup.mybook.vahagn.sh b/backup/backup.mybook.vahagn.sh new file mode 100755 index 0000000..4db5f73 --- /dev/null +++ b/backup/backup.mybook.vahagn.sh @@ -0,0 +1,10 @@ +DATE=/bin/date +CP=/bin/cp +TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` + +LOG=/mnt/hdd/backup/backup.mybook.vahagn.$TIMESTAMP.log +echo Starting $LOG | tee -a $LOG +echo start `$DATE` | tee -a $LOG +$CP -aufv /mnt/mybook/vahagn/* /mnt/hdd/vahagn/ | tee -a $LOG +echo end `$DATE` | tee -a $LOG + From 37e0c14ef0859802e9a2165ccd108c1fe234babb Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Mon, 24 Mar 2014 02:19:54 +0400 Subject: [PATCH 2/4] Backup on google drive. Encryption is added. --- backup/backup.git.sh | 51 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 49 insertions(+), 2 deletions(-) diff --git a/backup/backup.git.sh b/backup/backup.git.sh index f75d600..2ee2b02 100755 --- a/backup/backup.git.sh +++ b/backup/backup.git.sh @@ -1,10 +1,57 @@ +CD=cd DATE=/bin/date TAR=/bin/tar -TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` +BZIP2=/bin/bzip2 +GPG=/usr/bin/gpg +PASS=/home/vahagn/.gnupg/backup-passphrase +SRC=/home/vahagn/git +KEEP=5 +BACKUP_DIR=/home/vahagn/gdrive/backup +TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` LOG=/mnt/hdd/backup/backup.git.$TIMESTAMP.log +BACKUP=$BACKUP_DIR/git.$TIMESTAMP.tar.bz2.gpg +SIGNATURE=$BACKUP_DIR/git.$TIMESTAMP.tar.bz2.sig + +# +# debug +# +#LOG=/home/vahagn/devel/scripts/backup/log.log +#BACKUP=/home/vahagn/devel/scripts/backup/git.tar.bz2.gpg +#SRC=/home/vahagn/git/scripts.git + +# +# Header +# echo Starting $LOG | tee -a $LOG echo start `$DATE` | tee -a $LOG -$TAR -cjvf /mnt/hdd/backup/git.$TIMESTAMP.tar.bz2 /home/vahagn/git | tee -a $LOG +# +# cd to git directory and then bzip2 all content and crypt it. +# +$CD $SRC +($TAR -cvp . | $BZIP2 -c | $GPG -c --passphrase-file $PASS --output $BACKUP) 2>&1| tee -a $LOG +# +# Remove old files +# +$CD $BACKUP_DIR +i=0 +for FILE in `ls -t git.*.tar.bz2.gpg`; do + if [ $i -ge $KEEP ]; then + echo "$FILE is removed to meet keep number of backups $KEEP." | tee -a $LOG + rm $FILE 2>&1| tee -a $LOG + fi; + i=`expr $i + 1` +done +i=0 +for FILE in `ls -t git.*.tar.bz2.sig`; do + if [ $i -ge $KEEP ]; then + echo "$FILE is removed to meet keep number of backups $KEEP." | tee -a $LOG + rm $FILE 2>&1| tee -a $LOG + fi; + i=`expr $i + 1` +done +# +# Footer +# echo end `$DATE` | tee -a $LOG From 592711733207adeec358a0a85ea7d18543fccdc3 Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Mon, 10 Nov 2014 10:51:32 +0400 Subject: [PATCH 3/4] Backup of bitbucket. --- backup/backup.git.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/backup/backup.git.sh b/backup/backup.git.sh index 2ee2b02..3a582c1 100755 --- a/backup/backup.git.sh +++ b/backup/backup.git.sh @@ -2,6 +2,7 @@ CD=cd DATE=/bin/date TAR=/bin/tar BZIP2=/bin/bzip2 +GIT=/usr/bin/git GPG=/usr/bin/gpg PASS=/home/vahagn/.gnupg/backup-passphrase SRC=/home/vahagn/git @@ -26,10 +27,17 @@ SIGNATURE=$BACKUP_DIR/git.$TIMESTAMP.tar.bz2.sig echo Starting $LOG | tee -a $LOG echo start `$DATE` | tee -a $LOG # +# Sync with BitBucket upstream repos. +# +$CD $SRC/scripts.git +$GIT fetch +$CD $SRC/test.git +$GIT fetch +# # cd to git directory and then bzip2 all content and crypt it. # $CD $SRC -($TAR -cvp . | $BZIP2 -c | $GPG -c --passphrase-file $PASS --output $BACKUP) 2>&1| tee -a $LOG +($TAR -cvp . | $BZIP2 -c | $GPG -c --passphrase-file $PASS --output $BACKUP --batch --quiet ) 2>&1| tee -a $LOG # # Remove old files # From 1aeee6684dfaed6cc37b6a68905786b75972373c Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Sat, 13 Dec 2014 23:37:33 +0400 Subject: [PATCH 4/4] cp replaced with rsync. Now files removed from origin also are removed from backup. --- backup/backup.mybook.public.sh | 16 +++++++++------- backup/backup.mybook.vahagn.sh | 6 ++++-- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/backup/backup.mybook.public.sh b/backup/backup.mybook.public.sh index bf83487..09256f9 100755 --- a/backup/backup.mybook.public.sh +++ b/backup/backup.mybook.public.sh @@ -1,15 +1,17 @@ +#!/bin/bash + DATE=/bin/date -CP=/bin/cp +SYNC=/usr/bin/rsync -auAXv --delete TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` LOG=/mnt/hdd/backup/backup.mybook.public.$TIMESTAMP.log echo Starting $LOG | tee -a $LOG echo start `$DATE` | tee -a $LOG -$CP -aufv /mnt/mybook/Public/_captured_MY_VIDEO/* /mnt/hdd/public/_captured_MY_VIDEO/ | tee -a $LOG -$CP -aufv /mnt/mybook/Public/pix/* /mnt/hdd/public/pix/ | tee -a $LOG -$CP -aufv /mnt/mybook/Public/music/* /mnt/hdd/public/music/ | tee -a $LOG -$CP -aufv /mnt/mybook/Public/books/* /mnt/hdd/public/books/ | tee -a $LOG -$CP -aufv /mnt/mybook/Public/map/* /mnt/hdd/public/map/ | tee -a $LOG -$CP -aufv /mnt/mybook/Public/src/* /mnt/hdd/public/src/ | tee -a $LOG +$SYNC /mnt/mybook/Public/_captured_MY_VIDEO /mnt/hdd/public/ | tee -a $LOG +$SYNC /mnt/mybook/Public/pix /mnt/hdd/public/ | tee -a $LOG +#$SYNC /mnt/mybook/Public/music/* /mnt/hdd/public/ | tee -a $LOG +$SYNC /mnt/mybook/Public/books /mnt/hdd/public/ | tee -a $LOG +$SYNC /mnt/mybook/Public/map /mnt/hdd/public/ | tee -a $LOG +$SYNC /mnt/mybook/Public/src /mnt/hdd/public/ | tee -a $LOG echo end `$DATE` | tee -a $LOG diff --git a/backup/backup.mybook.vahagn.sh b/backup/backup.mybook.vahagn.sh index 4db5f73..f463032 100755 --- a/backup/backup.mybook.vahagn.sh +++ b/backup/backup.mybook.vahagn.sh @@ -1,10 +1,12 @@ +#!/bin/bash + DATE=/bin/date -CP=/bin/cp +SYNC=/usr/bin/rsync -auAXv --delete TIMESTAMP=`$DATE +%Y%m%d-%H:%M%z` LOG=/mnt/hdd/backup/backup.mybook.vahagn.$TIMESTAMP.log echo Starting $LOG | tee -a $LOG echo start `$DATE` | tee -a $LOG -$CP -aufv /mnt/mybook/vahagn/* /mnt/hdd/vahagn/ | tee -a $LOG +$SYNC /mnt/mybook/vahagn /mnt/hdd/ | tee -a $LOG echo end `$DATE` | tee -a $LOG