From 6d69da50bcc032dd0f47b3be5f63d5f2f83e235f Mon Sep 17 00:00:00 2001 From: Hartmut Bauer Date: Tue, 18 Mar 2025 00:34:44 +0100 Subject: [PATCH] 2nd server, del_dir function --- test.sh | 63 +++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 52 insertions(+), 11 deletions(-) diff --git a/test.sh b/test.sh index ed08755..0f95c43 100755 --- a/test.sh +++ b/test.sh @@ -1,5 +1,8 @@ #!/usr/bin/env bash +HOSTNAME=$(hostname) +DAY=$(date +%u) + RUN_DIR=/var/docker BACKUP_DIR=vol SOURCE=nextcloud @@ -73,6 +76,20 @@ function check_directory() { fi } +# Verzeichnis löschen +# +# Im Fehlerfall wird rc=1 zurückgegeben +# +# $1 - zu löschendes Verzeichnis +# +function delete_dir() { + local dir=$1 + sudo rm -rf "$dir" && return 0 + log ERROR "### could not delete directory $1!" + # return error, so caller can decide what to do + return 1 +} + # Slashes "/" im Pfadnamen durch Dashes "-" ersetzen, so dass der String als Dateiname verwendet werden kann. # # $1 - path @@ -179,19 +196,23 @@ function restore() { function nas_test() { LOG_FILE="/volume1/nfs/Server/tmp/backup.log" - log INFO "*** *** Begin NAS backup (data, media/books, media/music)" - TARGET_DIR="/volume1/nfs/backups/tmp/backup.$(date +%u)" + log INFO "*** *** Begin NAS backup (data, nfs, media/books, media/music)" + TARGET_DIR="/volume1/nfs/backups/tmp/backup.$DAY" EXCLUDE_DIRS=("@eaDir" "Temporary Items" "lost+found") + delete_dir $TARGET_DIR # bei Fehler werden die Dateien hoffentlich überschrieben check_directory $TARGET_DIR # data backup_all_dirs "/volume1/data" "$TARGET_DIR" "${EXCLUDE_DIRS[@]}" + EXCLUDE_DIRS=("@eaDir" "Temporary Items" "lost+found" backups) + # nfs + backup_all_dirs "/volume1/nfs" "$TARGET_DIR" "${EXCLUDE_DIRS[@]}" - TARGET_DIR2="/volume1/nfs/backups/tmp/media" - EXCLUDE_DIRS2=("@eaDir" "Temporary Items" "lost+found" serien tmp video "video.archive") - check_directory $TARGET_DIR2 + TARGET_DIR="/volume1/nfs/backups/tmp/media" + EXCLUDE_DIRS=("@eaDir" "Temporary Items" "lost+found" serien tmp video "video.archive") + check_directory $TARGET_DIR # media/books media/music - backup_all_dirs "/volume1/media" "$TARGET_DIR2" "${EXCLUDE_DIRS2[@]}" + backup_all_dirs "/volume1/media" "$TARGET_DIR" "${EXCLUDE_DIRS[@]}" log INFO "*** End of NAS backuip" } @@ -202,7 +223,8 @@ function nathan_test() { LOG_FILE=/var/docker/tmp/backup.log log INFO "*** *** Begin nathan server backup" - TARGET_DIR=/var/docker/tmp/backup.$(date +%u) + TARGET_DIR=/var/docker/tmp/backup.$DAY + delete_dir $TARGET_DIR check_directory $TARGET_DIR backup_all_dirs "/var" "$TARGET_DIR" docker @@ -212,15 +234,34 @@ function nathan_test() { log INFO "*** End of nathan server backup" } -function test1() { - LOG_FILE=./t1.log - log INFO "error test" +# *** HANILLER Test *** +function hamiller_test() { + LOG_FILE=/var/docker/tmp/backup.log + + log INFO "*** *** Begin hamiller server backup" + TARGET_DIR=/var/docker/tmp/backup.$DAY + delete_dir $TARGET_DIR + check_directory $TARGET_DIR + + backup_all_dirs "/var" "$TARGET_DIR" # docker +# backup_all_dirs "/var/docker" "$TARGET_DIR" vol tmp +# backup_all_dirs "/var/docker/vol" "$TARGET_DIR" + + log INFO "*** End of hamiller server backup" +} + +function test() { + #LOG_FILE=./t1.log + #log INFO "error test" + echo "host: #$1#" } #nas_test #nathan_test +#hamiller_test +#test1 -test1 +test "$HOSTNAME" if [ ! -z $ERROR ]; then log ERROR "*** *** Errors occured during the progem run, see full log for details."