Loading hidpl-data-backup.sh +19 −7 Original line number Diff line number Diff line SERVER_FQDN='hidpl.stanford.edu' SRC_PATH='/data/.' BACKUP_PATH="/archive/zfs01/$(date +%B)/hidpl/data" BACKUP_PATH="archive/hidpl/data" MAIL_TO='akkornel@stanford.edu' DEBUG=1 Loading Loading @@ -55,23 +55,35 @@ test -d $BACKUP_PATH || mkdir -p $BACKUP_PATH echo 'Running the backup!' echo -n 'Backup started on ' >> $LOG_PATH date >> $LOG_PATH rsync -aHAX -r -x -v root@$SERVER_FQDN:$SRC_PATH $BACKUP_PATH/. >> $LOG_PATH 2>&1 rsync -aHA -r -x -v --exclude /tmp --exclude /var/tmp root@$SERVER_FQDN:$SRC_PATH /$BACKUP_PATH/. >> $LOG_PATH 2>&1 RSYNC_EXIT_CODE=$? echo 'Program finished on ' >> $LOG_PATH date >> $LOG_PATH # If the backup had a problem, send a mail about it. if [ $RSYNC_EXIT_CODE -ne 0 ]; then echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO fi # Take a snapshot of the backed-up directory [ $DEBUG -eq 1 ] && echo 'Taking ZFS snapshot' SNAPSHOT_NAME=$(date +%F_%T) zfs snapshot "${BACKUP_PATH}@${SNAPSHOT_NAME}" ZFS_EXIT_CODE=$? # See if the backup worked if [ $? -eq 0 ]; then if [ $ZFS_EXIT_CODE -eq 0 ]; then echo 'Backup complete!' [ $MAIL_ON_COMPLETE -eq 1 ] && echo 'Wooo!' | mail -s "Backup for $SERVER_FQDN Complete!" $MAIL_TO # If the backup had a problem, send a mail about it. else echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo 'Something went wrong' | mail -s "Snapshot problem with $SERVER_FQDN ${BACKUP_PATH}@${SNAPSHOT_NAME}" $MAIL_TO fi # All done! # (the log file will be cleaned up automatically) exit 0 hidpl-root-backup.sh +19 −7 Original line number Diff line number Diff line SERVER_FQDN='hidpl.stanford.edu' SRC_PATH='/.' BACKUP_PATH="/archive/zfs01/$(date +%B)/hidpl/root" BACKUP_PATH="archive/hidpl/root" MAIL_TO='akkornel@stanford.edu' DEBUG=1 Loading Loading @@ -55,23 +55,35 @@ test -d $BACKUP_PATH || mkdir -p $BACKUP_PATH echo 'Running the backup!' echo -n 'Backup started on ' >> $LOG_PATH date >> $LOG_PATH rsync -aHAX -r -x -v root@$SERVER_FQDN:$SRC_PATH $BACKUP_PATH/. >> $LOG_PATH 2>&1 rsync -aHA -r -x -v --exclude /tmp --exclude /var/tmp root@$SERVER_FQDN:$SRC_PATH /$BACKUP_PATH/. >> $LOG_PATH 2>&1 RSYNC_EXIT_CODE=$? echo 'Program finished on ' >> $LOG_PATH date >> $LOG_PATH # If the backup had a problem, send a mail about it. if [ $RSYNC_EXIT_CODE -ne 0 ]; then echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO fi # Take a snapshot of the backed-up directory [ $DEBUG -eq 1 ] && echo 'Taking ZFS snapshot' SNAPSHOT_NAME=$(date +%F_%T) zfs snapshot "${BACKUP_PATH}@${SNAPSHOT_NAME}" ZFS_EXIT_CODE=$? # See if the backup worked if [ $? -eq 0 ]; then if [ $ZFS_EXIT_CODE -eq 0 ]; then echo 'Backup complete!' [ $MAIL_ON_COMPLETE -eq 1 ] && echo 'Wooo!' | mail -s "Backup for $SERVER_FQDN Complete!" $MAIL_TO # If the backup had a problem, send a mail about it. else echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo 'Something went wrong' | mail -s "Snapshot problem with $SERVER_FQDN ${BACKUP_PATH}@${SNAPSHOT_NAME}" $MAIL_TO fi # All done! # (the log file will be cleaned up automatically) exit 0 Loading
hidpl-data-backup.sh +19 −7 Original line number Diff line number Diff line SERVER_FQDN='hidpl.stanford.edu' SRC_PATH='/data/.' BACKUP_PATH="/archive/zfs01/$(date +%B)/hidpl/data" BACKUP_PATH="archive/hidpl/data" MAIL_TO='akkornel@stanford.edu' DEBUG=1 Loading Loading @@ -55,23 +55,35 @@ test -d $BACKUP_PATH || mkdir -p $BACKUP_PATH echo 'Running the backup!' echo -n 'Backup started on ' >> $LOG_PATH date >> $LOG_PATH rsync -aHAX -r -x -v root@$SERVER_FQDN:$SRC_PATH $BACKUP_PATH/. >> $LOG_PATH 2>&1 rsync -aHA -r -x -v --exclude /tmp --exclude /var/tmp root@$SERVER_FQDN:$SRC_PATH /$BACKUP_PATH/. >> $LOG_PATH 2>&1 RSYNC_EXIT_CODE=$? echo 'Program finished on ' >> $LOG_PATH date >> $LOG_PATH # If the backup had a problem, send a mail about it. if [ $RSYNC_EXIT_CODE -ne 0 ]; then echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO fi # Take a snapshot of the backed-up directory [ $DEBUG -eq 1 ] && echo 'Taking ZFS snapshot' SNAPSHOT_NAME=$(date +%F_%T) zfs snapshot "${BACKUP_PATH}@${SNAPSHOT_NAME}" ZFS_EXIT_CODE=$? # See if the backup worked if [ $? -eq 0 ]; then if [ $ZFS_EXIT_CODE -eq 0 ]; then echo 'Backup complete!' [ $MAIL_ON_COMPLETE -eq 1 ] && echo 'Wooo!' | mail -s "Backup for $SERVER_FQDN Complete!" $MAIL_TO # If the backup had a problem, send a mail about it. else echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo 'Something went wrong' | mail -s "Snapshot problem with $SERVER_FQDN ${BACKUP_PATH}@${SNAPSHOT_NAME}" $MAIL_TO fi # All done! # (the log file will be cleaned up automatically) exit 0
hidpl-root-backup.sh +19 −7 Original line number Diff line number Diff line SERVER_FQDN='hidpl.stanford.edu' SRC_PATH='/.' BACKUP_PATH="/archive/zfs01/$(date +%B)/hidpl/root" BACKUP_PATH="archive/hidpl/root" MAIL_TO='akkornel@stanford.edu' DEBUG=1 Loading Loading @@ -55,23 +55,35 @@ test -d $BACKUP_PATH || mkdir -p $BACKUP_PATH echo 'Running the backup!' echo -n 'Backup started on ' >> $LOG_PATH date >> $LOG_PATH rsync -aHAX -r -x -v root@$SERVER_FQDN:$SRC_PATH $BACKUP_PATH/. >> $LOG_PATH 2>&1 rsync -aHA -r -x -v --exclude /tmp --exclude /var/tmp root@$SERVER_FQDN:$SRC_PATH /$BACKUP_PATH/. >> $LOG_PATH 2>&1 RSYNC_EXIT_CODE=$? echo 'Program finished on ' >> $LOG_PATH date >> $LOG_PATH # If the backup had a problem, send a mail about it. if [ $RSYNC_EXIT_CODE -ne 0 ]; then echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO fi # Take a snapshot of the backed-up directory [ $DEBUG -eq 1 ] && echo 'Taking ZFS snapshot' SNAPSHOT_NAME=$(date +%F_%T) zfs snapshot "${BACKUP_PATH}@${SNAPSHOT_NAME}" ZFS_EXIT_CODE=$? # See if the backup worked if [ $? -eq 0 ]; then if [ $ZFS_EXIT_CODE -eq 0 ]; then echo 'Backup complete!' [ $MAIL_ON_COMPLETE -eq 1 ] && echo 'Wooo!' | mail -s "Backup for $SERVER_FQDN Complete!" $MAIL_TO # If the backup had a problem, send a mail about it. else echo 'Problem!' echo "Log file in $LOG_PATH" | mail -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo "Log file from $LOG_PATH attached!" | mail -a $LOG_PATH -s "Backup problem with $SERVER_FQDN" $MAIL_TO echo 'Something went wrong' | mail -s "Snapshot problem with $SERVER_FQDN ${BACKUP_PATH}@${SNAPSHOT_NAME}" $MAIL_TO fi # All done! # (the log file will be cleaned up automatically) exit 0