Bob Mottram 9 年之前
父節點
當前提交
f11a4f2080
共有 3 個檔案被更改,包括 819 行新增780 行删除
  1. 22
    19
      src/freedombone-backup-local
  2. 664
    653
      src/freedombone-restore-local
  3. 133
    108
      src/freedombone-restore-remote

+ 22
- 19
src/freedombone-backup-local 查看文件

285
 
285
 
286
 function backup_configuration {
286
 function backup_configuration {
287
 	echo $"Backing up ${PROJECT_NAME} configuration files"
287
 	echo $"Backing up ${PROJECT_NAME} configuration files"
288
-	if [ ! -d /root/tempbackupconfig ]; then
289
-		mkdir -p /root/tempbackupconfig
288
+	temp_backup_dir=/root/tempbackupconfig
289
+	if [ ! -d $temp_backup_dir ]; then
290
+		mkdir -p $temp_backup_dir
290
 	fi
291
 	fi
291
-	cp -f $CONFIG_FILE /root/tempbackupconfig
292
-	cp -f $COMPLETION_FILE /root/tempbackupconfig
292
+	cp -f $CONFIG_FILE $temp_backup_dir
293
+	cp -f $COMPLETION_FILE $temp_backup_dir
293
 	if [ -f $BACKUP_EXTRA_DIRECTORIES ]; then
294
 	if [ -f $BACKUP_EXTRA_DIRECTORIES ]; then
294
-		cp -f $BACKUP_EXTRA_DIRECTORIES /root/tempbackupconfig
295
+		cp -f $BACKUP_EXTRA_DIRECTORIES $temp_backup_dir
295
 	fi
296
 	fi
296
 	# nginx password hashes
297
 	# nginx password hashes
297
 	if [ -f /etc/nginx/.htpasswd ]; then
298
 	if [ -f /etc/nginx/.htpasswd ]; then
298
-		cp -f /etc/nginx/.htpasswd /root/tempbackupconfig/htpasswd
299
+		cp -f /etc/nginx/.htpasswd $temp_backup_dir/htpasswd
299
 	fi
300
 	fi
300
-	backup_directory_to_usb /root/tempbackupconfig config
301
+	backup_directory_to_usb $temp_backup_dir config
301
 }
302
 }
302
 
303
 
303
 function backup_admin_readme {
304
 function backup_admin_readme {
304
 	if [ -f /home/$ADMIN_USERNAME/README ]; then
305
 	if [ -f /home/$ADMIN_USERNAME/README ]; then
305
 		echo $"Backing up README"
306
 		echo $"Backing up README"
306
-		if [ ! -d /home/$ADMIN_USERNAME/tempbackup ]; then
307
-			mkdir -p /home/$ADMIN_USERNAME/tempbackup
307
+		temp_backup_dir=/home/$ADMIN_USERNAME/tempbackup
308
+		if [ ! -d $temp_backup_dir ]; then
309
+			mkdir -p $temp_backup_dir
308
 		fi
310
 		fi
309
-		cp -f /home/$ADMIN_USERNAME/README /home/$ADMIN_USERNAME/tempbackup
310
-		backup_directory_to_usb /home/$ADMIN_USERNAME/tempbackup readme
311
+		cp -f /home/$ADMIN_USERNAME/README $temp_backup_dir
312
+		backup_directory_to_usb $temp_backup_dir readme
311
 	fi
313
 	fi
312
 }
314
 }
313
 
315
 
314
 function backup_mariadb {
316
 function backup_mariadb {
315
 	if [ ${#DATABASE_PASSWORD} -gt 1 ]; then
317
 	if [ ${#DATABASE_PASSWORD} -gt 1 ]; then
316
-		if [ ! -d /root/tempmariadb ]; then
317
-			mkdir /root/tempmariadb
318
+		temp_backup_dir=/root/tempmariadb
319
+		if [ ! -d $temp_backup_dir ]; then
320
+			mkdir $temp_backup_dir
318
 		fi
321
 		fi
319
-		mysqldump --lock-tables --password="$DATABASE_PASSWORD" mysql user > /root/tempmariadb/mysql.sql
320
-		if [ ! -s /root/tempmariadb/mysql.sql ]; then
322
+		mysqldump --lock-tables --password="$DATABASE_PASSWORD" mysql user > $temp_backup_dir/mysql.sql
323
+		if [ ! -s $temp_backup_dir/mysql.sql ]; then
321
 			echo $"Unable to backup mysql settings"
324
 			echo $"Unable to backup mysql settings"
322
-			rm -rf /root/tempmariadb
325
+			rm -rf $temp_backup_dir
323
 			umount $USB_MOUNT
326
 			umount $USB_MOUNT
324
 			rm -rf $USB_MOUNT
327
 			rm -rf $USB_MOUNT
325
 			exit 8
328
 			exit 8
326
 		fi
329
 		fi
327
-		echo "$DATABASE_PASSWORD" > /root/tempmariadb/db
328
-		chmod 400 /root/tempmariadb/db
329
-		backup_directory_to_usb /root/tempmariadb mariadb
330
+		echo "$DATABASE_PASSWORD" > $temp_backup_dir/db
331
+		chmod 400 $temp_backup_dir/db
332
+		backup_directory_to_usb $temp_backup_dir mariadb
330
 	fi
333
 	fi
331
 }
334
 }
332
 
335
 

+ 664
- 653
src/freedombone-restore-local
文件差異過大導致無法顯示
查看文件


+ 133
- 108
src/freedombone-restore-remote 查看文件

179
 	fi
179
 	fi
180
 	if [ -d $SERVER_DIRECTORY/backup/config ]; then
180
 	if [ -d $SERVER_DIRECTORY/backup/config ]; then
181
 		echo $"Restoring configuration files"
181
 		echo $"Restoring configuration files"
182
-		restore_directory_from_friend /root/tempconfig config
182
+		temp_restore_dir=/root/tempconfig
183
+		restore_directory_from_friend $temp_restore_dir config
183
 
184
 
184
-		cp -f /root/tempconfig/root/${PROJECT_NAME}.cfg $CONFIG_FILE
185
+		cp -f $temp_restore_dir/root/${PROJECT_NAME}.cfg $CONFIG_FILE
185
 		if [ ! "$?" = "0" ]; then
186
 		if [ ! "$?" = "0" ]; then
186
 			unmount_drive
187
 			unmount_drive
187
-			rm -rf /root/tempconfig
188
+			rm -rf $temp_restore_dir
188
 			exit 5372
189
 			exit 5372
189
 		fi
190
 		fi
190
 		if [ -f $CONFIG_FILE ]; then
191
 		if [ -f $CONFIG_FILE ]; then
192
 			freedombone -c $CONFIG_FILE
193
 			freedombone -c $CONFIG_FILE
193
 		fi
194
 		fi
194
 
195
 
195
-		cp -f /root/tempconfig/root/${PROJECT_NAME}-completed.txt $COMPLETION_FILE
196
+		cp -f $temp_restore_dir/root/${PROJECT_NAME}-completed.txt $COMPLETION_FILE
196
 		if [ ! "$?" = "0" ]; then
197
 		if [ ! "$?" = "0" ]; then
197
 			unmount_drive
198
 			unmount_drive
198
-			rm -rf /root/tempconfig
199
+			rm -rf $temp_restore_dir
199
 			exit 7252
200
 			exit 7252
200
 		fi
201
 		fi
201
 
202
 
202
-		if [ -f /root/tempconfig${BACKUP_EXTRA_DIRECTORIES} ]; then
203
-			cp -f /root/tempconfig${BACKUP_EXTRA_DIRECTORIES} ${BACKUP_EXTRA_DIRECTORIES}
203
+		if [ -f ${temp_restore_dir}${BACKUP_EXTRA_DIRECTORIES} ]; then
204
+			cp -f ${temp_restore_dir}${BACKUP_EXTRA_DIRECTORIES} ${BACKUP_EXTRA_DIRECTORIES}
204
 			if [ ! "$?" = "0" ]; then
205
 			if [ ! "$?" = "0" ]; then
205
 				unmount_drive
206
 				unmount_drive
206
-				rm -rf /root/tempconfig
207
+				rm -rf $temp_restore_dir
207
 				exit 62121
208
 				exit 62121
208
 			fi
209
 			fi
209
 		fi
210
 		fi
210
 
211
 
211
 		# restore nginx password hashes
212
 		# restore nginx password hashes
212
-		if [ -f /root/tempconfig/root/htpasswd ]; then
213
-			cp -f /root/tempconfig/root/htpasswd /etc/nginx/.htpasswd
213
+		if [ -f $temp_restore_dir/root/htpasswd ]; then
214
+			cp -f $temp_restore_dir/root/htpasswd /etc/nginx/.htpasswd
214
 		fi
215
 		fi
215
 
216
 
216
-		rm -rf /root/tempconfig
217
+		rm -rf $temp_restore_dir
217
 	fi
218
 	fi
218
 }
219
 }
219
 
220
 
225
 	fi
226
 	fi
226
 	if [ -d $SERVER_DIRECTORY/backup/mariadb ]; then
227
 	if [ -d $SERVER_DIRECTORY/backup/mariadb ]; then
227
 		echo $"Restoring MariaDB settings"
228
 		echo $"Restoring MariaDB settings"
228
-		restore_directory_from_friend /root/tempmariadb mariadb
229
+		temp_restore_dir=/root/tempmariadb
230
+		restore_directory_from_friend $temp_restore_dir mariadb
229
 		echo $"Get the MariaDB password from the backup"
231
 		echo $"Get the MariaDB password from the backup"
230
-		if [ ! -f /root/tempmariadb/root/tempmariadb/db ]; then
232
+		if [ ! -f ${temp_restore_dir}${temp_restore_dir}/db ]; then
231
 			echo $"MariaDB password file not found"
233
 			echo $"MariaDB password file not found"
232
 			exit 495
234
 			exit 495
233
 		fi
235
 		fi
234
-		BACKUP_MARIADB_PASSWORD=$(cat /root/tempmariadb/root/tempmariadb/db)
236
+		BACKUP_MARIADB_PASSWORD=$(cat ${temp_restore_dir}${temp_restore_dir}/db)
235
 		if [[ "$BACKUP_MARIADB_PASSWORD" != "$DATABASE_PASSWORD" ]]; then
237
 		if [[ "$BACKUP_MARIADB_PASSWORD" != "$DATABASE_PASSWORD" ]]; then
236
 			echo $"Restore the MariaDB user table"
238
 			echo $"Restore the MariaDB user table"
237
-			mysqlsuccess=$(mysql -u root --password="$DATABASE_PASSWORD" mysql -o < /root/tempmariadb/root/tempmariadb/mysql.sql)
239
+			mysqlsuccess=$(mysql -u root --password="$DATABASE_PASSWORD" mysql -o < ${temp_restore_dir}${temp_restore_dir}/mysql.sql)
238
 			if [ ! "$?" = "0" ]; then
240
 			if [ ! "$?" = "0" ]; then
239
 				echo $"Try again using the password obtained from backup"
241
 				echo $"Try again using the password obtained from backup"
240
-				mysqlsuccess=$(mysql -u root --password="$BACKUP_MARIADB_PASSWORD" mysql -o < /root/tempmariadb/root/tempmariadb/mysql.sql)
242
+				mysqlsuccess=$(mysql -u root --password="$BACKUP_MARIADB_PASSWORD" mysql -o < ${temp_restore_dir}${temp_restore_dir}/mysql.sql)
241
 			fi
243
 			fi
242
 			if [ ! "$?" = "0" ]; then
244
 			if [ ! "$?" = "0" ]; then
243
 				echo "$mysqlsuccess"
245
 				echo "$mysqlsuccess"
248
 			echo $"Change the MariaDB password to the backup version"
250
 			echo $"Change the MariaDB password to the backup version"
249
 			DATABASE_PASSWORD=$BACKUP_MARIADB_PASSWORD
251
 			DATABASE_PASSWORD=$BACKUP_MARIADB_PASSWORD
250
 		fi
252
 		fi
251
-		shred -zu /root/tempmariadb/root/tempmariadb/db
252
-		rm -rf /root/tempmariadb
253
+		shred -zu ${temp_restore_dir}${temp_restore_dir}/db
254
+		rm -rf ${temp_restore_dir}
253
 
255
 
254
 		# Change database password file
256
 		# Change database password file
255
 		echo "$DATABASE_PASSWORD" > /root/dbpass
257
 		echo "$DATABASE_PASSWORD" > /root/dbpass
295
 					${PROJECT_NAME}-adduser $USERNAME
297
 					${PROJECT_NAME}-adduser $USERNAME
296
 				fi
298
 				fi
297
 				echo $"Restoring Mutt settings for $USERNAME"
299
 				echo $"Restoring Mutt settings for $USERNAME"
298
-				restore_directory_from_friend /root/tempmutt mutt/$USERNAME
299
-				if [ -f /root/tempmutt/home/$USERNAME/tempbackup/.muttrc ]; then
300
-					cp -f /root/tempmutt/home/$USERNAME/tempbackup/.muttrc /home/$USERNAME/.muttrc
300
+				temp_restore_dir=/root/tempmutt
301
+				restore_directory_from_friend ${temp_restore_dir} mutt/$USERNAME
302
+				if [ -f ${temp_restore_dir}/home/$USERNAME/tempbackup/.muttrc ]; then
303
+					cp -f ${temp_restore_dir}/home/$USERNAME/tempbackup/.muttrc /home/$USERNAME/.muttrc
301
 				fi
304
 				fi
302
-				if [ -f /root/tempmutt/home/$USERNAME/tempbackup/Muttrc ]; then
303
-					cp -f /root/tempmutt/home/$USERNAME/tempbackup/Muttrc /etc/Muttrc
305
+				if [ -f ${temp_restore_dir}/home/$USERNAME/tempbackup/Muttrc ]; then
306
+					cp -f ${temp_restore_dir}/home/$USERNAME/tempbackup/Muttrc /etc/Muttrc
304
 				fi
307
 				fi
305
 				if [ ! "$?" = "0" ]; then
308
 				if [ ! "$?" = "0" ]; then
306
-					rm -rf /root/tempmutt
309
+					rm -rf ${temp_restore_dir}
307
 					exit 276
310
 					exit 276
308
 				fi
311
 				fi
309
-				rm -rf /root/tempmutt
312
+				rm -rf ${temp_restore_dir}
310
 			fi
313
 			fi
311
 		fi
314
 		fi
312
 	done
315
 	done
326
 					${PROJECT_NAME}-adduser $USERNAME
329
 					${PROJECT_NAME}-adduser $USERNAME
327
 				fi
330
 				fi
328
 				echo $"Restoring gnupg settings for $USERNAME"
331
 				echo $"Restoring gnupg settings for $USERNAME"
329
-				restore_directory_from_friend /root/tempgnupg gnupg/$USERNAME
330
-				cp -r /root/tempgnupg/home/$USERNAME/.gnupg /home/$USERNAME/
332
+				temp_restore_dir=/root/tempgnupg
333
+				restore_directory_from_friend ${temp_restore_dir} gnupg/$USERNAME
334
+				cp -r ${temp_restore_dir}/home/$USERNAME/.gnupg /home/$USERNAME/
331
 				if [ ! "$?" = "0" ]; then
335
 				if [ ! "$?" = "0" ]; then
332
-					rm -rf /root/tempgnupg
336
+					rm -rf ${temp_restore_dir}
333
 					exit 276
337
 					exit 276
334
 				fi
338
 				fi
335
-				rm -rf /root/tempgnupg
339
+				rm -rf ${temp_restore_dir}
336
 				if [[ "$USERNAME" == "$ADMIN_USERNAME" ]]; then
340
 				if [[ "$USERNAME" == "$ADMIN_USERNAME" ]]; then
337
 					cp -r /home/$USERNAME/.gnupg /root
341
 					cp -r /home/$USERNAME/.gnupg /root
338
 					if [ ! "$?" = "0" ]; then
342
 					if [ ! "$?" = "0" ]; then
358
 					${PROJECT_NAME}-adduser $USERNAME
362
 					${PROJECT_NAME}-adduser $USERNAME
359
 				fi
363
 				fi
360
 				echo $"Restoring procmail settings for $USERNAME"
364
 				echo $"Restoring procmail settings for $USERNAME"
361
-				restore_directory_from_friend /root/tempprocmail procmail/$USERNAME
362
-				cp -f /root/tempprocmail/home/$USERNAME/tempbackup/.procmailrc /home/$USERNAME/
365
+				temp_restore_dir=/root/tempprocmail
366
+				restore_directory_from_friend ${temp_restore_dir} procmail/$USERNAME
367
+				cp -f ${temp_restore_dir}/home/$USERNAME/tempbackup/.procmailrc /home/$USERNAME/
363
 				if [ ! "$?" = "0" ]; then
368
 				if [ ! "$?" = "0" ]; then
364
-					rm -rf /root/tempprocmail
369
+					rm -rf ${temp_restore_dir}
365
 					exit 276
370
 					exit 276
366
 				fi
371
 				fi
367
-				rm -rf /root/tempprocmail
372
+				rm -rf ${temp_restore_dir}
368
 			fi
373
 			fi
369
 		fi
374
 		fi
370
 	done
375
 	done
384
 					${PROJECT_NAME}-adduser $USERNAME
389
 					${PROJECT_NAME}-adduser $USERNAME
385
 				fi
390
 				fi
386
 				echo $"Restoring spamassassin settings for $USERNAME"
391
 				echo $"Restoring spamassassin settings for $USERNAME"
387
-				restore_directory_from_friend /root/tempspamassassin spamassassin/$USERNAME
388
-				cp -rf /root/tempspamassassin/home/$USERNAME/.spamassassin /home/$USERNAME/
392
+				temp_restore_dir=/root/tempspamassassin
393
+				restore_directory_from_friend $temp_restore_dir spamassassin/$USERNAME
394
+				cp -rf $temp_restore_dir/home/$USERNAME/.spamassassin /home/$USERNAME/
389
 				if [ ! "$?" = "0" ]; then
395
 				if [ ! "$?" = "0" ]; then
390
-					rm -rf /root/tempspamassassin
396
+					rm -rf $temp_restore_dir
391
 					exit 276
397
 					exit 276
392
 				fi
398
 				fi
393
-				rm -rf /root/tempspamassassin
399
+				rm -rf $temp_restore_dir
394
 			fi
400
 			fi
395
 		fi
401
 		fi
396
 	done
402
 	done
404
 	fi
410
 	fi
405
 	if [ -d $SERVER_DIRECTORY/backup/readme ]; then
411
 	if [ -d $SERVER_DIRECTORY/backup/readme ]; then
406
 		echo $"Restoring README"
412
 		echo $"Restoring README"
407
-		restore_directory_from_friend /root/tempreadme readme
408
-		cp -f /root/tempreadme/home/$ADMIN_USERNAME/tempbackup/README /home/$ADMIN_USERNAME/
413
+		temp_restore_dir=/root/tempreadme
414
+		restore_directory_from_friend $temp_restore_dir readme
415
+		cp -f $temp_restore_dir/home/$ADMIN_USERNAME/tempbackup/README /home/$ADMIN_USERNAME/
409
 		if [ ! "$?" = "0" ]; then
416
 		if [ ! "$?" = "0" ]; then
410
-			rm -rf /root/tempreadme
417
+			rm -rf $temp_restore_dir
411
 			exit 276
418
 			exit 276
412
 		fi
419
 		fi
413
-		rm -rf /root/tempreadme
420
+		rm -rf $temp_restore_dir
414
 	fi
421
 	fi
415
 }
422
 }
416
 
423
 
422
 	fi
429
 	fi
423
 	if [ -d $SERVER_DIRECTORY/backup/ipfs ]; then
430
 	if [ -d $SERVER_DIRECTORY/backup/ipfs ]; then
424
 		echo $"Restoring IPFS"
431
 		echo $"Restoring IPFS"
425
-		restore_directory_from_friend /root/tempipfs ipfs
426
-		cp -rf /root/tempipfs/home/$ADMIN_USERNAME/.ipfs/* /home/$ADMIN_USERNAME/.ipfs
432
+		temp_restore_dir=/root/tempipfs
433
+		restore_directory_from_friend $temp_restore_dir ipfs
434
+		cp -rf $temp_restore_dir/home/$ADMIN_USERNAME/.ipfs/* /home/$ADMIN_USERNAME/.ipfs
427
 		if [ ! "$?" = "0" ]; then
435
 		if [ ! "$?" = "0" ]; then
428
-			rm -rf /root/tempipfs
436
+			rm -rf $temp_restore_dir
429
 			exit 276
437
 			exit 276
430
 		fi
438
 		fi
431
-		rm -rf /root/tempipfs
439
+		rm -rf $temp_restore_dir
432
 	fi
440
 	fi
433
 }
441
 }
434
 
442
 
446
 					${PROJECT_NAME}-adduser $USERNAME
454
 					${PROJECT_NAME}-adduser $USERNAME
447
 				fi
455
 				fi
448
 				echo $"Restoring ssh keys for $USERNAME"
456
 				echo $"Restoring ssh keys for $USERNAME"
449
-				restore_directory_from_friend /root/tempssh ssh/$USERNAME
450
-				cp -r /root/tempssh/home/$USERNAME/.ssh /home/$USERNAME/
457
+				temp_restore_dir=/root/tempssh
458
+				restore_directory_from_friend $temp_restore_dir ssh/$USERNAME
459
+				cp -r $temp_restore_dir/home/$USERNAME/.ssh /home/$USERNAME/
451
 				if [ ! "$?" = "0" ]; then
460
 				if [ ! "$?" = "0" ]; then
452
-					rm -rf /root/tempssh
461
+					rm -rf $temp_restore_dir
453
 					exit 664
462
 					exit 664
454
 				fi
463
 				fi
455
-				rm -rf /root/tempssh
464
+				rm -rf $temp_restore_dir
456
 			fi
465
 			fi
457
 		fi
466
 		fi
458
 	done
467
 	done
472
 					${PROJECT_NAME}-adduser $USERNAME
481
 					${PROJECT_NAME}-adduser $USERNAME
473
 				fi
482
 				fi
474
 				echo $"Restoring config files for $USERNAME"
483
 				echo $"Restoring config files for $USERNAME"
475
-				restore_directory_from_friend /root/tempconfig config/$USERNAME
476
-				cp -r /root/tempconfig/home/$USERNAME/.config /home/$USERNAME/
484
+				temp_restore_dir=/root/tempconfig
485
+				restore_directory_from_friend $temp_restore_dir config/$USERNAME
486
+				cp -r $temp_restore_dir/home/$USERNAME/.config /home/$USERNAME/
477
 				if [ ! "$?" = "0" ]; then
487
 				if [ ! "$?" = "0" ]; then
478
-					rm -rf /root/tempconfig
488
+					rm -rf $temp_restore_dir
479
 					exit 664
489
 					exit 664
480
 				fi
490
 				fi
481
-				rm -rf /root/tempconfig
491
+				rm -rf $temp_restore_dir
482
 			fi
492
 			fi
483
 		fi
493
 		fi
484
 	done
494
 	done
510
 					${PROJECT_NAME}-adduser $USERNAME
520
 					${PROJECT_NAME}-adduser $USERNAME
511
 				fi
521
 				fi
512
 				echo $"Restoring monkeysphere ids for $USERNAME"
522
 				echo $"Restoring monkeysphere ids for $USERNAME"
513
-				restore_directory_from_friend /root/tempmonkeysphere monkeysphere/$USERNAME
514
-				cp -r /root/tempmonkeysphere/home/$USERNAME/.monkeysphere /home/$USERNAME/
523
+				temp_restore_dir=/root/tempmonkeysphere
524
+				restore_directory_from_friend $temp_restore_dir monkeysphere/$USERNAME
525
+				cp -r $temp_restore_dir/home/$USERNAME/.monkeysphere /home/$USERNAME/
515
 				if [ ! "$?" = "0" ]; then
526
 				if [ ! "$?" = "0" ]; then
516
-					rm -rf /root/tempmonkeysphere
527
+					rm -rf $temp_restore_dir
517
 					exit 664
528
 					exit 664
518
 				fi
529
 				fi
519
-				rm -rf /root/tempmonkeysphere
530
+				rm -rf $temp_restore_dir
520
 			fi
531
 			fi
521
 		fi
532
 		fi
522
 
533
 
546
 					${PROJECT_NAME}-adduser $USERNAME
557
 					${PROJECT_NAME}-adduser $USERNAME
547
 				fi
558
 				fi
548
 				echo $"Restoring fin files for $USERNAME"
559
 				echo $"Restoring fin files for $USERNAME"
549
-				restore_directory_from_friend /root/tempfin fin/$USERNAME
550
-				cp -r /root/tempfin/home/$USERNAME/.fin /home/$USERNAME/
560
+				temp_restore_dir=/root/tempfin
561
+				restore_directory_from_friend $temp_restore_dir fin/$USERNAME
562
+				cp -r $temp_restore_dir/home/$USERNAME/.fin /home/$USERNAME/
551
 				if [ ! "$?" = "0" ]; then
563
 				if [ ! "$?" = "0" ]; then
552
-					rm -rf /root/tempfin
564
+					rm -rf $temp_restore_dir
553
 					exit 664
565
 					exit 664
554
 				fi
566
 				fi
555
-				rm -rf /root/tempfin
567
+				rm -rf $temp_restore_dir
556
 			fi
568
 			fi
557
 		fi
569
 		fi
558
 	done
570
 	done
572
 					${PROJECT_NAME}-adduser $USERNAME
584
 					${PROJECT_NAME}-adduser $USERNAME
573
 				fi
585
 				fi
574
 				echo $"Restoring local files for $USERNAME"
586
 				echo $"Restoring local files for $USERNAME"
575
-				restore_directory_from_friend /root/templocal local/$USERNAME
576
-				cp -r /root/templocal/home/$USERNAME/.local /home/$USERNAME/
587
+				temp_restore_dir=/root/templocal
588
+				restore_directory_from_friend $temp_restore_dir local/$USERNAME
589
+				cp -r $temp_restore_dir/home/$USERNAME/.local /home/$USERNAME/
577
 				if [ ! "$?" = "0" ]; then
590
 				if [ ! "$?" = "0" ]; then
578
-					rm -rf /root/templocal
591
+					rm -rf $temp_restore_dir
579
 					exit 664
592
 					exit 664
580
 				fi
593
 				fi
581
-				rm -rf /root/templocal
594
+				rm -rf $temp_restore_dir
582
 			fi
595
 			fi
583
 		fi
596
 		fi
584
 	done
597
 	done
639
 					${PROJECT_NAME}-adduser $USERNAME
652
 					${PROJECT_NAME}-adduser $USERNAME
640
 				fi
653
 				fi
641
 				echo $"Restoring personal settings for $USERNAME"
654
 				echo $"Restoring personal settings for $USERNAME"
642
-				restore_directory_from_friend /root/temppersonal personal/$USERNAME
655
+				temp_restore_dir=/root/temppersonal
656
+				restore_directory_from_friend $temp_restore_dir personal/$USERNAME
643
 				if [ -d /home/$USERNAME/personal ]; then
657
 				if [ -d /home/$USERNAME/personal ]; then
644
 					rm -rf /home/$USERNAME/personal
658
 					rm -rf /home/$USERNAME/personal
645
 				fi
659
 				fi
646
-				mv /root/temppersonal/home/$USERNAME/personal /home/$USERNAME
660
+				mv $temp_restore_dir/home/$USERNAME/personal /home/$USERNAME
647
 				if [ ! "$?" = "0" ]; then
661
 				if [ ! "$?" = "0" ]; then
648
 					exit 184
662
 					exit 184
649
 				fi
663
 				fi
650
-				rm -rf /root/temppersonal
664
+				rm -rf $temp_restore_dir
651
 			fi
665
 			fi
652
 		fi
666
 		fi
653
 	done
667
 	done
661
 	fi
675
 	fi
662
 	if [ -d /var/spool/mlmmj ]; then
676
 	if [ -d /var/spool/mlmmj ]; then
663
 		echo $"Restoring public mailing list"
677
 		echo $"Restoring public mailing list"
664
-		restore_directory_from_friend /root/tempmailinglist mailinglist
665
-		cp -r /root/tempmailinglist/root/spool/mlmmj/* /var/spool/mlmmj
678
+		temp_restore_dir=/root/tempmailinglist
679
+		restore_directory_from_friend $temp_restore_dir mailinglist
680
+		cp -r $temp_restore_dir/root/spool/mlmmj/* /var/spool/mlmmj
666
 		if [ ! "$?" = "0" ]; then
681
 		if [ ! "$?" = "0" ]; then
667
 			exit 526
682
 			exit 526
668
 		fi
683
 		fi
669
-		rm -rf /root/tempmailinglist
684
+		rm -rf $temp_restore_dir
670
 	fi
685
 	fi
671
 }
686
 }
672
 
687
 
678
 	fi
693
 	fi
679
 	if [ -d /var/lib/prosody ]; then
694
 	if [ -d /var/lib/prosody ]; then
680
 		echo $"Restoring XMPP settings"
695
 		echo $"Restoring XMPP settings"
681
-		restore_directory_from_friend /root/tempxmpp xmpp
682
-		cp -r /root/tempxmpp/var/lib/prosody/* /var/lib/prosody
696
+		temp_restore_dir=/root/tempxmpp
697
+		restore_directory_from_friend $temp_restore_dir xmpp
698
+		cp -r $temp_restore_dir/var/lib/prosody/* /var/lib/prosody
683
 		if [ ! "$?" = "0" ]; then
699
 		if [ ! "$?" = "0" ]; then
684
 			exit 725
700
 			exit 725
685
 		fi
701
 		fi
686
-		rm -rf /root/tempxmpp
702
+		rm -rf $temp_restore_dir
687
 		service prosody restart
703
 		service prosody restart
688
 		chown -R prosody:prosody /var/lib/prosody/*
704
 		chown -R prosody:prosody /var/lib/prosody/*
689
 	fi
705
 	fi
767
 
783
 
768
 	if [ -d $SERVER_DIRECTORY/backup/syncthingconfig ]; then
784
 	if [ -d $SERVER_DIRECTORY/backup/syncthingconfig ]; then
769
 		echo $"Restoring syncthing configuration"
785
 		echo $"Restoring syncthing configuration"
770
-		restore_directory_from_friend /root/tempsyncthingconfig syncthingconfig
771
-		cp -r /root/tempsyncthingconfig/* /
786
+		temp_restore_dir=/root/tempsyncthingconfig
787
+		restore_directory_from_friend $temp_restore_dir syncthingconfig
788
+		cp -r $temp_restore_dir/* /
772
 		if [ ! "$?" = "0" ]; then
789
 		if [ ! "$?" = "0" ]; then
773
 			unmount_drive
790
 			unmount_drive
774
 			systemctl start syncthing
791
 			systemctl start syncthing
775
 			systemctl start cron
792
 			systemctl start cron
776
 			exit 6833
793
 			exit 6833
777
 		fi
794
 		fi
778
-		rm -rf /root/tempsyncthingconfig
795
+		rm -rf $temp_restore_dir
779
 	fi
796
 	fi
780
 
797
 
781
 	if [ -d $SERVER_DIRECTORY/backup/syncthingshared ]; then
798
 	if [ -d $SERVER_DIRECTORY/backup/syncthingshared ]; then
782
 		echo $"Restoring syncthing shared files"
799
 		echo $"Restoring syncthing shared files"
783
-		restore_directory_from_friend /root/tempsyncthingshared syncthingshared
784
-		cp -r /root/tempsyncthingshared/* /
800
+		temp_restore_dir=/root/tempsyncthingshared
801
+		restore_directory_from_friend $temp_restore_dir syncthingshared
802
+		cp -r $temp_restore_dir/* /
785
 		if [ ! "$?" = "0" ]; then
803
 		if [ ! "$?" = "0" ]; then
786
 			unmount_drive
804
 			unmount_drive
787
 			systemctl start syncthing
805
 			systemctl start syncthing
788
 			systemctl start cron
806
 			systemctl start cron
789
 			exit 37904
807
 			exit 37904
790
 		fi
808
 		fi
791
-		rm -rf /root/tempsyncthingshared
809
+		rm -rf $temp_restore_dir
792
 	fi
810
 	fi
793
 
811
 
794
 	if [ -d $SERVER_DIRECTORY/backup/syncthing ]; then
812
 	if [ -d $SERVER_DIRECTORY/backup/syncthing ]; then
799
 					${PROJECT_NAME}-adduser $USERNAME
817
 					${PROJECT_NAME}-adduser $USERNAME
800
 				fi
818
 				fi
801
 				echo $"Restoring syncthing files for $USERNAME"
819
 				echo $"Restoring syncthing files for $USERNAME"
802
-				restore_directory_from_friend /root/tempsyncthing syncthing/$USERNAME
803
-				cp -r /root/tempsyncthing/home/$USERNAME/Sync /home/$USERNAME/
820
+				temp_restore_dir=/root/tempsyncthing
821
+				restore_directory_from_friend $temp_restore_dir syncthing/$USERNAME
822
+				cp -r $temp_restore_dir/home/$USERNAME/Sync /home/$USERNAME/
804
 				if [ ! "$?" = "0" ]; then
823
 				if [ ! "$?" = "0" ]; then
805
-					rm -rf /root/tempsyncthing
824
+					rm -rf $temp_restore_dir
806
 					unmount_drive
825
 					unmount_drive
807
 					systemctl start syncthing
826
 					systemctl start syncthing
808
 					systemctl start cron
827
 					systemctl start cron
809
 					exit 68438
828
 					exit 68438
810
 				fi
829
 				fi
811
-				rm -rf /root/tempsyncthing
830
+				rm -rf $temp_restore_dir
812
 
831
 
813
 				# restore device IDs from config settings
832
 				# restore device IDs from config settings
814
 				if [ -f /home/$USERNAME/.config/syncthing/.syncthing-server-id ]; then
833
 				if [ -f /home/$USERNAME/.config/syncthing/.syncthing-server-id ]; then
839
 		MEDIAGOBLIN_DOMAIN_NAME=$(cat $COMPLETION_FILE | grep "Mediagoblin domain" | awk -F ':' '{print $2}')
858
 		MEDIAGOBLIN_DOMAIN_NAME=$(cat $COMPLETION_FILE | grep "Mediagoblin domain" | awk -F ':' '{print $2}')
840
 		if [ -d $SERVER_DIRECTORY/backup/mediagoblin ]; then
859
 		if [ -d $SERVER_DIRECTORY/backup/mediagoblin ]; then
841
 			echo $"Restoring Mediagoblin installation"
860
 			echo $"Restoring Mediagoblin installation"
842
-			restore_directory_from_friend /root/tempmediagoblin mediagoblin
843
-			cp -r /root/tempmediagoblin/* /
861
+			temp_restore_dir=/root/tempmediagoblin
862
+			restore_directory_from_friend $temp_restore_dir mediagoblin
863
+			cp -r $temp_restore_dir/* /
844
 			if [ ! "$?" = "0" ]; then
864
 			if [ ! "$?" = "0" ]; then
845
 				exit 5626
865
 				exit 5626
846
 			fi
866
 			fi
847
-			rm -rf /root/tempmediagoblin
867
+			rm -rf $temp_restore_dir
848
 		fi
868
 		fi
849
 		chown -hR mediagoblin:www-data /var/www/$MEDIAGOBLIN_DOMAIN_NAME/htdocs
869
 		chown -hR mediagoblin:www-data /var/www/$MEDIAGOBLIN_DOMAIN_NAME/htdocs
850
 	fi
870
 	fi
940
 	if [ -d $SERVER_DIRECTORY/backup/blog ]; then
960
 	if [ -d $SERVER_DIRECTORY/backup/blog ]; then
941
 		FULLBLOG_DOMAIN_NAME=$(cat $COMPLETION_FILE | grep "Blog domain" | awk -F ':' '{print $2}')
961
 		FULLBLOG_DOMAIN_NAME=$(cat $COMPLETION_FILE | grep "Blog domain" | awk -F ':' '{print $2}')
942
 		echo $"Restoring blog installation $FULLBLOG_DOMAIN_NAME"
962
 		echo $"Restoring blog installation $FULLBLOG_DOMAIN_NAME"
943
-		mkdir /root/tempblog
944
-		restore_directory_from_friend /root/tempblog blog
963
+		temp_restore_dir=/root/tempblog
964
+		mkdir $temp_restore_dir
965
+		restore_directory_from_friend $temp_restore_dir blog
945
 		rm -rf /var/www/${FULLBLOG_DOMAIN_NAME}/htdocs
966
 		rm -rf /var/www/${FULLBLOG_DOMAIN_NAME}/htdocs
946
-		cp -r /root/tempblog/var/www/${FULLBLOG_DOMAIN_NAME}/htdocs /var/www/${FULLBLOG_DOMAIN_NAME}/
967
+		cp -r $temp_restore_dir/var/www/${FULLBLOG_DOMAIN_NAME}/htdocs /var/www/${FULLBLOG_DOMAIN_NAME}/
947
 		if [ ! "$?" = "0" ]; then
968
 		if [ ! "$?" = "0" ]; then
948
 			exit 593
969
 			exit 593
949
 		fi
970
 		fi
950
-		rm -rf /root/tempblog
971
+		rm -rf $temp_restore_dir
951
 		if [ ! -d /var/www/${FULLBLOG_DOMAIN_NAME}/htdocs/content ]; then
972
 		if [ ! -d /var/www/${FULLBLOG_DOMAIN_NAME}/htdocs/content ]; then
952
 			echo $"No content directory found after restoring blog"
973
 			echo $"No content directory found after restoring blog"
953
 			exit 287
974
 			exit 287
978
 	fi
999
 	fi
979
 	if [ -d $SERVER_DIRECTORY/backup/cjdns ]; then
1000
 	if [ -d $SERVER_DIRECTORY/backup/cjdns ]; then
980
 		echo $"Restoring cjdns installation"
1001
 		echo $"Restoring cjdns installation"
981
-		restore_directory_from_friend /root/tempcjdns cjdns
1002
+		temp_restore_dir=/root/tempcjdns
1003
+		restore_directory_from_friend $temp_restore_dir cjdns
982
 		rm -rf /etc/cjdns
1004
 		rm -rf /etc/cjdns
983
-		cp -r /root/tempcjdns/etc/cjdns /etc/
1005
+		cp -r $temp_restore_dir/etc/cjdns /etc/
984
 		if [ ! "$?" = "0" ]; then
1006
 		if [ ! "$?" = "0" ]; then
985
 			exit 7438
1007
 			exit 7438
986
 		fi
1008
 		fi
987
-		rm -rf /root/tempcjdns
1009
+		rm -rf $temp_restore_dir
988
 	fi
1010
 	fi
989
 }
1011
 }
990
 
1012
 
996
 	fi
1018
 	fi
997
 	if [ -d $SERVER_DIRECTORY/backup/voip ]; then
1019
 	if [ -d $SERVER_DIRECTORY/backup/voip ]; then
998
 		echo $"Restoring VoIP settings"
1020
 		echo $"Restoring VoIP settings"
999
-		restore_directory_from_friend /root/tempvoip voip
1000
-		cp -f /root/tempvoip/home/$ADMIN_USERNAME/tempbackup/mumble-server.ini /etc/
1021
+		temp_restore_dir=/root/tempvoip
1022
+		restore_directory_from_friend $temp_restore_dir voip
1023
+		cp -f $temp_restore_dir/home/$ADMIN_USERNAME/tempbackup/mumble-server.ini /etc/
1001
 		if [ ! "$?" = "0" ]; then
1024
 		if [ ! "$?" = "0" ]; then
1002
-			rm -rf /root/tempvoip
1025
+			rm -rf $temp_restore_dir
1003
 			exit 7823
1026
 			exit 7823
1004
 		fi
1027
 		fi
1005
-		cp -f /root/tempvoip/home/$ADMIN_USERNAME/tempbackup/sipwitch.conf /etc/sipwitch.conf
1028
+		cp -f $temp_restore_dir/home/$ADMIN_USERNAME/tempbackup/sipwitch.conf /etc/sipwitch.conf
1006
 		if [ ! "$?" = "0" ]; then
1029
 		if [ ! "$?" = "0" ]; then
1007
-			rm -rf /root/tempvoip
1030
+			rm -rf $temp_restore_dir
1008
 			exit 7823
1031
 			exit 7823
1009
 		fi
1032
 		fi
1010
-		cp -f /root/tempvoip/home/$ADMIN_USERNAME/tempbackup/mumble-server.sqlite /var/lib/mumble-server/
1033
+		cp -f $temp_restore_dir/home/$ADMIN_USERNAME/tempbackup/mumble-server.sqlite /var/lib/mumble-server/
1011
 		if [ ! "$?" = "0" ]; then
1034
 		if [ ! "$?" = "0" ]; then
1012
-			rm -rf /root/tempvoip
1035
+			rm -rf $temp_restore_dir
1013
 			exit 276
1036
 			exit 276
1014
 		fi
1037
 		fi
1015
-		rm -rf /root/tempvoip
1038
+		rm -rf $temp_restore_dir
1016
 		cp /etc/ssl/certs/mumble* /var/lib/mumble-server
1039
 		cp /etc/ssl/certs/mumble* /var/lib/mumble-server
1017
 		cp /etc/ssl/private/mumble* /var/lib/mumble-server
1040
 		cp /etc/ssl/private/mumble* /var/lib/mumble-server
1018
 		chown -R mumble-server:mumble-server /var/lib/mumble-server
1041
 		chown -R mumble-server:mumble-server /var/lib/mumble-server
1056
 					${PROJECT_NAME}-adduser $USERNAME
1079
 					${PROJECT_NAME}-adduser $USERNAME
1057
 				fi
1080
 				fi
1058
 				echo $"Restoring emails for $USERNAME"
1081
 				echo $"Restoring emails for $USERNAME"
1059
-				restore_directory_from_friend /root/tempmail mail/$USERNAME
1082
+				temp_restore_dir=/root/tempmail
1083
+				restore_directory_from_friend $temp_restore_dir mail/$USERNAME
1060
 				if [ ! -d /home/$USERNAME/Maildir ]; then
1084
 				if [ ! -d /home/$USERNAME/Maildir ]; then
1061
 					mkdir /home/$USERNAME/Maildir
1085
 					mkdir /home/$USERNAME/Maildir
1062
 				fi
1086
 				fi
1063
-				tar -xzvf /root/tempmail/root/tempbackupemail/$USERNAME/maildir.tar.gz -C /
1087
+				tar -xzvf $temp_restore_dir/root/tempbackupemail/$USERNAME/maildir.tar.gz -C /
1064
 				if [ ! "$?" = "0" ]; then
1088
 				if [ ! "$?" = "0" ]; then
1065
 					exit 927
1089
 					exit 927
1066
 				fi
1090
 				fi
1067
-				rm -rf /root/tempmail
1091
+				rm -rf $temp_restore_dir
1068
 			fi
1092
 			fi
1069
 		fi
1093
 		fi
1070
 	done
1094
 	done
1079
 	if [ -d /var/cache/minidlna ]; then
1103
 	if [ -d /var/cache/minidlna ]; then
1080
 		if [ -d $SERVER_DIRECTORY/backup/dlna ]; then
1104
 		if [ -d $SERVER_DIRECTORY/backup/dlna ]; then
1081
 			echo $"Restoring DLNA cache"
1105
 			echo $"Restoring DLNA cache"
1082
-			restore_directory_from_friend /root/tempdlna dlna
1083
-			cp -r /root/tempdlna/var/cache/minidlna/* /var/cache/minidlna/
1106
+			temp_restore_dir=/root/tempdlna
1107
+			restore_directory_from_friend $temp_restore_dir dlna
1108
+			cp -r $temp_restore_dir/var/cache/minidlna/* /var/cache/minidlna/
1084
 			if [ ! "$?" = "0" ]; then
1109
 			if [ ! "$?" = "0" ]; then
1085
 				exit 982
1110
 				exit 982
1086
 			fi
1111
 			fi
1087
-			rm -rf /root/tempdlna
1112
+			rm -rf $temp_restore_dir
1088
 		fi
1113
 		fi
1089
 	fi
1114
 	fi
1090
 }
1115
 }