• 游啊游
  • 信仰
  • 原点
  • 清明
  • 凡人
  • 雨一直下-古筝
  • 你的样子
  • 沧海飞尘
  • Sofía
  • Suddenly
  • Traveling Light
  • 城南花已开
Oo笑容太甜oO/

UPS接群晖,通飞牛,一主多从实现断电互通


一、UPS接主群晖

最近买了个施耐德UPS,型号Back-UPS BK650M2-CH,给我的黑群晖接上了。
我的主群晖ip192.168.1.22

UPS类型选择USB UPS
Synology NAS系统进入待机模式之前的时间我设置了15秒,具体根据需要设置。
“当系统进入待机模式时关闭 UPS”这里一定要勾上,不然断电了,群晖不关机,只进入待机模式,unmount硬盘,系统仍然通电直到UPS电量耗尽。

允许的Synology NAS,把二奶群晖和飞牛的ip填上。
UPS接群晖,通飞牛,一主多从实现断电互通

二、UPS通二奶群晖

但是UPS只有一根线一个口,其他群晖只能连接开了“网络UPS服务器”的主群晖
所以,主群晖勾上“启用网络UPS服务器”

二奶群晖UPS类型选择Synology 不断电系统服务器
服务器地址填主群晖的ip
这样能看到主群晖连接的UPS信息,就算OK了
UPS接群晖,通飞牛,一主多从实现断电互通

三、UPS通飞牛

下载Network UPS Tool for FnOS应用,地址https://github.com/WendellzZ/ups-monitor
然后在应用中心手动安装好
打开“网络UPS监控”应用,在“配置”-“NUT服务”界面,配置服务器
填写主群晖ip地址,端口默认3493
UPS名称填“ups”,群晖的UPS默认名称就是 ups
默认用户和密码为 monuser ,secret
测试连接成功后,保持设置
当然,可在通知设置中启用邮件通知。
UPS接群晖,通飞牛,一主多从实现断电互通

保存后可以看到UPS相关信息
UPS接群晖,通飞牛,一主多从实现断电互通
UPS接群晖,通飞牛,一主多从实现断电互通

四、飞牛命令行模式下设置

与以上应用套件法互斥,否则会提示
Fatal error: A previous upsmon instance is already running!
Either stop the previous instance first, or use the 'reload' command.

cd /etc/nut/ (群晖则为 /etc/ups/)

sudo nano /etc/nut/nut.conf

将模式设置为 netclient
MODE=netclient

MODE 可选值如下,可以了解一下。

值含义说明
standalone本机使用本地连接的 UPS,所有组件(upsdrv, upsd, upsmon)都在本机运行。用于 单机本地 UPS 管理。
netserver本机连接本地 UPS,运行 upsd,允许其他网络客户端通过 NUT 协议连接监控。常用于群晖这类做UPS 主控服务器的场景。
netclient本机不连接 UPS,只通过网络连接远程 UPS 主机(运行 upsd)。本机只运行 upsmon。这是从机最常用的模式。

编辑监控配置:
sudo nano /etc/nut/upsmon.conf
添加以下行:
MONITOR ups@192.168.1.22 1 monuser secret secondary

参数含义说明
MONITOR这是固定关键字,表示这一行是 UPS 监视配置。
systemUPS 的名称和主机地址:这里表示远程主机 192.168.1.22 上运行的名为 ups 的 UPS 实例。
powervalue表示这个 UPS 的"电源冗余级别" —— 是我们依赖的几台 UPS 中的一台。如果你有多个 UPS,设置这个数字用于 MINSUPPLIES 的判断(系统至少需要多少电源供应才认为是安全的)。通常设为 1 即可。
username用户名,用于连接远程 upsd 服务。这个用户必须在远程主机的 /etc/nut/upsd.users 中定义,并具有MONITOR权限。
passwordmonuser 的密码,对应 upsd.users 中配置的密码。
“primary”/
“secondary”
角色类型:secondary 表示这是一个从属客户端,不会主动发起关机,只会等待主控机通知或监听事件自行关机。常见角色是 primary(主控)和 secondary(从属)。

测试配置是否正确。

可以使用DEBUG模式启动运行一下,看看是否能正常工作。
sudo /usr/sbin/upsmon -D
如果正常,可以看到类似下面输出

Network UPS Tools upsmon 2.8.2
0.000000 fopen /run/nut/upsmon.pid: No such file or directory
0.000026 Could not find PID file to see if previous upsmon instance is already running!
0.000080 UPS: ups@192.168.1.22 (secondary) (power value 1)
0.000139 Using power down flag file /etc/killpower
0.000267 [D1] debug level is '1'
0.000615 [D1] Saving PID 1141184 into /run/nut/upsmon.pid
0.001801 [D1] Succeeded to become_user(nut): now UID=57 GID=57
Init SSL without certificate database
0.020004 upsnotify: failed to notify about state 2: no notification tech defined, will not spam more about it
0.020009 [D1] Trying to connect to UPS [ups@192.168.1.22]
0.021112 [D1] Logged into UPS ups@192.168.1.22

再使用 upsc 指令,查看一下 UPS 状态。
upsc ups@192.168.1.22
会返回 UPS 的电量,版本等等信息。
Init SSL without certificate database
battery.charge: 100
battery.charge.low: 91
battery.mfr.date: 2001/01/01
battery.runtime: 3213
battery.runtime.low: 120
battery.type: PbAc
battery.voltage: 13.5
battery.voltage.nominal: 12.0
device.mfr: American Power Conversion
device.model: Back-UPS BK650M2-CH
device.serial: 9B2629A20278
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 5
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.version: DSM7-1-1-42930-workplus-version2-repack-42930-220712
driver.version.data: APC HID 0.96
driver.version.internal: 0.41
input.sensitivity: low
input.transfer.high: 278
input.transfer.low: 160
input.voltage: 224.0
input.voltage.nominal: 220
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.load: 10
ups.mfr: American Power Conversion
ups.mfr.date: 2026/07/15
ups.model: Back-UPS BK650M2-CH
ups.productid: 0002
ups.realpower.nominal: 390
ups.serial: 9B2629A20278
ups.status: OL
ups.test.result: Done and passed
ups.timer.reboot: 0
ups.timer.shutdown: -1
ups.vendorid: 051d

启动并启用 NUT 服务:

sudo systemctl enable nut-monitor
sudo systemctl start nut-monitor

暂无评论