diff --git a/files/opt/simple-backup/simple-backup.sh b/files/opt/simple-backup/simple-backup.sh index 82ae345711af971c3b1e0fb726ac5e7d5ad1cbe8..d83ba82c1c446fc9e39b6eb441fb506b34ffadf3 100644 --- a/files/opt/simple-backup/simple-backup.sh +++ b/files/opt/simple-backup/simple-backup.sh @@ -25,7 +25,7 @@ nfs_mount_path=$(awk -F= -v section="$section" -v key="$key" ' ' $config_file) if test -z "$nfs_mount_path"; then - echo "No nfs volume path was provided" + logger "Simple-Backup: ERROR Code 1: Missing necessary configuration. No nfs mount path was provided." exit 1 fi @@ -40,7 +40,7 @@ nfs_server=$(awk -F= -v section="$section" -v key="$key" ' ' $config_file) if test -z "$nfs_server"; then - echo "No nfs volume path was provided" + logger "Simple-Backup: ERROR Code 1: Missing necessary configuration. No nfs server ip adress was provided." exit 1 fi @@ -55,7 +55,7 @@ nfs_volume_path=$(awk -F= -v section="$section" -v key="$key" ' ' $config_file) if test -z "$nfs_volume_path"; then - echo "No nfs volume path was provided" + logger "Simple-Backup: ERROR Code 1: Missing necessary configuration. No nfs volume path was provided." exit 1 fi @@ -73,7 +73,7 @@ source_directories=($(awk -F= -v section="$section" -v key="$key" ' ' $config_file)) if test -z "$source_directories"; then - echo "No source directory was provided" + logger "Simple-Backup: ERROR Code 1: Missing necessary configuration. No source directory was provided." exit 1 fi @@ -93,7 +93,7 @@ excludes=($(awk -F= -v section="$section" -v key="$key" ' -##### MOUNTS NFS SHARE ##### +##### MOUNT NFS SHARE ##### if [ ! -d "$nfs_mount_path" ]; then mkdir -p "$nfs_mount_path" @@ -120,12 +120,22 @@ readonly BACKUP_DIR="${nfs_mount_path}/backups/${HOSTNAME}" readonly DATETIME="$(date '+%Y-%m-%d_%H:%M:%S')" readonly BACKUP_PATH="${BACKUP_DIR}/${DATETIME}" readonly LATEST_LINK="${BACKUP_DIR}/latest" +readonly LOG_FILE="${BACKUP_PATH}.log" mkdir -p "${BACKUP_DIR}" rsync_cmd_str="rsync -avR --delete ${source_string} --link-dest ${LATEST_LINK} ${exclude_string} ${BACKUP_PATH}" echo $rsync_cmd_str -$rsync_cmd_str +$rsync_cmd_str &>> "$LOG_FILE" || true +RSYNC_EXIT_CODE=$? + +if [ $RSYNC_EXIT_CODE -eq 0 ]; then + echo "Simple-Backup: INFO Code 0: Rsync completed successfully." &>> "$LOG_FILE" + logger "Simple-Backup: INFO Code 0: Rsync completed successfully." +else + echo "Simple-Backup: ERROR Code $RSYNC_EXIT_CODE: Rsync ended with errors." &>> "$LOG_FILE" + logger "Simple-Backup: ERROR Code $RSYNC_EXIT_CODE: Rsync ended with errors." +fi rm -rf "${LATEST_LINK}" ln -s "${BACKUP_PATH}" "${LATEST_LINK}"