先叠几层甲:

该项目的代码难免会有疏忽、bug,仅供参考、学习、交流;除了正常的讨论问题、建议外,还请各位大佬键盘之下给我留点面子……

起初是博主贪便宜买了个杂牌的UPS(以后还是不要贪便宜了)

Screenshot_2024-09-09-15-26-48-422_com.jingdong.a.jpg

虽然屁股后面有USB口,但接到黑群晖上没有任何反应

Snipaste_2024-09-09_15-36-08.png

于是问客服有没有Windows版本的驱动,或者监控软件,但得到的回复是“升级中”,完成时间未通知。

Screenshot_2024-09-09-15-34-28-548_com.jingdong.a.jpg

既然这样,那就只能委屈自己写一个了()

无法直接和UPS通信的话,就需要一个没有连接UPS的参考设备了,例如路由器、联网的洗衣机、插座或者空调。
每隔1分钟ping一次参考设备,如果连续5次ping不通(考虑到路由器设置了定时重启的时间),则判断为停电,程序通过ssh连接到各个主机执行关机命令。

于是便有了这个工具:

image-yjhl.png

监控IP:填写参考设备的IP,最好是静态分配的
列表中可以自由添加设备、调整顺序、以及设置市电停电后要执行的命令,以及延时。
延时的逻辑是指:停电→等待设备1的延时→执行设备1命令→等待设备2延时→执行设备2命令→等待设备3延时......以此类推

保存配置之后,可以点击“测试SSH连接”来测试用户名和密码是否正确。
目前测试可用的系统类型:ubuntu、openwrt、esxi、Windows

日志窗口的日志可以查看程序目录下的log文件夹

{F9DD7B36-C675-4d20-8B93-62ED9ADEE654}.png

测试/预览图片:

IMG_20240907_184604.jpg

IMG_20240907_183122.jpg

IMG_20240907_183133.jpg

IMG_20240907_184009.jpg

项目地址:

https://github.com/Tokiichika/SafeShutdown