Ver código fonte

Check for database errors

Bob Mottram 10 anos atrás
pai
commit
3bedbe3ead
1 arquivos alterados com 31 adições e 5 exclusões
  1. 31
    5
      install-freedombone.sh

+ 31
- 5
install-freedombone.sh Ver arquivo

@@ -916,14 +916,22 @@ function create_restore_script {
916 916
       echo '  BACKUP_MARIADB_PASSWORD=$(</root/tempmariadb/usb/backup/mariadb/tempmariadb/db)' >> /usr/bin/$RESTORE_SCRIPT_NAME
917 917
       echo '  echo "Restore the MariaDB user table"' >> /usr/bin/$RESTORE_SCRIPT_NAME
918 918
       echo '  mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD mysql -o < /root/tempmariadb/usb/backup/mariadb/tempmariadb/mysql.sql)' >> /usr/bin/$RESTORE_SCRIPT_NAME
919
-      echo '  if [ ! "$mysqlsuccess" ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
919
+      echo '  if [[ "$mysqlsuccess" == "ERROR"* ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
920 920
       echo '    echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
921
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
922
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
921 923
       echo '    exit 962' >> /usr/bin/$RESTORE_SCRIPT_NAME
922 924
       echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
923 925
       echo '  shred -zu /root/tempmariadb/usb/backup/mariadb/tempmariadb/db' >> /usr/bin/$RESTORE_SCRIPT_NAME
924 926
       echo '  rm -rf /root/tempmariadb' >> /usr/bin/$RESTORE_SCRIPT_NAME
925 927
       echo '  echo "Apply the new MariaDB user table"' >> /usr/bin/$RESTORE_SCRIPT_NAME
926
-      echo '  mysql -u root --password=$DATABASE_PASSWORD "flush privileges;"' >> /usr/bin/$RESTORE_SCRIPT_NAME
928
+      echo '  mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD "flush privileges;")' >> /usr/bin/$RESTORE_SCRIPT_NAME
929
+      echo '  if [[ "$mysqlsuccess" == "ERROR"* ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
930
+      echo '    echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
931
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
932
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
933
+      echo '    exit 963' >> /usr/bin/$RESTORE_SCRIPT_NAME
934
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
927 935
       echo '  echo "Change the MariaDB password to the backup version"' >> /usr/bin/$RESTORE_SCRIPT_NAME
928 936
       echo '  DATABASE_PASSWORD=$BACKUP_MARIADB_PASSWORD' >> /usr/bin/$RESTORE_SCRIPT_NAME
929 937
       echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -1020,7 +1028,13 @@ function create_restore_script {
1020 1028
       echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1021 1029
       echo '    exit 503' >> /usr/bin/$RESTORE_SCRIPT_NAME
1022 1030
       echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1023
-      echo '  mysql -u root --password=$DATABASE_PASSWORD gnusocial -o < /root/tempgnusocialdata/usb/backup/gnusocialdata/tempgnusocialdata/gnusocial.sql' >> /usr/bin/$RESTORE_SCRIPT_NAME
1031
+      echo '  mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD gnusocial -o < /root/tempgnusocialdata/usb/backup/gnusocialdata/tempgnusocialdata/gnusocial.sql)' >> /usr/bin/$RESTORE_SCRIPT_NAME
1032
+      echo '  if [[ "$mysqlsuccess" == "ERROR"* ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
1033
+      echo '    echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
1034
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1035
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1036
+      echo '    exit 964' >> /usr/bin/$RESTORE_SCRIPT_NAME
1037
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1024 1038
       echo '  shred -zu /root/tempgnusocialdata/usb/backup/gnusocialdata/tempgnusocialdata/*' >> /usr/bin/$RESTORE_SCRIPT_NAME
1025 1039
       echo '  rm -rf /root/tempgnusocialdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
1026 1040
       echo '  echo "Restoring microblog installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -1049,7 +1063,13 @@ function create_restore_script {
1049 1063
       echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1050 1064
       echo '    exit 504' >> /usr/bin/$RESTORE_SCRIPT_NAME
1051 1065
       echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1052
-      echo '  mysql -u root --password=$DATABASE_PASSWORD redmatrix -o < /root/tempredmatrixdata/usb/backup/redmatrixdata/tempredmatrixdata/redmatrix.sql' >> /usr/bin/$RESTORE_SCRIPT_NAME
1066
+      echo '  mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD redmatrix -o < /root/tempredmatrixdata/usb/backup/redmatrixdata/tempredmatrixdata/redmatrix.sql)' >> /usr/bin/$RESTORE_SCRIPT_NAME
1067
+      echo '  if [[ "$mysqlsuccess" == "ERROR"* ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
1068
+      echo '    echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
1069
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1070
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1071
+      echo '    exit 965' >> /usr/bin/$RESTORE_SCRIPT_NAME
1072
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1053 1073
       echo '  shred -zu /root/tempredmatrixdata/usb/backup/redmatrixdata/tempredmatrixdata/*' >> /usr/bin/$RESTORE_SCRIPT_NAME
1054 1074
       echo '  rm -rf /root/tempredmatrixdata' >> /usr/bin/$RESTORE_SCRIPT_NAME
1055 1075
       echo '  echo "Restoring Red Matrix installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -1078,7 +1098,13 @@ function create_restore_script {
1078 1098
       echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1079 1099
       echo '    exit 505' >> /usr/bin/$RESTORE_SCRIPT_NAME
1080 1100
       echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1081
-      echo '  mysql -u root --password=$DATABASE_PASSWORD owncloud -o < /root/tempownclouddata/usb/backup/ownclouddata/tempownclouddata/owncloud.sql' >> /usr/bin/$RESTORE_SCRIPT_NAME
1101
+      echo '  mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD owncloud -o < /root/tempownclouddata/usb/backup/ownclouddata/tempownclouddata/owncloud.sql)' >> /usr/bin/$RESTORE_SCRIPT_NAME
1102
+      echo '  if [[ "$mysqlsuccess" == "ERROR"* ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
1103
+      echo '    echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
1104
+      echo "    umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1105
+      echo "    rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
1106
+      echo '    exit 965' >> /usr/bin/$RESTORE_SCRIPT_NAME
1107
+      echo '  fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
1082 1108
       echo '  echo "Restoring Owncloud installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
1083 1109
       echo '  if [ ! -d /root/tempowncloud ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
1084 1110
       echo '    mkdir /root/tempowncloud' >> /usr/bin/$RESTORE_SCRIPT_NAME