diff --git a/monitor_backup_dir.sh b/monitor_backup_dir.sh index f6bfb4d..579d4ab 100644 --- a/monitor_backup_dir.sh +++ b/monitor_backup_dir.sh @@ -1,14 +1,15 @@ +#!/usr/bin/bash + target_dir=/var/borg hash_dir=/var/hashes -mail_to="xxx@xxxx.xxx" +mail_to="xxxxx@xxxx.xxx" find ${target_dir}/* -maxdepth 0 -type d | while read line; do host=$(echo "$line" | awk -F" +|/" '{print $NF}') if [[ ! $host =~ ^(lost\+found)$ ]]; then hash=$(mtree -cxp "$line" | grep -E -- ^\[^\#] | sha256sum) if test -f "${hash_dir}/$host"; then - difference=$(diff ${hash_dir}/$host <(echo "$hash")) - if [ "$difference" == "" ]; then + if [ "$hash" == "$(head -c99 < "${hash_dir}/${host}")" ]; then mail_body="The host ${host} was not backed up since the last check. Please forward this mail to the owner of the affected system." echo "$mail_body" | mail -s "${host} not backed up!" "$mail_to" fi @@ -18,4 +19,4 @@ find ${target_dir}/* -maxdepth 0 -type d | while read line; do fi echo "$hash" > "${hash_dir}/$host" fi -done +done \ No newline at end of file