Browse Source

Backup and restore tox node settings

Bob Mottram 10 years ago
parent
commit
8861ffe686
1 changed files with 53 additions and 0 deletions
  1. 53
    0
      src/freedombone

+ 53
- 0
src/freedombone View File

@@ -2320,6 +2320,21 @@ function create_backup_script {
2320 2320
       echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
2321 2321
   fi
2322 2322
 
2323
+  echo '# Backup Tox node settings' >> /usr/bin/$BACKUP_SCRIPT_NAME
2324
+  echo "if [ -d /var/lib/tox-bootstrapd ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
2325
+  echo '  echo "Backing up Tox node settings"' >> /usr/bin/$BACKUP_SCRIPT_NAME
2326
+  echo "  if [ ! -d $USB_MOUNT/backup/tox ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
2327
+  echo "    mkdir -p $USB_MOUNT/backup/tox" >> /usr/bin/$BACKUP_SCRIPT_NAME
2328
+  echo '  fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
2329
+  echo "  rsyncrypto  -v -r /var/lib/tox-bootstrapd $USB_MOUNT/backup/tox $USB_MOUNT/backup/tox.keys $BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_SCRIPT_NAME
2330
+  echo '  if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_SCRIPT_NAME
2331
+  echo "    umount $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
2332
+  echo "    rm -rf $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
2333
+  echo '    exit 75379' >> /usr/bin/$BACKUP_SCRIPT_NAME
2334
+  echo '  fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
2335
+  echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
2336
+  echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
2337
+
2323 2338
   echo 'sync' >> /usr/bin/$BACKUP_SCRIPT_NAME
2324 2339
   echo 'ls -lh $USB_MOUNT/backup' >> /usr/bin/$BACKUP_SCRIPT_NAME
2325 2340
   echo "umount $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
@@ -3015,6 +3030,17 @@ function create_restore_script {
3015 3030
   echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3016 3031
   echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
3017 3032
 
3033
+  echo "if [ -d $USB_MOUNT/backup/tox ]; then" >> /usr/bin/$RESTORE_SCRIPT_NAME
3034
+  echo '  echo "Restoring Tox node settings"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3035
+  echo "  rsyncrypto -v -d -r $USB_MOUNT/backup/tox /var/lib/tox-bootstrapd $USB_MOUNT/backup/tox.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
3036
+  echo '  if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3037
+  echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
3038
+  echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
3039
+  echo '    exit 6393' >> /usr/bin/$RESTORE_SCRIPT_NAME
3040
+  echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3041
+  echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3042
+  echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
3043
+
3018 3044
   echo 'sync' >> /usr/bin/$RESTORE_SCRIPT_NAME
3019 3045
   echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
3020 3046
   echo "# Unmount the USB drive" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3769,6 +3795,23 @@ function backup_to_friends_servers {
3769 3795
   echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3770 3796
   echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3771 3797
 
3798
+  echo '# Backup Tox node settings' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3799
+  echo "if [ -d /var/lib/tox-bootstrapd ]; then" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3800
+  echo '  echo "Backing up Tox node settings"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3801
+  echo '  if [ ! -d $SERVER_DIRECTORY/backup/tox ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3802
+  echo '    mkdir -p $SERVER_DIRECTORY/backup/tox' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3803
+  echo '  fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3804
+  echo -n "  rsyncrypto  -v -r /var/lib/tox-bootstrapd " >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3805
+  echo -n '$SERVER_DIRECTORY/backup/tox $SERVER_DIRECTORY/backup/tox.keys ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3806
+  echo "$BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3807
+  echo '  if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3808
+  echo '    # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3809
+  echo -n '    echo "Unable to encrypt Tox node settings" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3810
+  echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3811
+  echo '    exit 76454' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3812
+  echo '  fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3813
+  echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3814
+  echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
3772 3815
 
3773 3816
   if [[ $BACKUP_INCLUDES_DATABASES == "yes" ]]; then
3774 3817
       echo '# Mysql settings' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
@@ -4503,6 +4546,16 @@ function restore_from_friend {
4503 4546
   echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4504 4547
   echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4505 4548
 
4549
+  echo 'if [ -d $SERVER_DIRECTORY/backup/tox ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4550
+  echo '  echo "Restoring Tox node settings"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4551
+  echo -n '  rsyncrypto -v -d -r $SERVER_DIRECTORY/backup/tox /var/lib/tox-bootstrapd $SERVER_DIRECTORY/backup/tox.keys ' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4552
+  echo "$BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4553
+  echo '  if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4554
+  echo '    exit 93653' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4555
+  echo '  fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4556
+  echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4557
+  echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4558
+
4506 4559
   echo 'if [ -d $SERVER_DIRECTORY/backup/mail ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4507 4560
   echo '  echo "Restoring emails"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4508 4561
   echo '  mkdir /root/tempmail' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME