|
@@ -582,7 +582,9 @@ function backup_to_friends_servers {
|
582
|
582
|
echo "To add friends servers create a file called $FRIENDS_SERVERS_LIST"
|
583
|
583
|
echo 'and add entries like this:' >> /home/$MY_USERNAME/README
|
584
|
584
|
echo '' >> /home/$MY_USERNAME/README
|
585
|
|
- echo ' username@domainname//home/username password' >> /home/$MY_USERNAME/README
|
|
585
|
+ echo 'username1@domain1//home/username1 ssh_password1' >> /home/$MY_USERNAME/README
|
|
586
|
+ echo 'username2@domain2//home/username2 ssh_password2' >> /home/$MY_USERNAME/README
|
|
587
|
+ echo '...' >> /home/$MY_USERNAME/README
|
586
|
588
|
echo '' >> /home/$MY_USERNAME/README
|
587
|
589
|
echo 'The system will try to backup to these remote locations once per day.' >> /home/$MY_USERNAME/README
|
588
|
590
|
chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
|
@@ -3221,6 +3223,25 @@ function install_mariadb {
|
3221
|
3223
|
echo 'install_mariadb' >> $COMPLETION_FILE
|
3222
|
3224
|
}
|
3223
|
3225
|
|
|
3226
|
+function backup_databases_script_header {
|
|
3227
|
+ if [ ! -f /usr/bin/backupdatabases ]; then
|
|
3228
|
+ echo '#!/bin/sh' > /usr/bin/backupdatabases
|
|
3229
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3230
|
+ echo "EMAIL='$MY_USERNAME@$DOMAIN_NAME'" >> /usr/bin/backupdatabases
|
|
3231
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3232
|
+ echo "MYSQL_PASSWORD='$MARIADB_PASSWORD'" >> /usr/bin/backupdatabases
|
|
3233
|
+ echo 'umask 0077' >> /usr/bin/backupdatabases
|
|
3234
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3235
|
+ echo '# exit if we are backing up to friends servers' >> /usr/bin/backupdatabases
|
|
3236
|
+ echo "if [ -f $FRIENDS_SERVER_LIST ]; then" >> /usr/bin/backupdatabases
|
|
3237
|
+ echo ' exit 1' >> /usr/bin/backupdatabases
|
|
3238
|
+ echo 'fi' >> /usr/bin/backupdatabases
|
|
3239
|
+
|
|
3240
|
+ echo '#!/bin/sh' > /etc/cron.daily/backupdatabasesdaily
|
|
3241
|
+ echo '/usr/bin/backupdatabases' >> /etc/cron.daily/backupdatabasesdaily
|
|
3242
|
+ fi
|
|
3243
|
+}
|
|
3244
|
+
|
3224
|
3245
|
function install_gnu_social {
|
3225
|
3246
|
if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
|
3226
|
3247
|
return
|
|
@@ -3629,6 +3650,36 @@ quit" > $INSTALL_DIR/batch.sql
|
3629
|
3650
|
chmod 777 /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/view/tpl
|
3630
|
3651
|
chmod 777 /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/view/tpl/smarty3
|
3631
|
3652
|
|
|
3653
|
+ # Ensure that the database gets backed up locally, if remote
|
|
3654
|
+ # backups are not being used
|
|
3655
|
+ backup_databases_script_header
|
|
3656
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3657
|
+ echo '# Backup the Red Matrix database' >> /usr/bin/backupdatabases
|
|
3658
|
+ echo 'TEMPFILE=/root/redmatrix.sql' >> /usr/bin/backupdatabases
|
|
3659
|
+ echo 'DAILYFILE=/var/backups/redmatrix_daily.sql' >> /usr/bin/backupdatabases
|
|
3660
|
+ echo 'mysqldump --password=$MYSQL_PASSWORD redmatrix > $TEMPFILE' >> /usr/bin/backupdatabases
|
|
3661
|
+ echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> /usr/bin/backupdatabases
|
|
3662
|
+ echo 'if [ "$FILESIZE" -eq "0" ]; then' >> /usr/bin/backupdatabases
|
|
3663
|
+ echo ' if [ -f $DAILYFILE ]; then' >> /usr/bin/backupdatabases
|
|
3664
|
+ echo ' cp $DAILYFILE $TEMPFILE' >> /usr/bin/backupdatabases
|
|
3665
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3666
|
+ echo ' # try to restore yesterdays database' >> /usr/bin/backupdatabases
|
|
3667
|
+ echo ' mysql -u root --password=$MYSQL_PASSWORD redmatrix -o < $DAILYFILE' >> /usr/bin/backupdatabases
|
|
3668
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3669
|
+ echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
|
3670
|
+ echo ' echo "Unable to create a backup of the Red Matrix database. Attempted to restore from yesterdays backup" | mail -s "Red Matrix backup" $EMAIL' >> /usr/bin/backupdatabases
|
|
3671
|
+ echo ' else' >> /usr/bin/backupdatabases
|
|
3672
|
+ echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
|
3673
|
+ echo ' echo "Unable to create a backup of the Red Matrix database." | mail -s "Red Matrix backup" $EMAIL' >> /usr/bin/backupdatabases
|
|
3674
|
+ echo ' fi' >> /usr/bin/backupdatabases
|
|
3675
|
+ echo 'else' >> /usr/bin/backupdatabases
|
|
3676
|
+ echo ' chmod 600 $TEMPFILE' >> /usr/bin/backupdatabases
|
|
3677
|
+ echo ' mv $TEMPFILE $DAILYFILE' >> /usr/bin/backupdatabases
|
|
3678
|
+ echo '' >> /usr/bin/backupdatabases
|
|
3679
|
+ echo ' # Make the backup readable only by root' >> /usr/bin/backupdatabases
|
|
3680
|
+ echo ' chmod 600 $DAILYFILE' >> /usr/bin/backupdatabases
|
|
3681
|
+ echo 'fi' >> /usr/bin/backupdatabases
|
|
3682
|
+
|
3632
|
3683
|
nginx_ensite $REDMATRIX_DOMAIN_NAME
|
3633
|
3684
|
service php5-fpm restart
|
3634
|
3685
|
service nginx restart
|