Przeglądaj źródła

Create directories if needed

Bob Mottram 9 lat temu
rodzic
commit
6764a366af
1 zmienionych plików z 3 dodań i 69 usunięć
  1. 3
    69
      src/freedombone-backup-local

+ 3
- 69
src/freedombone-backup-local Wyświetl plik

@@ -137,6 +137,9 @@ function backup_directory_to_usb {
137 137
             exit 6
138 138
         fi
139 139
         MY_BACKUP_KEY_ID=$(gpg --list-keys "$ADMIN_NAME (backup key)" | grep 'pub ' | awk -F ' ' '{print $2}' | awk -F '/' '{print $2}')
140
+		if [ ! -d $USB_MOUNT/backup/${2} ]; then
141
+			mkdir -p $USB_MOUNT/backup/${2}
142
+		fi
140 143
         obnam force-lock -r $USB_MOUNT/backup/${2} --encrypt-with $MY_BACKUP_KEY_ID ${1}
141 144
         obnam backup -r $USB_MOUNT/backup/${2} --encrypt-with $MY_BACKUP_KEY_ID ${1}
142 145
         obnam forget --keep=30d -r $USB_MOUNT/backup/${2} --encrypt-with $MY_BACKUP_KEY_ID
@@ -164,36 +167,24 @@ for d in /home/*/ ; do
164 167
         # Backup any gpg keys
165 168
         if [ -d /home/$USERNAME/.gnupg ]; then
166 169
             echo $"Backing up gpg keys for $USERNAME"
167
-            if [ ! -d $USB_MOUNT/backup/gnupg/$USERNAME ]; then
168
-                mkdir -p $USB_MOUNT/backup/gnupg/$USERNAME
169
-            fi
170 170
             backup_directory_to_usb /home/$USERNAME/.gnupg gnupg/$USERNAME
171 171
         fi
172 172
 
173 173
         # Backup any personal settings
174 174
         if [ -d /home/$USERNAME/personal ]; then
175 175
             echo $"Backing up personal settings for $USERNAME"
176
-            if [ ! -d $USB_MOUNT/backup/personal/$USERNAME ]; then
177
-                mkdir -p $USB_MOUNT/backup/personal/$USERNAME
178
-            fi
179 176
             backup_directory_to_usb /home/$USERNAME/personal personal/$USERNAME
180 177
         fi
181 178
 
182 179
         # Backup ssh keys
183 180
         if [ -d /home/$USERNAME/.ssh ]; then
184 181
             echo $"Backing up ssh keys for $USERNAME"
185
-            if [ ! -d $USB_MOUNT/backup/ssh/$USERNAME ]; then
186
-                mkdir -p $USB_MOUNT/backup/ssh/$USERNAME
187
-            fi
188 182
             backup_directory_to_usb /home/$USERNAME/.ssh ssh/$USERNAME
189 183
         fi
190 184
 
191 185
         # Backup user configs
192 186
         if [ -d /home/$USERNAME/.config ]; then
193 187
             echo $"Backing up config files for $USERNAME"
194
-            if [ ! -d $USB_MOUNT/backup/config/$USERNAME ]; then
195
-                mkdir -p $USB_MOUNT/backup/config/$USERNAME
196
-            fi
197 188
             backup_directory_to_usb /home/$USERNAME/.config config/$USERNAME
198 189
         fi
199 190
 
@@ -207,9 +198,6 @@ for d in /home/*/ ; do
207 198
             if [ -f /etc/Muttrc ]; then
208 199
                 cp /etc/Muttrc /home/$USERNAME/tempbackup
209 200
             fi
210
-            if [ ! -d $USB_MOUNT/backup/mutt/$USERNAME ]; then
211
-                mkdir -p $USB_MOUNT/backup/mutt/$USERNAME
212
-            fi
213 201
             backup_directory_to_usb /home/$USERNAME/tempbackup mutt/$USERNAME
214 202
         fi
215 203
 
@@ -221,18 +209,12 @@ for d in /home/*/ ; do
221 209
             fi
222 210
             tar -czvf /root/tempbackupemail/$USERNAME/maildir.tar.gz /home/$USERNAME/Maildir
223 211
             echo $"Backing up emails for $USERNAME"
224
-            if [ ! -d $USB_MOUNT/backup/mail/$USERNAME ]; then
225
-                mkdir -p $USB_MOUNT/backup/mail/$USERNAME
226
-            fi
227 212
             backup_directory_to_usb /root/tempbackupemail/$USERNAME mail/$USERNAME
228 213
         fi
229 214
 
230 215
         # Backup spamassassin
231 216
         if [ -d /home/$USERNAME/.spamassassin ]; then
232 217
             echo $"Backing up spamassassin settings for $USERNAME"
233
-            if [ ! -d $USB_MOUNT/backup/spamassassin/$USERNAME ]; then
234
-                mkdir -p $USB_MOUNT/backup/spamassassin/$USERNAME
235
-            fi
236 218
             backup_directory_to_usb /home/$USERNAME/.spamassassin spamassassin/$USERNAME
237 219
         fi
238 220
 
@@ -243,9 +225,6 @@ for d in /home/*/ ; do
243 225
                 mkdir -p /home/$USERNAME/tempbackup
244 226
             fi
245 227
             cp /home/$USERNAME/.procmailrc /home/$USERNAME/tempbackup
246
-            if [ ! -d $USB_MOUNT/backup/procmail/$USERNAME ]; then
247
-                mkdir -p $USB_MOUNT/backup/procmail/$USERNAME
248
-            fi
249 228
             backup_directory_to_usb /home/$USERNAME/tempbackup procmail/$USERNAME
250 229
         fi
251 230
 
@@ -300,12 +279,6 @@ fi
300 279
 
301 280
 # backup gogs
302 281
 if [ -d /home/git/go/src/github.com/gogits ]; then
303
-    if [ ! -d $USB_MOUNT/backup/gogsrepos ]; then
304
-        mkdir -p $USB_MOUNT/backup/gogsrepos
305
-    fi
306
-    if [ ! -d $USB_MOUNT/backup/gogsssh ]; then
307
-        mkdir -p $USB_MOUNT/backup/gogsssh
308
-    fi
309 282
     backup_database gogs
310 283
     backup_directory_to_usb /root/tempgogsdata gogsdata
311 284
     echo $"Obtaining Gogs settings backup"
@@ -319,12 +292,6 @@ fi
319 292
 
320 293
 # Backup wiki
321 294
 if [ -d /etc/dokuwiki ]; then
322
-    if [ ! -d $USB_MOUNT/backup/wiki ]; then
323
-        mkdir -p $USB_MOUNT/backup/wiki
324
-    fi
325
-    if [ ! -d $USB_MOUNT/backup/wiki2 ]; then
326
-        mkdir -p $USB_MOUNT/backup/wiki2
327
-    fi
328 295
     echo $"Obtaining wiki data backup"
329 296
     backup_directory_to_usb /var/lib/dokuwiki wiki
330 297
     backup_directory_to_usb /etc/dokuwiki wiki2
@@ -334,9 +301,6 @@ fi
334 301
 if grep -q "Blog domain" $COMPLETION_FILE; then
335 302
     FULLBLOG_DOMAIN_NAME=$(cat $COMPLETION_FILE | grep "Blog domain" | awk -F ':' '{print $2}')
336 303
     if [ -d /var/www/${FULLBLOG_DOMAIN_NAME} ]; then
337
-        if [ ! -d $USB_MOUNT/backup/blog ]; then
338
-            mkdir -p $USB_MOUNT/backup/blog
339
-        fi
340 304
         echo $"Obtaining blog backup"
341 305
         backup_directory_to_usb /var/www/${FULLBLOG_DOMAIN_NAME}/htdocs blog
342 306
     else
@@ -349,45 +313,30 @@ fi
349 313
 # Backup certificates
350 314
 if [ -d /etc/ssl ]; then
351 315
     echo $"Backing up certificates"
352
-    if [ ! -d $USB_MOUNT/backup/ssl ]; then
353
-        mkdir -p $USB_MOUNT/backup/ssl
354
-    fi
355 316
     backup_directory_to_usb /etc/ssl ssl
356 317
 fi
357 318
 
358 319
 # Backup the public mailing list
359 320
 if [ -d /var/spool/mlmmj ]; then
360 321
     echo $"Backing up the public mailing list"
361
-    if [ ! -d $USB_MOUNT/backup/mailinglist ]; then
362
-        mkdir -p $USB_MOUNT/backup/mailinglist
363
-    fi
364 322
     backup_directory_to_usb /var/spool/mlmmj mailinglist
365 323
 fi
366 324
 
367 325
 # Backup xmpp settings
368 326
 if [ -d /var/lib/prosody ]; then
369 327
     echo $"Backing up the XMPP settings"
370
-    if [ ! -d $USB_MOUNT/backup/xmpp ]; then
371
-        mkdir -p $USB_MOUNT/backup/xmpp
372
-    fi
373 328
     backup_directory_to_usb /var/lib/prosody xmpp
374 329
 fi
375 330
 
376 331
 # Backup web sites
377 332
 if [ -d /etc/nginx ]; then
378 333
     echo $"Backing up web settings"
379
-    if [ ! -d $USB_MOUNT/backup/web ]; then
380
-        mkdir -p $USB_MOUNT/backup/web
381
-    fi
382 334
     backup_directory_to_usb /etc/nginx/sites-available web
383 335
 fi
384 336
 
385 337
 # Backup admin user README file
386 338
 if [ -f /home/$ADMIN_USERNAME/README ]; then
387 339
     echo $"Backing up README"
388
-    if [ ! -d $USB_MOUNT/backup/readme ]; then
389
-        mkdir -p $USB_MOUNT/backup/readme
390
-    fi
391 340
     if [ ! -d /home/$ADMIN_USERNAME/tempbackup ]; then
392 341
         mkdir -p /home/$ADMIN_USERNAME/tempbackup
393 342
     fi
@@ -398,18 +347,12 @@ fi
398 347
 # Backup IPFS
399 348
 if [ -d /home/$ADMIN_USERNAME/.ipfs ]; then
400 349
     echo $"Backing up IPFS"
401
-    if [ ! -d $USB_MOUNT/backup/ipfs ]; then
402
-        mkdir -p $USB_MOUNT/backup/ipfs
403
-    fi
404 350
     backup_directory_to_usb /home/$ADMIN_USERNAME/.ipfs ipfs
405 351
 fi
406 352
 
407 353
 # Backup DLNA cache
408 354
 if [ -d /var/cache/minidlna ]; then
409 355
     echo $"Backing up DLNA cache"
410
-    if [ ! -d $USB_MOUNT/backup/dlna ]; then
411
-        mkdir -p $USB_MOUNT/backup/dlna
412
-    fi
413 356
     backup_directory_to_usb /var/cache/minidlna dlna
414 357
 fi
415 358
 
@@ -422,17 +365,11 @@ if [ -f /etc/mumble-server.ini ]; then
422 365
     cp -f /etc/mumble-server.ini /root/tempvoipbackup
423 366
     cp -f /var/lib/mumble-server/mumble-server.sqlite /root/tempvoipbackup
424 367
     cp -f /etc/sipwitch.conf /root/tempvoipbackup
425
-    if [ ! -d $USB_MOUNT/backup/voip ]; then
426
-        mkdir -p $USB_MOUNT/backup/voip
427
-    fi
428 368
     backup_directory_to_usb /root/tempvoipbackup voip
429 369
 fi
430 370
 
431 371
 # MariaDB settings
432 372
 if [ ${#DATABASE_PASSWORD} -gt 1 ]; then
433
-    if [ ! -d $USB_MOUNT/backup/mariadb ]; then
434
-        mkdir -p $USB_MOUNT/backup/mariadb
435
-    fi
436 373
     if [ ! -d /root/tempmariadb ]; then
437 374
         mkdir /root/tempmariadb
438 375
     fi
@@ -452,9 +389,6 @@ fi
452 389
 # Backup Tox node settings
453 390
 if [ -d /var/lib/tox-bootstrapd ]; then
454 391
     echo $"Backing up Tox node settings"
455
-    if [ ! -d $USB_MOUNT/backup/tox ]; then
456
-        mkdir -p $USB_MOUNT/backup/tox
457
-    fi
458 392
     cp /etc/tox-bootstrapd.conf /var/lib/tox-bootstrapd
459 393
     if [ -d /var/lib/tox-bootstrapd/Maildir ]; then
460 394
         rm -rf /var/lib/tox-bootstrapd/Maildir