如何在Debian或飞牛系统上配置支持群晖共享的UPS
在现代家庭或小型办公室网络环境中,不间断电源(UPS)是保护设备免受电力中断影响的重要工具。如果你有一台群晖(Synology)NAS,并且通过USB连接了一台UPS,你可能希望其他设备(如运行Debian或飞牛系统的服务器)也能利用群晖共享的UPS状态,实现安全的关机或监控。本文将详细介绍如何在Debian或飞牛系统上配置支持群晖共享的UPS,包括所需工具、安装步骤和配置方法。无论你是Linux新手还是有一定经验的用户,这篇教程都能帮到你!
什么是群晖共享UPS?
群晖NAS支持通过USB连接UPS,并可以将其设置为“网络UPS服务器”。这意味着群晖可以通过网络将UPS的状态(如电量、断电情况)共享给其他设备。其他设备(客户端)可以监控这些状态,并在需要时执行关机等操作。这种方式特别适合多设备共享同一UPS的场景,比如家庭服务器、网络交换机或其他Linux设备。
本文将以Debian为例进行配置说明,因为飞牛系统(Freenas/TrueNAS)在核心功能上与Debian类似,配置方法基本一致,仅需根据具体系统调整路径或命令。
前提条件
在开始配置之前,请确保满足以下条件:
-
群晖NAS已连接UPS并启用网络UPS服务器:
- 在群晖DSM中,进入“控制面板 > 硬件与电源 > UPS”。
- 勾选“启用UPS支持”和“启用网络UPS服务器”。
- 点击“允许的群晖设备”,输入客户端设备的IP地址(例如Debian服务器的IP)。
-
网络环境:
- 群晖NAS和客户端设备在同一局域网内。
- 网络交换机或路由器也最好连接到UPS,以确保断电后网络通信不中断。
-
客户端系统:
- 本文以Debian 12为例,飞牛系统用户可参考类似步骤。
- 确保有root权限或sudo权限。
-
工具需求:
- 需要安装NUT(Network UPS Tools),这是群晖和Linux系统常用的UPS管理工具。
步骤1:在Debian上安装NUT
NUT是一个开源工具,支持与群晖的UPS服务器通信。以下是在Debian上安装NUT的步骤:
-
更新系统包索引:
1
sudo apt update
-
安装NUT:
1
sudo apt install nut
-
验证安装: 检查NUT是否正确安装:
1
nut-upsmon -v
如果显示版本信息,说明安装成功。
对于飞牛系统(TrueNAS),你可能需要通过命令行或插件安装NUT。如果是TrueNAS Core,可以通过pkg install nut
安装;如果是TrueNAS SCALE(基于Debian),则与上述步骤相同。
步骤2:配置NUT以连接群晖UPS服务器
安装完成后,需要配置NUT,使其作为客户端连接到群晖的网络UPS服务器。
-
编辑NUT配置文件: NUT的配置文件通常位于
/etc/nut/
目录下。首先编辑nut.conf
:1
sudo nano /etc/nut/nut.conf
确保以下内容存在:
1
MODE=netclient
-
配置UPS监控: 编辑
upsmon.conf
文件:1
sudo nano /etc/nut/upsmon.conf
添加以下内容,替换
SYNOLOGY_IP
为群晖NAS的实际IP地址:1
MONITOR ups@SYNOLOGY_IP 1 monuser secret slave
ups
:群晖默认的UPS名称。monuser
和secret
:群晖默认的用户名和密码(可在群晖的/usr/syno/etc/ups/upsd.users
中查看,或保持默认)。slave
:表示此设备是UPS的从属客户端。
-
保存并退出: 按
Ctrl+O
保存,然后Ctrl+X
退出。
步骤3:启动并测试NUT服务
配置完成后,启动NUT服务并测试连接:
-
启动NUT客户端服务:
1 2
sudo systemctl start nut-monitor sudo systemctl enable nut-monitor
enable
命令确保服务在系统重启时自动启动。 -
检查状态: 查看NUT是否正常运行:
1
sudo systemctl status nut-monitor
如果状态为
active (running)
,说明服务已启动。 -
测试UPS连接: 使用以下命令检查与群晖UPS服务器的通信:
1
upsc ups@SYNOLOGY_IP
如果成功,你将看到UPS的状态信息,例如电池电量、电源状态等。
步骤4:设置断电关机策略(可选)
为了确保断电时Debian系统能安全关机,可以配置NUT的关机策略。
-
编辑
upsmon.conf
: 再次打开配置文件:1
sudo nano /etc/nut/upsmon.conf
添加或调整以下选项:
1 2 3 4 5
SHUTDOWNCMD "/sbin/shutdown -h now" NOTIFYCMD /usr/sbin/upssched NOTIFYFLAG ONLINE SYSLOG+WALL NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC
SHUTDOWNCMD
:定义关机命令。NOTIFYFLAG
:设置断电或低电量时的通知方式。
-
重启NUT服务:
1
sudo systemctl restart nut-monitor
-
模拟测试: 拔下UPS电源,观察Debian系统是否能在电池电量低时自动关机。
注意事项与常见问题
-
群晖DSM版本兼容性: 本教程基于DSM 7.x测试,早期版本(如DSM 6.x)可能需要调整配置。
-
网络延迟: 如果网络交换机未连接UPS,断电后通信可能中断,导致客户端无法接收状态更新。
-
飞牛系统差异: TrueNAS Core使用FreeBSD内核,配置文件路径可能不同(如
/usr/local/etc/nut/
),但配置逻辑一致。 -
安全性: 默认的
monuser/secret
密码较弱,建议在群晖和客户端上修改为自定义密码,并在两端保持一致。
总结
通过以上步骤,你可以在Debian或飞牛系统上成功配置支持群晖共享的UPS。这不仅能保护你的设备免受断电影响,还能实现多设备协同管理UPS状态。无论是家庭用户还是小型企业,这种方案都简单高效。
如果你在配置过程中遇到问题,欢迎在下方留言!同时,别忘了订阅我的博客,获取更多科技与编程相关的实用教程。
关键词:群晖共享UPS、Debian配置UPS、飞牛系统UPS、网络UPS服务器、NUT安装教程