powerloss恢复后发送通知?

题:

我已经设置我的服务器的BIOS自动恢复断电后的最后一个状态(运行/closures)。

现在,如果系统在powerloss之后恢复,我怎样才能发送自己的电子邮件?

我知道这是可能的,因为我的Synology DiskStation可以做到这一点(我首先得到了这个想法)。 可悲的是我无法逆向工程如何做到这一点。

添加一个RC脚本或等效项。 让它正常关机时触摸文件。 在启动时,请检查文件,如果文件不存在,则发送电子邮件。 例如:

#!/bin/bash SHUTDOWNFILE=/etc/normalshutdown if [ ${1} = "stop" ] then touch "${SHUTDOWNFILE}" elif [ ${1} = "start" ] then if [ ! -e "${SHUTDOWNFILE}" ] then mail -s "Power failure, recovered" [email protected] else rm "${SHUTDOWNFILE}" fi fi 

(您可能需要debugging它,并注意安全性,以避免意外地让用户创build文件与本文冲突)

只需在/etc/rc.local添加如下内容:

 echo "Subject: `/bin/hostname` has booted @ `date '+%Y/%m/%d %H:%M:%S'`"|/usr/lib/sendmail -i [email protected] 

每次启动时都会发送电子邮件,而不是在断电后。 如果您只想在断电后收到电子邮件,则需要更多逻辑。 就我个人而言,我喜欢知道我的一台服务器何时重启 – 特别是如果不是有意重启。

您需要系统硬件上的内部IPMI(可通过电子邮件报告powerloss故障和硬件故障)

其次,我认为最重要的是检查系统健康的外部系统。

Nagios和仙人掌都提供这些function..
Cacti实际上是两者中较简单的一个(Nagios可以相当复杂的维护)使用SNMP或者简单的ping(也可以是其他服务)

基本上这个工具允许你轮询每个(确定的)分钟..对于一个响应..在(确定的)失败之后,它发送给你一个电子邮件。

这是一个典型的系统pipe理员通知工具集