|
@@ -1843,6 +1843,37 @@ function check_certificates {
|
1843
|
1843
|
fi
|
1844
|
1844
|
}
|
1845
|
1845
|
|
|
1846
|
+function backup_database_local_daily {
|
|
1847
|
+ database_name=$1
|
|
1848
|
+ backup_databases_script=/usr/bin/backupdatabases
|
|
1849
|
+ echo '' >> $backup_databases_script
|
|
1850
|
+ echo $"# Backup the ${database_name} database" >> $backup_databases_script
|
|
1851
|
+ echo "TEMPFILE=/root/${database_name}.sql" >> $backup_databases_script
|
|
1852
|
+ echo 'DAILYFILE=/var/backups/${database_name}_daily.sql' >> $backup_databases_script
|
|
1853
|
+ echo "mysqldump --password=\"\$MYSQL_PASSWORD\" ${database_name} > \$TEMPFILE" >> $backup_databases_script
|
|
1854
|
+ echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> $backup_databases_script
|
|
1855
|
+ echo 'if [ "$FILESIZE" -eq "0" ]; then' >> $backup_databases_script
|
|
1856
|
+ echo ' if [ -f $DAILYFILE ]; then' >> $backup_databases_script
|
|
1857
|
+ echo ' cp $DAILYFILE $TEMPFILE' >> $backup_databases_script
|
|
1858
|
+ echo '' >> $backup_databases_script
|
|
1859
|
+ echo ' # try to restore yesterdays database' >> $backup_databases_script
|
|
1860
|
+ echo " mysql -u root --password=\"\$MYSQL_PASSWORD\" ${database_name} -o < \$DAILYFILE" >> $backup_databases_script
|
|
1861
|
+ echo '' >> $backup_databases_script
|
|
1862
|
+ echo ' # Send a warning email' >> $backup_databases_script
|
|
1863
|
+ echo " echo \"Unable to create a backup of the ${database_name} database. Attempted to restore from yesterdays backup\" | mail -s \"${database_name} backup\" \$EMAIL" >> $backup_databases_script
|
|
1864
|
+ echo ' else' >> $backup_databases_script
|
|
1865
|
+ echo ' # Send a warning email' >> $backup_databases_script
|
|
1866
|
+ echo " echo \"Unable to create a backup of the ${database_name} database.\" | mail -s \"${database_name} backup\" \$EMAIL" >> $backup_databases_script
|
|
1867
|
+ echo ' fi' >> $backup_databases_script
|
|
1868
|
+ echo 'else' >> $backup_databases_script
|
|
1869
|
+ echo ' chmod 600 $TEMPFILE' >> $backup_databases_script
|
|
1870
|
+ echo ' mv $TEMPFILE $DAILYFILE' >> $backup_databases_script
|
|
1871
|
+ echo '' >> $backup_databases_script
|
|
1872
|
+ echo ' # Make the backup readable only by root' >> $backup_databases_script
|
|
1873
|
+ echo ' chmod 600 $DAILYFILE' >> $backup_databases_script
|
|
1874
|
+ echo 'fi' >> $backup_databases_script
|
|
1875
|
+}
|
|
1876
|
+
|
1846
|
1877
|
function install_not_on_BBB {
|
1847
|
1878
|
if grep -Fxq "install_not_on_BBB" $COMPLETION_FILE; then
|
1848
|
1879
|
return
|
|
@@ -6576,32 +6607,8 @@ function install_owncloud {
|
6576
|
6607
|
# Ensure that the database gets backed up locally, if remote
|
6577
|
6608
|
# backups are not being used
|
6578
|
6609
|
backup_databases_script_header
|
6579
|
|
- echo '' >> /usr/bin/backupdatabases
|
6580
|
|
- echo $'# Backup Owncloud database' >> /usr/bin/backupdatabases
|
6581
|
|
- echo 'TEMPFILE=/root/owncloud.sql' >> /usr/bin/backupdatabases
|
6582
|
|
- echo 'DAILYFILE=/var/backups/owncloud_daily.sql' >> /usr/bin/backupdatabases
|
6583
|
|
- echo 'mysqldump --password="$MYSQL_PASSWORD" owncloud > $TEMPFILE' >> /usr/bin/backupdatabases
|
6584
|
|
- echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> /usr/bin/backupdatabases
|
6585
|
|
- echo 'if [ "$FILESIZE" -eq "0" ]; then' >> /usr/bin/backupdatabases
|
6586
|
|
- echo ' if [ -f $DAILYFILE ]; then' >> /usr/bin/backupdatabases
|
6587
|
|
- echo ' cp $DAILYFILE $TEMPFILE' >> /usr/bin/backupdatabases
|
6588
|
|
- echo '' >> /usr/bin/backupdatabases
|
6589
|
|
- echo ' # try to restore yesterdays database' >> /usr/bin/backupdatabases
|
6590
|
|
- echo ' mysql -u root --password="$MYSQL_PASSWORD" owncloud -o < $DAILYFILE' >> /usr/bin/backupdatabases
|
6591
|
|
- echo '' >> /usr/bin/backupdatabases
|
6592
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
6593
|
|
- echo ' echo "Unable to create a backup of the Owncloud database. Attempted to restore from yesterdays backup" | mail -s "Owncloud backup" $EMAIL' >> /usr/bin/backupdatabases
|
6594
|
|
- echo ' else' >> /usr/bin/backupdatabases
|
6595
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
6596
|
|
- echo ' echo "Unable to create a backup of the Owncloud database." | mail -s "Owncloud backup" $EMAIL' >> /usr/bin/backupdatabases
|
6597
|
|
- echo ' fi' >> /usr/bin/backupdatabases
|
6598
|
|
- echo 'else' >> /usr/bin/backupdatabases
|
6599
|
|
- echo ' chmod 600 $TEMPFILE' >> /usr/bin/backupdatabases
|
6600
|
|
- echo ' mv $TEMPFILE $DAILYFILE' >> /usr/bin/backupdatabases
|
6601
|
|
- echo '' >> /usr/bin/backupdatabases
|
6602
|
|
- echo ' # Make the backup readable only by root' >> /usr/bin/backupdatabases
|
6603
|
|
- echo ' chmod 600 $DAILYFILE' >> /usr/bin/backupdatabases
|
6604
|
|
- echo 'fi' >> /usr/bin/backupdatabases
|
|
6610
|
+
|
|
6611
|
+ backup_database_local_daily owncloud
|
6605
|
6612
|
|
6606
|
6613
|
nginx_ensite $OWNCLOUD_DOMAIN_NAME
|
6607
|
6614
|
|
|
@@ -8620,7 +8627,7 @@ function install_gnu_social {
|
8620
|
8627
|
CURRENT_DDNS_DOMAIN=$MICROBLOG_DOMAIN_NAME
|
8621
|
8628
|
add_ddns_domain
|
8622
|
8629
|
|
8623
|
|
- microblog_nginx_site=/etc/nginx/sites-available/$MICROBLOG_DOMAIN_NAME
|
|
8630
|
+ microblog_nginx_site=/etc/nginx/sites-available/$MICROBLOG_DOMAIN_NAME
|
8624
|
8631
|
if [[ $ONION_ONLY == "no" ]]; then
|
8625
|
8632
|
echo 'server {' > $microblog_nginx_site
|
8626
|
8633
|
echo ' listen 80;' >> $microblog_nginx_site
|
|
@@ -8737,33 +8744,8 @@ function install_gnu_social {
|
8737
|
8744
|
# backups are not being used
|
8738
|
8745
|
backup_databases_script_header
|
8739
|
8746
|
|
8740
|
|
- if ! grep -q "GNU Social" /usr/bin/backupdatabases; then
|
8741
|
|
- echo '' >> /usr/bin/backupdatabases
|
8742
|
|
- echo $'# Backup the GNU Social database' >> /usr/bin/backupdatabases
|
8743
|
|
- echo 'TEMPFILE=/root/gnusocial.sql' >> /usr/bin/backupdatabases
|
8744
|
|
- echo 'DAILYFILE=/var/backups/gnusocial_daily.sql' >> /usr/bin/backupdatabases
|
8745
|
|
- echo 'mysqldump --password="$MYSQL_PASSWORD" gnusocial > $TEMPFILE' >> /usr/bin/backupdatabases
|
8746
|
|
- echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> /usr/bin/backupdatabases
|
8747
|
|
- echo 'if [ "$FILESIZE" -eq "0" ]; then' >> /usr/bin/backupdatabases
|
8748
|
|
- echo ' if [ -f $DAILYFILE ]; then' >> /usr/bin/backupdatabases
|
8749
|
|
- echo ' cp $DAILYFILE $TEMPFILE' >> /usr/bin/backupdatabases
|
8750
|
|
- echo '' >> /usr/bin/backupdatabases
|
8751
|
|
- echo ' # try to restore yesterdays database' >> /usr/bin/backupdatabases
|
8752
|
|
- echo ' mysql -u root --password="$MYSQL_PASSWORD" gnusocial -o < $DAILYFILE' >> /usr/bin/backupdatabases
|
8753
|
|
- echo '' >> /usr/bin/backupdatabases
|
8754
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
8755
|
|
- echo ' echo "Unable to create a backup of the GNU Social database. Attempted to restore from yesterdays backup" | mail -s "GNU Social backup" $EMAIL' >> /usr/bin/backupdatabases
|
8756
|
|
- echo ' else' >> /usr/bin/backupdatabases
|
8757
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
8758
|
|
- echo ' echo "Unable to create a backup of the GNU Social database." | mail -s "GNU Social backup" $EMAIL' >> /usr/bin/backupdatabases
|
8759
|
|
- echo ' fi' >> /usr/bin/backupdatabases
|
8760
|
|
- echo 'else' >> /usr/bin/backupdatabases
|
8761
|
|
- echo ' chmod 600 $TEMPFILE' >> /usr/bin/backupdatabases
|
8762
|
|
- echo ' mv $TEMPFILE $DAILYFILE' >> /usr/bin/backupdatabases
|
8763
|
|
- echo '' >> /usr/bin/backupdatabases
|
8764
|
|
- echo ' # Make the backup readable only by root' >> /usr/bin/backupdatabases
|
8765
|
|
- echo ' chmod 600 $DAILYFILE' >> /usr/bin/backupdatabases
|
8766
|
|
- echo 'fi' >> /usr/bin/backupdatabases
|
|
8747
|
+ if ! grep -q "gnusocial" /usr/bin/backupdatabases; then
|
|
8748
|
+ backup_database_local_daily gnusocial
|
8767
|
8749
|
fi
|
8768
|
8750
|
|
8769
|
8751
|
if ! grep -q "GNU Social" /etc/cron.weekly/backupdatabasesweekly; then
|
|
@@ -9350,32 +9332,8 @@ function install_hubzilla {
|
9350
|
9332
|
# Ensure that the database gets backed up locally, if remote
|
9351
|
9333
|
# backups are not being used
|
9352
|
9334
|
backup_databases_script_header
|
9353
|
|
- echo '' >> /usr/bin/backupdatabases
|
9354
|
|
- echo $'# Backup the Hubzilla database' >> /usr/bin/backupdatabases
|
9355
|
|
- echo 'TEMPFILE=/root/hubzilla.sql' >> /usr/bin/backupdatabases
|
9356
|
|
- echo 'DAILYFILE=/var/backups/hubzilla_daily.sql' >> /usr/bin/backupdatabases
|
9357
|
|
- echo 'mysqldump --password="$MYSQL_PASSWORD" hubzilla > $TEMPFILE' >> /usr/bin/backupdatabases
|
9358
|
|
- echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> /usr/bin/backupdatabases
|
9359
|
|
- echo 'if [ "$FILESIZE" -lt "1024" ]; then' >> /usr/bin/backupdatabases
|
9360
|
|
- echo ' if [ -f $DAILYFILE ]; then' >> /usr/bin/backupdatabases
|
9361
|
|
- echo ' cp $DAILYFILE $TEMPFILE' >> /usr/bin/backupdatabases
|
9362
|
|
- echo '' >> /usr/bin/backupdatabases
|
9363
|
|
- echo ' # try to restore yesterdays database' >> /usr/bin/backupdatabases
|
9364
|
|
- echo ' mysql -u root --password="$MYSQL_PASSWORD" hubzilla -o < $DAILYFILE' >> /usr/bin/backupdatabases
|
9365
|
|
- echo '' >> /usr/bin/backupdatabases
|
9366
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
9367
|
|
- echo ' echo "Unable to create a backup of the Hubzilla database. Attempted to restore from yesterdays backup" | mail -s "Hubzilla backup" $EMAIL' >> /usr/bin/backupdatabases
|
9368
|
|
- echo ' else' >> /usr/bin/backupdatabases
|
9369
|
|
- echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
9370
|
|
- echo ' echo "Unable to create a backup of the Hubzilla database." | mail -s "Hubzilla backup" $EMAIL' >> /usr/bin/backupdatabases
|
9371
|
|
- echo ' fi' >> /usr/bin/backupdatabases
|
9372
|
|
- echo 'else' >> /usr/bin/backupdatabases
|
9373
|
|
- echo ' chmod 600 $TEMPFILE' >> /usr/bin/backupdatabases
|
9374
|
|
- echo ' mv $TEMPFILE $DAILYFILE' >> /usr/bin/backupdatabases
|
9375
|
|
- echo '' >> /usr/bin/backupdatabases
|
9376
|
|
- echo ' # Make the backup readable only by root' >> /usr/bin/backupdatabases
|
9377
|
|
- echo ' chmod 600 $DAILYFILE' >> /usr/bin/backupdatabases
|
9378
|
|
- echo 'fi' >> /usr/bin/backupdatabases
|
|
9335
|
+
|
|
9336
|
+ backup_database_local_daily hubzilla
|
9379
|
9337
|
|
9380
|
9338
|
echo '' >> /etc/cron.weekly/backupdatabasesweekly
|
9381
|
9339
|
echo '# Hubzilla' >> /etc/cron.weekly/backupdatabasesweekly
|