|
@@ -295,6 +295,10 @@ GITHUB_BACKUP_DIRECTORY=/var/backups/github
|
295
|
295
|
# Used to indicate whether the backup contains MariaDB databases or not
|
296
|
296
|
BACKUP_INCLUDES_DATABASES="no"
|
297
|
297
|
|
|
298
|
+# contains the mysql root password which
|
|
299
|
+# is used for backups and repair
|
|
300
|
+DATABASE_PASSWORD_FILE=/root/dbpass
|
|
301
|
+
|
298
|
302
|
# message if something fails to install
|
299
|
303
|
CHECK_MESSAGE="Check your internet connection, /etc/network/interfaces and /etc/resolv.conf, then delete $COMPLETION_FILE, run 'rm -fR /var/lib/apt/lists/* && apt-get update --fix-missing' and run this script again. If hash sum mismatches persist then try setting $DEBIAN_REPO to a different mirror and also change /etc/apt/sources.list."
|
300
|
304
|
|
|
@@ -535,7 +539,13 @@ function check_hwrng {
|
535
|
539
|
function get_mariadb_password {
|
536
|
540
|
if [ -f /home/$MY_USERNAME/README ]; then
|
537
|
541
|
if grep -q "MariaDB password" /home/$MY_USERNAME/README; then
|
538
|
|
- MARIADB_PASSWORD=$(cat /home/$MY_USERNAME/README | grep "MariaDB password" | awk -F ':' '{print $2}' | sed 's/^ *//')
|
|
542
|
+ if [ -f $DATABASE_PASSWORD_FILE ]; then
|
|
543
|
+ MARIADB_PASSWORD=$(<$DATABASE_PASSWORD_FILE)
|
|
544
|
+ else
|
|
545
|
+ MARIADB_PASSWORD=$(cat /home/$MY_USERNAME/README | grep "MariaDB password" | awk -F ':' '{print $2}' | sed 's/^ *//')
|
|
546
|
+ echo "$MARIADB_PASSWORD" > $DATABASE_PASSWORD_FILE
|
|
547
|
+ chmod 600 $DATABASE_PASSWORD_FILE
|
|
548
|
+ fi
|
539
|
549
|
fi
|
540
|
550
|
fi
|
541
|
551
|
}
|
|
@@ -612,7 +622,7 @@ function create_backup_script {
|
612
|
622
|
echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
613
|
623
|
|
614
|
624
|
echo '# MariaDB password' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
615
|
|
- echo "DATABASE_PASSWORD='$MARIADB_PASSWORD'" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
625
|
+ echo "DATABASE_PASSWORD=$(<$DATABASE_PASSWORD_FILE)" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
616
|
626
|
echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
617
|
627
|
if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
|
618
|
628
|
BACKUP_INCLUDES_DATABASES="yes"
|
|
@@ -1088,7 +1098,7 @@ function create_restore_script {
|
1088
|
1098
|
echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1089
|
1099
|
echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1090
|
1100
|
echo '# MariaDB password' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1091
|
|
- echo "DATABASE_PASSWORD='$MARIADB_PASSWORD'" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
1101
|
+ echo "DATABASE_PASSWORD=$(<$DATABASE_PASSWORD_FILE)" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1092
|
1102
|
echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1093
|
1103
|
|
1094
|
1104
|
if [[ $BACKUP_INCLUDES_DATABASES == "yes" ]]; then
|
|
@@ -1124,9 +1134,10 @@ function create_restore_script {
|
1124
|
1134
|
echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1125
|
1135
|
echo ' shred -zu /root/tempmariadb/usb/backup/mariadb/tempmariadb/db' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1126
|
1136
|
echo ' rm -rf /root/tempmariadb' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1127
|
|
- echo -n ' sed -i "s/MYSQL_PASSWORD=.*/MYSQL_PASSWORD=' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1128
|
|
- echo -n "'$DATABASE_PASSWORD'/g" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1129
|
|
- echo '" /usr/bin/backupdatabases' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
1137
|
+ echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
1138
|
+ echo ' # Change database password file' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
1139
|
+ echo " echo '$DATABASE_PASSWORD' > $DATABASE_PASSWORD_FILE" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
1140
|
+ echo " chmod 600 $DATABASE_PASSWORD_FILE" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1130
|
1141
|
echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1131
|
1142
|
echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
1132
|
1143
|
fi
|
|
@@ -3981,6 +3992,9 @@ function install_mariadb {
|
3981
|
3992
|
get_mariadb_password
|
3982
|
3993
|
if [ ! $MARIADB_PASSWORD ]; then
|
3983
|
3994
|
MARIADB_PASSWORD=$(openssl rand -base64 32)
|
|
3995
|
+ echo "$MARIADB_PASSWORD" > $DATABASE_PASSWORD_FILE
|
|
3996
|
+ chmod 600 $DATABASE_PASSWORD_FILE
|
|
3997
|
+
|
3984
|
3998
|
echo '' >> /home/$MY_USERNAME/README
|
3985
|
3999
|
echo '' >> /home/$MY_USERNAME/README
|
3986
|
4000
|
echo 'MariaDB / MySql' >> /home/$MY_USERNAME/README
|
|
@@ -4010,7 +4024,7 @@ function backup_databases_script_header {
|
4010
|
4024
|
echo '' >> /usr/bin/backupdatabases
|
4011
|
4025
|
echo "EMAIL='$MY_EMAIL_ADDRESS'" >> /usr/bin/backupdatabases
|
4012
|
4026
|
echo '' >> /usr/bin/backupdatabases
|
4013
|
|
- echo "MYSQL_PASSWORD='$MARIADB_PASSWORD'" >> /usr/bin/backupdatabases
|
|
4027
|
+ echo "MYSQL_PASSWORD=$(<$DATABASE_PASSWORD_FILE)" >> /usr/bin/backupdatabases
|
4014
|
4028
|
echo 'umask 0077' >> /usr/bin/backupdatabases
|
4015
|
4029
|
echo '' >> /usr/bin/backupdatabases
|
4016
|
4030
|
echo '# exit if we are backing up to friends servers' >> /usr/bin/backupdatabases
|
|
@@ -4052,7 +4066,7 @@ function repair_databases_script {
|
4052
|
4066
|
echo 'DATABASE=$1' >> /usr/bin/repairdatabase
|
4053
|
4067
|
echo "EMAIL=$MY_EMAIL_ADDRESS" >> /usr/bin/repairdatabase
|
4054
|
4068
|
echo '' >> /usr/bin/repairdatabase
|
4055
|
|
- echo "MYSQL_ROOT_PASSWORD='$MARIADB_PASSWORD'" >> /usr/bin/repairdatabase
|
|
4069
|
+ echo "MYSQL_ROOT_PASSWORD=$(<$DATABASE_PASSWORD_FILE)" >> /usr/bin/repairdatabase
|
4056
|
4070
|
echo 'TEMPFILE=/root/repairdatabase_$DATABASE' >> /usr/bin/repairdatabase
|
4057
|
4071
|
echo '' >> /usr/bin/repairdatabase
|
4058
|
4072
|
echo 'umask 0077' >> /usr/bin/repairdatabase
|