ubuntu 22.04 家庭服务器用上APC UPS 电源 BK650M2-CH

家里的服务器里面有昂贵的硬盘,硬盘上有无价的家庭照片,五一的时候回老家过节,拉电闸的时拉错了开关,把服务器的电源给断了,相当于自己制造了一次停电,当时反应过来有点后怕,想来想去还是得投资一个 UPS 才能安心一些。

"APC-BK650M-CH"

趁这次 618 斥巨资京东购入一台 施耐德 APC BK650M2-CHUPS(不间断电源)。为什么选它,因为比较简单,配合 apcupsd 使用起来很方便,对于普通家庭用户也完全够用,如果是在群晖或者支持 UPS 的主流 NAS 上使用就更方便了,即插即用。

下面记录一下如何在 Ubuntu 22.04 上使用这台 UPS

开启 UPS 并连接到主机

UPS 电源线连接市电并开机,把服务器关机,服务器主机电源线插到 UPS 的那些供电插口上。把随 UPS 一起附赠的信号线网线头查到 UPS 的信号输出口,USB 头插到主机后面的 USB 上。

服务器开机。

使用命令 lsusb 确认服务器上已经识别到 UPS了。

lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

我的显示是这样的,每个机器的显示可能稍有差别。

安装 apcupsd

sudo apt install apcupsd

备份默认配置

cp /etc/apcupsd/apcupsd.conf /etc/apcupsd/apcupsd.conf.bak

编辑配置文件 /etc/apcupsd/apcupsd.conf

相关配置的解释可以参考配置文件内的说明,这里说几个主要的参数:

# 连接线材:USB
UPSCABLE usb

# 连接方式:USB
UPSTYPE usb

# 串口信息,这个需要注释或者配置为置空
# DEVICE /dev/ttyS0

# 停电后,电池开始供电多少秒后,开始关闭系统。
TIMEOUT 30

# 电池供电多少秒后,关闭 UPS。这里设置为 0 禁用,担心主机没有完全关机,ups 就主动断电了
KILLDELAY 0

# 停电后使用电池供电时,电池电量剩余小于等于 30% 时,执行关闭系统操作
BATTERYLEVEL 30

# 停电后使用电池供电时,电池电量供电剩余时间小于 10 分钟时,执行关闭系统操作
MINUTES 10

# 从检测到电源故障到 apcupsd 对事件做出反应的秒数
ONBATTERYDELAY 6

保存配置文件。

apcupsd 服务重启,启动开启自启:

sudo systemctl restart apcupsd
sudo systemctl status apcupsd
sudo systemctl enable apcupsd

使用 apcaccess 确认服务运行情况,部分内容打码了。

➜  ~ apcaccess
APC      : 001,035,****
DATE     : 2025-06-10 22:18:15 +0800
HOSTNAME : 8500t
VERSION  : 3.14.14 (31 May 2016) debian
UPSNAME  : APCUPS01
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2025-06-10 22:17:39 +0800
MODEL    : Back-UPS BK650M2_CH
STATUS   : ONLINE
LINEV    : 230.0 Volts
LOADPCT  : 0.0 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 60.3 Minutes
MBATTCHG : 30 Percent
MINTIMEL : 10 Minutes
MAXTIME  : 30 Seconds
SENSE    : Low
LOTRANS  : 160.0 Volts
HITRANS  : 278.0 Volts
ALARMDEL : 30 Seconds
BATTV    : 13.5 Volts
LASTXFER : No transfers since turnon
NUMXFERS : 0
TONBATT  : 0 Seconds
CUMONBATT: 0 Seconds
XOFFBATT : N/A
SELFTEST : OK
STATFLAG : 0x05000008
SERIALNO : 9B25********
BATTDATE : 2001-01-01
NOMINV   : 220 Volts
NOMBATTV : 12.0 Volts
NOMPOWER : 390 Watts
END APC  : 2025-06-10 22:18:32 +0800

注意看状态 STATUS : ONLINE,说明当前市电正常,负载百分比:LOADPCT

断电测试

确认连接和状态都没问题的情况下,拔掉 UPS 的电源线,正常情况下,服务器主机并不会马上关机,而是等待一会儿后(时间长短取决于上面的配置参数)会接收到 UPS 的关机信号,并且终端上可以看到一些提示信息,大致意思是 apcupsd 检测到断电,广播信息,然后关机。

特别注意:在主机关机后,插上 UPS 市电电源,等待 UPS 切换市电完成正常供电(电源灯绿色常亮)再打开主机,因为 UPS 从电池切换到市电时是会断电的。

在主机关机前,运行 apcaccess 可以看到 STATUS : ONBATT 表示当前是由电池供电。

APC      : 001,036,****
DATE     : 2025-06-10 22:44:24 +0800
HOSTNAME : 8500t
VERSION  : 3.14.14 (31 May 2016) debian
UPSNAME  : APCUPS01
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2025-06-10 22:25:17 +0800
MODEL    : Back-UPS BK650M2_CH
STATUS   : ONBATT
LINEV    : 0.0 Volts
LOADPCT  : 4.0 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 59.8 Minutes
MBATTCHG : 30 Percent
MINTIMEL : 10 Minutes
MAXTIME  : 30 Seconds
SENSE    : Low
LOTRANS  : 160.0 Volts
HITRANS  : 278.0 Volts
ALARMDEL : 30 Seconds
BATTV    : 12.7 Volts
LASTXFER : Low line voltage
NUMXFERS : 1
XONBATT  : 2025-06-10 22:43:53 +0800
TONBATT  : 33 Seconds
CUMONBATT: 33 Seconds
XOFFBATT : N/A
SELFTEST : OK
STATFLAG : 0x05060010
SERIALNO : 9B25********
BATTDATE : 2001-01-01
NOMINV   : 220 Volts
NOMBATTV : 12.0 Volts
NOMPOWER : 390 Watts
END APC  : 2025-06-10 22:44:26 +0800

至此,这台 APC BK650M2-CHUPS 配合 Ubuntu 单机使用已经配置好了,其实这种 UPS 可以同时支持更多设备自动关机,感兴趣的可以研究一下。

标题:ubuntu 22.04 家庭服务器用上APC UPS 电源 BK650M2-CH

原文链接:https://beltxman.com/4560.html

若无特殊说明本站内容为 行星带 原创,未经同意请勿转载。

发表评论

您的电子邮箱地址不会被公开。

Scroll to top