Browse Source

Restore GNU Social backup

Bob Mottram 10 years ago
parent
commit
69810b7a69
1 changed files with 13 additions and 2 deletions
  1. 13
    2
      install-freedombone.sh

+ 13
- 2
install-freedombone.sh View File

@@ -969,8 +969,19 @@ function create_restore_script {
969 969
   if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
970 970
       echo "if [ -f $USB_MOUNT/backup/gnusocial.sql ]; then" >> /usr/bin/$RESTORE_SCRIPT_NAME
971 971
       echo '  echo "Restoring microblog database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
972
-      echo -n '  mysql -u root --password=$DATABASE_PASSWORD gnusocial -o < ' >> /usr/bin/$RESTORE_SCRIPT_NAME
973
-      echo "$USB_MOUNT/backup/gnusocial.sql" >> /usr/bin/$RESTORE_SCRIPT_NAME
972
+      echo '  if [ ! -d /root/tempgnusocialdata ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
973
+      echo '    mkdir /root/tempgnusocialdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
974
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
975
+      echo "  rsyncrypto -v -d -r $USB_MOUNT/backup/gnusocialdata /root/tempgnusocialdata $USB_MOUNT/backup/gnusocialdata.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
976
+      echo '  if [ ! -f /root/tempgnusocialdata/gnusocial.sql ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
977
+      echo '    echo "Unable to restore GNU social database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
978
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
979
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
980
+      echo '    exit 503' >> /usr/bin/$RESTORE_SCRIPT_NAME
981
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
982
+      echo '  mysql -u root --password=$DATABASE_PASSWORD gnusocial -o < /root/tempgnusocialdata/gnusocial.sql' >> /usr/bin/$RESTORE_SCRIPT_NAME
983
+      echo '  shred -zu /root/tempgnusocialdata/*' >> /usr/bin/$RESTORE_SCRIPT_NAME
984
+      echo '  rm -rf /root/tempgnusocialdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
974 985
       echo '  echo "Restoring microblog installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
975 986
       echo "  rsyncrypto -v -d -r $USB_MOUNT/backup/gnusocial /var/www/$MICROBLOG_DOMAIN_NAME/htdocs $USB_MOUNT/backup/gnusocial.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
976 987
       echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME