You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
822 B
39 lines
822 B
7 months ago
|
#!/bin/bash
|
||
|
|
||
|
# Email logs of failed e2scrub unit runs when the systemd service fails.
|
||
|
|
||
|
device="$1"
|
||
|
test -z "${device}" && exit 0
|
||
|
|
||
|
if ! type sendmail > /dev/null 2>&1; then
|
||
|
echo "$0: sendmail program not found."
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
if test -f /etc/e2scrub.conf ; then
|
||
|
. /etc/e2scrub.conf
|
||
|
fi
|
||
|
|
||
|
hostname="$(hostname -f 2>/dev/null)"
|
||
|
test -z "${hostname}" && hostname="${HOSTNAME}"
|
||
|
service_name="e2scrub@$(systemd-escape ${device})"
|
||
|
|
||
|
if test -z "${recipient}" ; then
|
||
|
recipient="root"
|
||
|
fi
|
||
|
|
||
|
if test -z "${sender}" ; then
|
||
|
sender="<e2scrub@${hostname}>"
|
||
|
fi
|
||
|
|
||
|
(cat << ENDL
|
||
|
To: ${recipient}
|
||
|
From: ${sender}
|
||
|
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 "${service_name}") | sendmail -t -i
|