如果驱动器脱机(或 USB 端口重新启动),自动发送电子邮件的方法

如果驱动器脱机(或 USB 端口重新启动),自动发送电子邮件的方法

如果 USB 端口重新启动,并且通过扩展,外部驱动器脱机?

去年,我在岳父家里安装了一套新的闭路电视系统,作为额外的奖励,我给他买了一个 Raspberry PI,将其设置为 VPN 和文件服务器,并将摄像机设置为直接将运动记录到某个 NFS我在 PI 的外部驱动器上设置了共享,这样,如果有人有头脑窃取 NVR,那么任何重要的东西都会有两个副本。

但摄像机不断丢失存储空间,需要重新启动才能使存储恢复在线状态。

我认为这是 POE 问题,因为直接从 NVR 供电时摄像机本身有时也会重新启动,但在安装 POE 交换机并稍微更改网络配置后,这种情况就停止了。

不过我今天检查了一下,发现相机再次丢失了辅助存储空间。经过进一步调查,我缩小了时间范围,并检查了 PI 上的系统日志。我发现它遇到了 USB 问题。

USB 1-1.1-端口2:被集线器禁用(EMI?),重新启用...

随后出现了数千条有关驱动器脱机、联机以及摄像机尝试访问 NFS 共享的消息。

我想要的是,如果此事件记录到系统日志文件中,或者只是当其中一个文件系统脱机时,系统会向我发送一封电子邮件,这样我就可以给他打电话,看看他是否正在执行任何特定操作。

它可能只是一个狡猾的 USB 引线或驱动器外壳(我们有一个自供电外壳,以使 PI 不必旋转 3.5 英寸 HDD),所以它甚至可能是 PSU,但我想尝试在购买可能无法解决问题的新 HDD 机箱之前,先确定故障发生时发生的任何情况。

PI 本身由官方 Pi 3 psu 供电。 PI 的外壳是铝制的(我不记得我买的是哪一种,但它是全金属的,可以起到散热器的作用),但在他的研究中,它相当隐藏在显示器后面,所以不太可能移动太多并做空任何东西。

应 K7AAY 的要求进行编辑

Pi 正在运行 Raspbian 9

如果解决方案涉及可以运行脚本的方法,我将修改以下脚本。

#bin/sh
IPADDRESS=$(curl https://wtfismyip.com/text)
if [ "$IPADDRESS" != "$(cat /home/will/scripts/.current_ip)" ]
then
dt=$(date)
echo "Your new IP address as of ${dt} is ${IPADDRESS} \r \r FTB" | mail -s "IvanPI IP address change" **********@gmail.com
echo "$IPADDRESS" >| /home/will/scripts/.current_ip
echo "$dt $IPADDRESS" >> /home/will/scripts/.iphistory
fi

如果发生上述事件,我需要发出的唯一命令是

echo "外部硬盘离线/USB 在 ${dt} \r \r FTB 处重新启动" | mail -s "IvanPI HDD Offline" *************@gmail.com

我只需要知道如果 HDD 脱机/文件系统脱机/USB 端口重新启动,如何触发该命令发生。

这些事件中的任何一个都适合生成电子邮件的触发器,因为它们本质上都是同一件事。

答案1

特拉菲基托监控是相当轻量级的服务,可以监视您的驱动器,如果失败,请检查 USB 端口状态。然后,任何一方都可以邮寄消息。建议您查看他们的功能集,看看您更喜欢哪一个。

相关内容