Backup on google drive. Encryption is added.

This commit is contained in:
2014-03-24 02:19:54 +04:00
parent c5cf677779
commit 37e0c14ef0

View File

@@ -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