diff --git a/miyagi-backup.sh b/miyagi-backup.sh index 2f62ec9..5605578 100644 --- a/miyagi-backup.sh +++ b/miyagi-backup.sh @@ -1,5 +1,5 @@ #!/bin/bash -set -euo pipefail +set -uo pipefail IFS=$'\n\t' PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" @@ -35,6 +35,11 @@ if [[ -n "${CONFIG_FILE:-}" ]]; then exit 1 fi +if ! bash -n "$CONFIG_FILE"; then + log "Syntaxfehler in Konfigurationsdatei $CONFIG_FILE" + exit 1 +fi + source "$CONFIG_FILE" # ========================== @@ -65,7 +70,8 @@ if [[ -n "${CONFIG_FILE:-}" ]]; then MISSING_VARS=() for var in "${REQUIRED_VARS[@]}"; do - if [[ -z "${!var:-}" ]]; then + #if [[ -z "${!var:-}" ]]; then + if ! declare -p "$var" &>/dev/null || [[ -z "${!var}" ]]; then MISSING_VARS+=("$var") fi done @@ -328,7 +334,14 @@ main() { run_maintenance run_scrub_stop_local run_scrub_stop_src - run_pbs_backup + + if [[ "${BACKUPSERVER,,}" == "yes" ]]; then + log "BACKUPSERVER ist aktiviert, führe Backup aus..." + run_pbs_backup + else + log "BACKUPSERVER ist nicht aktiviert (BACKUPSERVER=$BACKUPSERVER), überspringe Backup." + fi + run_remote_updates run_updates shutdown_if_requested