#!/bin/bash # Email logs of failed e2scrub unit runs when the systemd service fails. recipient="$1" test -z "${recipient}" && exit 0 device="$2" test -z "${device}" && exit 0 hostname="$(hostname -f 2>/dev/null)" test -z "${hostname}" && hostname="${HOSTNAME}" if ! type sendmail > /dev/null 2>&1; then echo "$0: sendmail program not found." exit 1 fi (cat << ENDL To: $1 From: Subject: e2scrub failure on ${device} So sorry, the automatic e2scrub of ${device} on ${hostname} failed. A log of what happened follows: ENDL systemctl status --full --lines 4294967295 "e2scrub@${device}") | sendmail -t -i