Przeglądaj źródła

Restore Red Matrix backup

Bob Mottram 10 lat temu
rodzic
commit
15fdbc65ce
1 zmienionych plików z 15 dodań i 2 usunięć
  1. 15
    2
      install-freedombone.sh

+ 15
- 2
install-freedombone.sh Wyświetl plik

@@ -975,6 +975,7 @@ function create_restore_script {
975 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 976
       echo '  if [ ! -f /root/tempgnusocialdata/gnusocial.sql ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
977 977
       echo '    echo "Unable to restore GNU social database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
978
+      echo '    rm -rf /root/tempgnusocialdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
978 979
       echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
979 980
       echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
980 981
       echo '    exit 503' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -991,8 +992,20 @@ function create_restore_script {
991 992
   if grep -Fxq "install_redmatrix" $COMPLETION_FILE; then
992 993
       echo "if [ -f $USB_MOUNT/backup/redmatrix.sql ]; then" >> /usr/bin/$RESTORE_SCRIPT_NAME
993 994
       echo '  echo "Restoring Red Matrix database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
994
-      echo -n '  mysql -u root --password=$DATABASE_PASSWORD redmatrix -o < ' >> /usr/bin/$RESTORE_SCRIPT_NAME
995
-      echo "$USB_MOUNT/backup/redmatrix.sql" >> /usr/bin/$RESTORE_SCRIPT_NAME
995
+      echo '  if [ ! -d /root/tempredmatrixdata ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
996
+      echo '    mkdir /root/tempredmatrixdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
997
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
998
+      echo "  rsyncrypto -v -d -r $USB_MOUNT/backup/redmatrixdata /root/tempredmatrixdata $USB_MOUNT/backup/redmatrixdata.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
999
+      echo '  if [ ! -f /root/tempredmatrixdata/redmatrix.sql ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
1000
+      echo '    echo "Unable to restore Red Matrix database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
1001
+      echo '    rm -rf /root/tempredmatrixdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
1002
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1003
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1004
+      echo '    exit 504' >> /usr/bin/$RESTORE_SCRIPT_NAME
1005
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1006
+      echo '  mysql -u root --password=$DATABASE_PASSWORD redmatrix -o < /root/tempredmatrixdata/redmatrix.sql' >> /usr/bin/$RESTORE_SCRIPT_NAME
1007
+      echo '  shred -zu /root/tempredmatrixdata/*' >> /usr/bin/$RESTORE_SCRIPT_NAME
1008
+      echo '  rm -rf /root/tempredmatrixdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
996 1009
       echo '  echo "Restoring Red Matrix installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
997 1010
       echo "  rsyncrypto -v -d -r $USB_MOUNT/backup/redmatrix /var/www/$REDMATRIX_DOMAIN_NAME/htdocs $USB_MOUNT/backup/redmatrix.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
998 1011
       echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME