|
@@ -301,6 +301,61 @@ function check_hwrng {
|
301
|
301
|
fi
|
302
|
302
|
}
|
303
|
303
|
|
|
304
|
+function create_backup_script {
|
|
305
|
+ if grep -Fxq "create_backup_script" $COMPLETION_FILE; then
|
|
306
|
+ return
|
|
307
|
+ fi
|
|
308
|
+ apt-get -y --force-yes install duplicity
|
|
309
|
+
|
|
310
|
+ echo '#!/bin/bash' > /usr/bin/$BACKUP_SCRIPT_NAME
|
|
311
|
+ echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
312
|
+ echo "if [ ! -b $USB_DRIVE ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
313
|
+ echo ' echo "Please attach a USB drive"' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
314
|
+ echo ' exit 1' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
315
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
316
|
+ echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
317
|
+ echo "if [ ! -d $USB_MOUNT ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
318
|
+ echo " mkdir $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
319
|
+ echo " mount $USB_DRIVE $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
320
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
321
|
+ echo "if [ ! -d $USB_MOUNT/backup ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
322
|
+ echo " mkdir $USB_MOUNT/backup" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
323
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
324
|
+ echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
325
|
+
|
|
326
|
+ echo '# Put some files into a temporary directory so that they can be easily backed up' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
327
|
+ echo "if [ ! -d /home/$MY_USERNAME/tempfiles ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
328
|
+ echo " mkdir /home/$MY_USERNAME/tempfiles" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
329
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
330
|
+ if [[ $MICROBLOG_INSTALLED == "yes" ]]; then
|
|
331
|
+ echo "mysqldump --password=$MARIADB_PASSWORD gnusocial > /home/$MY_USERNAME/tempfiles/gnusocial.sql" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
332
|
+ fi
|
|
333
|
+ if [[ $REDMATRIX_INSTALLED == "yes" ]]; then
|
|
334
|
+ echo "mysqldump --password=$MARIADB_PASSWORD redmatrix > /home/$MY_USERNAME/tempfiles/redmatrix.sql" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
335
|
+ fi
|
|
336
|
+ if [[ $OWNCLOUD_INSTALLED == "yes" ]]; then
|
|
337
|
+ echo "tar -czvf /home/$MY_USERNAME/tempfiles/owncloud.tar.gz /var/www/$OWNCLOUD_DOMAIN_NAME/htdocs/config /var/www/$OWNCLOUD_DOMAIN_NAME/htdocs/data" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
338
|
+ fi
|
|
339
|
+ if [[ $WIKI_INSTALLED == "yes" ]]; then
|
|
340
|
+ echo "tar -czvf /home/$MY_USERNAME/tempfiles/wiki.tar.gz /var/www/$WIKI_DOMAIN_NAME/htdocs" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
341
|
+ fi
|
|
342
|
+ echo 'tar -czvf /home/$MY_USERNAME/tempfiles/miscfiles.tar.gz /home/$MY_USERNAME/.gnupg /home/$MY_USERNAME/.muttrc /home/$MY_USERNAME/.procmailrc /home/$MY_USERNAME/.ssh /home/$MY_USERNAME/personal' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+ echo 'exit 0' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
347
|
+
|
|
348
|
+ echo 'create_backup_script' >> $COMPLETION_FILE
|
|
349
|
+}
|
|
350
|
+
|
|
351
|
+function create_restore_script {
|
|
352
|
+ if grep -Fxq "create_restore_script" $COMPLETION_FILE; then
|
|
353
|
+ return
|
|
354
|
+ fi
|
|
355
|
+ apt-get -y --force-yes install duplicity
|
|
356
|
+ echo 'create_restore_script' >> $COMPLETION_FILE
|
|
357
|
+}
|
|
358
|
+
|
304
|
359
|
function backup_to_friends_servers {
|
305
|
360
|
if grep -Fxq "backup_to_friends_servers" $COMPLETION_FILE; then
|
306
|
361
|
return
|
|
@@ -341,7 +396,7 @@ function backup_to_friends_servers {
|
341
|
396
|
if [[ $WIKI_INSTALLED == "yes" ]]; then
|
342
|
397
|
echo "tar -czvf /home/$MY_USERNAME/tempfiles/wiki.tar.gz /var/www/$WIKI_DOMAIN_NAME/htdocs" >> /usr/bin/backup2friends
|
343
|
398
|
fi
|
344
|
|
- echo 'tar -czvf /home/$MY_USERNAME/tempfiles/temp.tar.gz /home/$MY_USERNAME/.gnupg /home/$MY_USERNAME/.muttrc /home/$MY_USERNAME/.procmailrc /home/$MY_USERNAME/.ssh /home/$MY_USERNAME/personal' >> /usr/bin/backup2friends
|
|
399
|
+ echo 'tar -czvf /home/$MY_USERNAME/tempfiles/miscfiles.tar.gz /home/$MY_USERNAME/.gnupg /home/$MY_USERNAME/.muttrc /home/$MY_USERNAME/.procmailrc /home/$MY_USERNAME/.ssh /home/$MY_USERNAME/personal' >> /usr/bin/backup2friends
|
345
|
400
|
|
346
|
401
|
echo '' >> /usr/bin/backup2friends
|
347
|
402
|
echo 'while read remote_server' >> /usr/bin/backup2friends
|
|
@@ -2021,6 +2076,8 @@ function import_email {
|
2021
|
2076
|
EMAIL_COMPLETE_MSG=' *** Freedombone mailbox installation is complete ***'
|
2022
|
2077
|
if grep -Fxq "import_email" $COMPLETION_FILE; then
|
2023
|
2078
|
if [[ $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
|
2079
|
+ create_backup_script
|
|
2080
|
+ create_restore_script
|
2024
|
2081
|
backup_to_friends_servers
|
2025
|
2082
|
echo ''
|
2026
|
2083
|
echo "$EMAIL_COMPLETE_MSG"
|
|
@@ -2045,6 +2102,8 @@ function import_email {
|
2045
|
2102
|
fi
|
2046
|
2103
|
echo 'import_email' >> $COMPLETION_FILE
|
2047
|
2104
|
if [[ $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
|
2105
|
+ create_backup_script
|
|
2106
|
+ create_restore_script
|
2048
|
2107
|
backup_to_friends_servers
|
2049
|
2108
|
apt-get -y --force-yes autoremove
|
2050
|
2109
|
# unmount any attached usb drive
|
|
@@ -2108,6 +2167,8 @@ function install_owncloud {
|
2108
|
2167
|
OWNCLOUD_COMPLETION_MSG2="Open $OWNCLOUD_DOMAIN_NAME in a web browser to complete the setup"
|
2109
|
2168
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
2110
|
2169
|
if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
|
2170
|
+ create_backup_script
|
|
2171
|
+ create_restore_script
|
2111
|
2172
|
backup_to_friends_servers
|
2112
|
2173
|
apt-get -y --force-yes autoremove
|
2113
|
2174
|
# unmount any attached usb drive
|
|
@@ -2283,6 +2344,8 @@ function install_owncloud {
|
2283
|
2344
|
echo 'install_owncloud' >> $COMPLETION_FILE
|
2284
|
2345
|
|
2285
|
2346
|
if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
|
2347
|
+ create_backup_script
|
|
2348
|
+ create_restore_script
|
2286
|
2349
|
backup_to_friends_servers
|
2287
|
2350
|
apt-get -y --force-yes autoremove
|
2288
|
2351
|
# unmount any attached usb drive
|
|
@@ -3511,7 +3574,7 @@ function install_mediagoblin {
|
3511
|
3574
|
echo 'install_mediagoblin' >> $COMPLETION_FILE
|
3512
|
3575
|
}
|
3513
|
3576
|
|
3514
|
|
-function create_backup_script {
|
|
3577
|
+function create_backup_script_old {
|
3515
|
3578
|
if grep -Fxq "create_backup_script" $COMPLETION_FILE; then
|
3516
|
3579
|
return
|
3517
|
3580
|
fi
|
|
@@ -3645,7 +3708,7 @@ function create_backup_script {
|
3645
|
3708
|
echo 'create_backup_script' >> $COMPLETION_FILE
|
3646
|
3709
|
}
|
3647
|
3710
|
|
3648
|
|
-function create_restore_script {
|
|
3711
|
+function create_restore_script_old {
|
3649
|
3712
|
if grep -Fxq "create_restore_script" $COMPLETION_FILE; then
|
3650
|
3713
|
return
|
3651
|
3714
|
fi
|
|
@@ -3799,8 +3862,6 @@ update_the_kernel
|
3799
|
3862
|
enable_zram
|
3800
|
3863
|
random_number_generator
|
3801
|
3864
|
set_your_domain_name
|
3802
|
|
-create_backup_script
|
3803
|
|
-create_restore_script
|
3804
|
3865
|
time_synchronisation
|
3805
|
3866
|
configure_internet_protocol
|
3806
|
3867
|
configure_ssh
|
|
@@ -3837,6 +3898,8 @@ install_gnu_social
|
3837
|
3898
|
install_redmatrix
|
3838
|
3899
|
install_dlna_server
|
3839
|
3900
|
install_mediagoblin
|
|
3901
|
+create_backup_script
|
|
3902
|
+create_restore_script
|
3840
|
3903
|
backup_to_friends_servers
|
3841
|
3904
|
install_final
|
3842
|
3905
|
apt-get -y --force-yes autoremove
|