瀏覽代碼

Restore users if needed

Bob Mottram 9 年之前
父節點
當前提交
b9121c9683
共有 1 個文件被更改,包括 64 次插入16 次删除
  1. 64
    16
      src/freedombone

+ 64
- 16
src/freedombone 查看文件

@@ -3204,9 +3204,12 @@ function create_restore_script {
3204 3204
       RESTORE_SUBDIR='usb/backup/mutt/'
3205 3205
   fi
3206 3206
   echo 'if [ -d $USB_MOUNT/backup/mutt ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3207
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3207
+  echo '  for d in $USB_MOUNT/backup/mutt/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3208 3208
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3209 3209
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3210
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3211
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3212
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3210 3213
   echo '      echo "Restoring Mutt settings for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3211 3214
   echo '      restore_directory_from_usb /root/tempmutt mutt/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3212 3215
   echo -n "      if [ -f /root/tempmutt/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3236,9 +3239,12 @@ function create_restore_script {
3236 3239
       RESTORE_SUBDIR='usb/backup/gnupg/'
3237 3240
   fi
3238 3241
   echo 'if [ -d $USB_MOUNT/backup/gnupg ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3239
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3242
+  echo '  for d in $USB_MOUNT/backup/gnupg/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3240 3243
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3241 3244
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3245
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3246
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3247
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3242 3248
   echo '      echo "Restoring gnupg settings for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3243 3249
   echo '      restore_directory_from_usb /root/tempgnupg gnupg/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3244 3250
   echo -n "      cp -r /root/tempgnupg/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3268,9 +3274,12 @@ function create_restore_script {
3268 3274
       RESTORE_SUBDIR='usb/backup/procmail/'
3269 3275
   fi
3270 3276
   echo 'if [ -d $USB_MOUNT/backup/procmail ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3271
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3277
+  echo '  for d in $USB_MOUNT/backup/procmail/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3272 3278
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3273 3279
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3280
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3281
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3282
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3274 3283
   echo '      echo "Restoring procmail settings for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3275 3284
   echo '      restore_directory_from_usb /root/tempprocmail procmail/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3276 3285
   echo -n "      cp -f /root/tempprocmail/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3292,10 +3301,13 @@ function create_restore_script {
3292 3301
       RESTORE_SUBDIR='usb/backup/spamassassin/'
3293 3302
   fi
3294 3303
   echo 'if [ -d $USB_MOUNT/backup/spamassassin ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3295
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3304
+  echo '  for d in $USB_MOUNT/backup/spamassassin/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3296 3305
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3297 3306
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3298 3307
   echo '      if [ -d $USB_MOUNT/backup/spamassassin/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3308
+  echo '        if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3309
+  echo '            freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3310
+  echo '        fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3299 3311
   echo '        echo "Restoring spamassassin settings for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3300 3312
   echo '        restore_directory_from_usb /root/tempspamassassin spamassassin/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3301 3313
   echo -n "        cp -rf /root/tempspamassassin/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3356,9 +3368,12 @@ function create_restore_script {
3356 3368
       RESTORE_SUBDIR='usb/backup/ssh/'
3357 3369
   fi
3358 3370
   echo 'if [ -d $USB_MOUNT/backup/ssh ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3359
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3371
+  echo '  for d in $USB_MOUNT/backup/ssh/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3360 3372
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3361 3373
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3374
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3375
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3376
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3362 3377
   echo '      echo "Restoring ssh keys for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3363 3378
   echo '      restore_directory_from_usb /root/tempssh ssh/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3364 3379
   echo -n "      cp -r /root/tempssh/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3398,9 +3413,12 @@ function create_restore_script {
3398 3413
       RESTORE_SUBDIR='usb/backup/projects/'
3399 3414
   fi
3400 3415
   echo 'if [ -d $USB_MOUNT/backup/projects ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3401
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3416
+  echo '  for d in $USB_MOUNT/backup/projects/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3402 3417
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3403 3418
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3419
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3420
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3421
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3404 3422
   echo '      echo "Restoring projects for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3405 3423
   echo '      restore_directory_from_usb /root/tempprojects projects/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3406 3424
   echo '      if [ -d /home/$USERNAME/projects ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3424,10 +3442,13 @@ function create_restore_script {
3424 3442
       RESTORE_SUBDIR='usb/backup/personal/'
3425 3443
   fi
3426 3444
   echo 'if [ -d $USB_MOUNT/backup/personal ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3427
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3445
+  echo '  for d in $USB_MOUNT/backup/personal/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3428 3446
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3429 3447
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3430 3448
   echo '      if [ -d $USB_MOUNT/backup/personal/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3449
+  echo '        if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3450
+  echo '            freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3451
+  echo '        fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3431 3452
   echo '        echo "Restoring personal settings for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3432 3453
   echo '        restore_directory_from_usb /root/temppersonal personal/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3433 3454
   echo '        if [ -d /home/$USERNAME/personal ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -3690,9 +3711,12 @@ function create_restore_script {
3690 3711
       RESTORE_SUBDIR='usb/backup/mail'
3691 3712
   fi
3692 3713
   echo 'if [ -d $USB_MOUNT/backup/mail ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3693
-  echo '  for d in /home/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3714
+  echo '  for d in $USB_MOUNT/backup/mail/*/ ; do' >> /usr/bin/$RESTORE_SCRIPT_NAME
3694 3715
   echo '    USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_SCRIPT_NAME
3695 3716
   echo '    if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3717
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
3718
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3719
+  echo '      fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
3696 3720
   echo '      echo "Restoring emails for $USERNAME"' >> /usr/bin/$RESTORE_SCRIPT_NAME
3697 3721
   echo '      restore_directory_from_usb /root/tempmail mail/$USERNAME' >> /usr/bin/$RESTORE_SCRIPT_NAME
3698 3722
   echo '      if [ ! -d /home/$USERNAME/Maildir ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
@@ -4725,10 +4749,13 @@ function restore_from_friend {
4725 4749
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4726 4750
       RESTORE_SUBDIR='remoterestore/backup/mutt/'
4727 4751
   fi
4728
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4752
+  echo 'for d in $SERVER_DIRECTORY/backup/mutt/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4729 4753
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4730 4754
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4731 4755
   echo '    if [ -d $SERVER_DIRECTORY/backup/mutt/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4756
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4757
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4758
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4732 4759
   echo '      echo "Restoring Mutt settings for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4733 4760
   echo '      restore_directory_from_friend /root/tempmutt mutt/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4734 4761
   echo -n "      if [ -f /root/tempmutt/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4755,10 +4782,13 @@ function restore_from_friend {
4755 4782
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4756 4783
       RESTORE_SUBDIR='remoterestore/backup/gnupg'
4757 4784
   fi
4758
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4785
+  echo 'for d in $SERVER_DIRECTORY/backup/gnupg/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4759 4786
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4760 4787
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4761 4788
   echo '    if [ -d $SERVER_DIRECTORY/backup/gnupg/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4789
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4790
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4791
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4762 4792
   echo '      echo "Restoring gnupg settings for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4763 4793
   echo '      restore_directory_from_friend /root/tempgnupg gnupg/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4764 4794
   echo -n "      cp -r /root/tempgnupg/${RESTORE_SUBDIR}/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4783,10 +4813,13 @@ function restore_from_friend {
4783 4813
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4784 4814
       RESTORE_SUBDIR='remoterestore/backup/procmail'
4785 4815
   fi
4786
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4816
+  echo 'for d in $SERVER_DIRECTORY/backup/procmail/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4787 4817
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4788 4818
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4789 4819
   echo '    if [ -d $SERVER_DIRECTORY/backup/procmail/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4820
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4821
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4822
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4790 4823
   echo '      echo "Restoring procmail settings for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4791 4824
   echo '      restore_directory_from_friend /root/tempprocmail procmail/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4792 4825
   echo -n "      cp -f /root/tempprocmail/${RESTORE_SUBDIR}" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4805,10 +4838,13 @@ function restore_from_friend {
4805 4838
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4806 4839
       RESTORE_SUBDIR='remoterestore/backup/spamassassin'
4807 4840
   fi
4808
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4841
+  echo 'for d in $SERVER_DIRECTORY/backup/spamassassin/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4809 4842
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4810 4843
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4811 4844
   echo '    if [ -d $SERVER_DIRECTORY/backup/spamassassin/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4845
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4846
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4847
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4812 4848
   echo '      echo "Restoring spamassassin settings for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4813 4849
   echo '      restore_directory_from_friend /root/tempspamassassin spamassassin/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4814 4850
   echo -n "      cp -rf /root/tempspamassassin/${RESTORE_SUBDIR}/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4861,10 +4897,13 @@ function restore_from_friend {
4861 4897
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4862 4898
       RESTORE_SUBDIR='remoterestore/backup/ssh'
4863 4899
   fi
4864
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4900
+  echo 'for d in $SERVER_DIRECTORY/backup/ssh/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4865 4901
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4866 4902
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4867 4903
   echo '    if [ -d $SERVER_DIRECTORY/backup/ssh/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4904
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4905
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4906
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4868 4907
   echo '      echo "Restoring ssh keys for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4869 4908
   echo '      restore_directory_from_friend /root/tempssh ssh/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4870 4909
   echo -n "      cp -r /root/tempssh/${RESTORE_SUBDIR}/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4899,10 +4938,13 @@ function restore_from_friend {
4899 4938
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4900 4939
       RESTORE_SUBDIR='remoterestore/backup/projects'
4901 4940
   fi
4902
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4941
+  echo 'for d in $SERVER_DIRECTORY/backup/projects/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4903 4942
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4904 4943
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4905 4944
   echo '    if [ -d $SERVER_DIRECTORY/backup/projects/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4945
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4946
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4947
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4906 4948
   echo '      echo "Restoring projects for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4907 4949
   echo '      restore_directory_from_friend /root/tempprojects projects/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4908 4950
   echo '      if [ -d /home/$USERNAME/projects ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -4923,10 +4965,13 @@ function restore_from_friend {
4923 4965
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
4924 4966
       RESTORE_SUBDIR='remoterestore/backup/personal'
4925 4967
   fi
4926
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4968
+  echo 'for d in $SERVER_DIRECTORY/backup/personal/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4927 4969
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4928 4970
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4929 4971
   echo '    if [ -d $SERVER_DIRECTORY/backup/personal/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4972
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4973
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4974
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4930 4975
   echo '      echo "Restoring personal settings for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4931 4976
   echo '      restore_directory_from_friend /root/temppersonal personal/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
4932 4977
   echo '      if [ -d /home/$USERNAME/personal ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
@@ -5216,10 +5261,13 @@ function restore_from_friend {
5216 5261
   if [[ $BACKUP_TYPE != 'obnam' ]]; then
5217 5262
       RESTORE_SUBDIR='remoterestore/backup/mail'
5218 5263
   fi
5219
-  echo 'for d in /home/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5264
+  echo 'for d in $SERVER_DIRECTORY/backup/mail/*/ ; do' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5220 5265
   echo '  USERNAME=$(echo "$d" | awk -F '"'"'/'"'"' '"'"'{print $3}'"'"')' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5221 5266
   echo '  if [[ $USERNAME != "git" ]]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5222 5267
   echo '    if [ -d $SERVER_DIRECTORY/backup/mail/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5268
+  echo '      if [ ! -d /home/$USERNAME ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5269
+  echo '          freedombone-adduser $USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5270
+  echo '      fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5223 5271
   echo '      echo "Restoring emails for $USERNAME"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5224 5272
   echo '      restore_directory_from_friend /root/tempmail mail/$USERNAME' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
5225 5273
   echo '      if [ ! -d /home/$USERNAME/Maildir ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME