分类:科技 标签:NAS、UPS、开源项目、自动化
家用 UPS(不间断电源)通常只配备一组 USB 接口,只能与单台设备通信。一旦市电断电,直连 USB 的设备可以收到信号自动关机,而局域网内其余的 Windows 电脑、副 NAS 等设备则面临“裸奔”掉电的风险,极易导致文件损坏或存储池异常。
其实,我们可以让 NAS 充当整个局域网的 UPS 总控。通过开启 NAS 内置的 NUT(Network UPS Tools)网络服务,局域网内所有支持 NUT 协议的设备都可以作为客户端读取 UPS 状态,实现断电后的优雅联动关机。
本文将以威联通 NAS 为例,带大家完整走一遍配置流程。
一、威联通 NAS 连接 UPS,搭建 NUT 总控中心
首先,我们需要将 UPS 的 USB 数据线直连威联通 NAS,让其成为局域网的 UPS 总控主机。
1. 硬件接线
- 将威联通 NAS 的电源线插在 UPS 的输出插座上。
- 用 UPS 附带的 USB 数据线,一头接 UPS 主机,另一头插入威联通 NAS 的 USB 接口。
- 提示:家中的交换机、路由器等需要断电保持网络畅通的设备,也应接入 UPS 的供电插座。
2. QTS 后台配置
登录威联通 QTS 后台,依次打开 控制台 -> 硬件 -> UPS:
- 连接方式:选择 USB,勾选“启用UPS支持”,系统会自动识别接入的 UPS 设备。
- 自动关机时间:这是整套时序的核心。威联通作为 NUT 主控,必须是最后关机的设备(例如设置为 5 分钟),其余从属客户端的关机触发条件必须早于此时间。
- 网络 UPS 服务:勾选“启用网络UPS服务器”,并在“允许的IP地址列表”中填入局域网内所有需要接入的设备 IP(如 Windows 电脑和其他 NAS),不在白名单内的设备将被拒绝连接。
- 点击“应用”保存设置。
3. 验证 NUT 服务状态
通过 SSH 工具登录威联通 NAS,输入以下命令验证服务是否正常:
# 列出本机全部 NUT 识别的 UPS 设备
upsc -l 127.0.0.1
# 读取 UPS 完整运行参数
upsc qnapups@127.0.0.1
若能成功打印出 UPS 的电池电量、输入电压、预估剩余续航等实时数据,即代表 NUT 服务端部署完毕。
二、配置其他 NAS 作为 NUT 客户端
如果局域网内还有其他 NAS,可以将其设置为从属客户端,通过网络读取主控 NAS 的 UPS 状态,实现断电同步关机。
以威联通 NAS 为例:
- 进入 QTS 后台,依次打开
控制台->硬件->UPS。 - UPS 连接方式选择
Network UPS slave(网络 UPS 从属)。 - 填入充当总控的 NAS 的 IP 地址。
- 注意:从属客户端的关机等待时间一定要短于主控 NAS,确保自己先安全关机。
若网页端无法正常刷出 UPS 信息,同样可以通过 SSH 登录 NAS 进行测试:
upsc qnapups@192.168.10.70
(注:请将上述 IP 替换为你的总控 NAS 实际地址)
三、Windows 客户端配置自动关机
Windows 系统本身没有原生 NUT 客户端,我们可以借助开源免费的软件 WinNUT-Client 来实现数据读取与自动关机。
1. 基础连接配置
下载并安装 WinNUT-Client,打开软件进入 设置 -> 选项 -> 连接 标签页,填入以下参数:
- NUT 主机:威联通 NAS 内网 IP(例如
192.168.10.70) - NUT 端口:
3493 - UPS 名称:
qnapups - 登录账号/密码:根据服务端配置填写
- 轮询间隔:
5秒
点击“应用”并连接成功后,主界面即可实时查看电池电量、输入电压、负载等数据。
2. 关机策略配置
切换到 关机选项 标签页进行合理配置:
- 电池低于百分比则关机:例如设置
30%。 - 续航时间低于则关机:例如设置
120秒(即剩余 2 分钟时触发)。 - 延时关机(秒):例如设置
60,给手头的工作预留 60 秒手动保存时间。 - 关闭 NUT 的 FSD 信号:严禁勾选。FSD 是 NUT 的强制关机信号,极端低电量时若不响应,会导致直接断电掉电。
3. 开机自启动设置
切换到 其他 标签页,建议勾选最小化到系统托盘及随系统启动。
提示:该软件默认在用户登录 Windows 账户后才会启动。若主机需要 7x24 小时无人值守,建议使用 NSSM 等工具将 WinNUT 部署为 Windows 系统后台服务,避免因重启后无人登录导致断电保护失效。
总结
借助 NUT 网络 UPS 协议,我们仅需一台 UPS 和一个 USB 接口,就能轻松驱动局域网内多台 NAS、Windows 主机协同完成断电保护。这套方案不仅成本低廉,而且扩展性极强,能够有效避免意外断电带来的数据丢失风险。