X-Git-Url: http://git.tpope.net/?p=tpope-extra.git;a=blobdiff_plain;f=bin%2Fcritical-backup;h=2eac413ba50077b2596989c119f5cefcc8c8bada;hp=a22ebc7078ab558bc94ee3d61590e3455aa2e4a7;hb=refs%2Fheads%2Fmaster;hpb=1d81cd14e65d2482bf7889e73b16b518303a7f9f diff --git a/bin/critical-backup b/bin/critical-backup index a22ebc7..2eac413 100755 --- a/bin/critical-backup +++ b/bin/critical-backup @@ -4,9 +4,16 @@ PATH="$HOME/bin:/usr/local/bin:/usr/bin:/bin" ARCHIVE="tpope-`date +%Y-%m-%d`.tar.gpg" -EMAIL="back"quot'e@gmai'l.com -exec >/dev/null 2>&1 &2 + echo "FROM=, and GPGID= lines.">&2 + exit 1 +fi + +exec >/dev/null mysqldump.sql -tar chf - tpope.tar cvs mysqldump.sql |\ -gpg -qez 9 -r A356C8D546EEFD2C --batch --no-tty > $ARCHIVE +tar chf - tpope.tar cvs |\ +gpg -qez 9 -r "$GPGID" --batch --no-tty > $ARCHIVE -cp $ARCHIVE "$HOME/backup/" -scp -Bq -oSetupTimeout=30 $ARCHIVE patman:backup/ || \ -scp -Bq -oSetupTimeout=30 $ARCHIVE chief:backup/ -scp -Bq -oSetupTimeout=30 $ARCHIVE right:backup/ -scp -Bq $ARCHIVE snowball:tpope.tar.gpg +[ -d "$HOME/backup-`date +%Y`" ] || mkdir "$HOME/backup-`date +%Y`" +cp $ARCHIVE "$HOME/backup-`date +%Y`/" +scp -Bq -oSetupTimeout=30 $ARCHIVE tpope-486.jmwaller.com:backup/ 2>/dev/null +scp -Bq $ARCHIVE steve:tpope.tar.gpg 2>/dev/null d="`date +%d`" -if [ "$d" = 1 -o "$d" = 8 -o "$d" = 16 -o "$d" = 23 -o "$1" = "-m" ]; then +if [ "$d" = 01 -o "$d" = 08 -o "$d" = 16 -o "$d" = 23 -o "$1" = "-m" ]; then mimencode $ARCHIVE | mail -s "Backup for `date +%Y-%m-%d`" $EMAIL \ -a "Content-Type: application/octet-stream; name=$ARCHIVE" \ -a "Content-Disposition: attachment; filename=$ARCHIVE" \ -a "Content-Transfer-Encoding: base64" \ - -a "From: SexyGeek Backup ' + -a "From: $FROM" +fi + +if true; then + : +elif [ "`date +%m%d`" = "0101" -o "$1" = "-c" ]; then + mkisofs -r -J -o back.iso "$HOME/backup-`date +%Y`" 2>/dev/null + if ! sudo cdrecord -tao -data -multi speed=4 back.iso 2>/dev/null; then + echo "Error: blank CD not found. Please call `basename $0` manually" >&2 + fi +elif [ "`date +%m%d`" = "1231" ]; then + s="`sudo cdrecord -msinfo 2>/dev/null`" + if [ "$s" ]; then + mkisofs -r -J -o back.iso -M /dev/cdr -C "$s" "$HOME/backup-`date +%Y`" 2>/dev/null + sudo cdrecord -tao -data speed=4 back.iso 2>/dev/null + else + echo "Error. Is the CD in the drive?" >&2 + fi + echo "Yearly backup finished. Please put a blank CD in the drive." >&2 +elif [ "$d" = 01 -o "$d" = 08 -o "$d" = 16 -o "$d" = 23 ]; then + s="`sudo cdrecord -msinfo 2>/dev/null`" + echo "s=$s" + if [ "$s" ]; then + mkisofs -r -J -o back.iso -M /dev/cdr -C "$s" "$HOME/backup-`date +%Y`" + sudo cdrecord -tao -data -multi speed=4 back.iso || \ + echo "CD burning failed." >&2 + else + echo "Error. Is the CD in the drive?" >&2 + fi fi cd ..