目录
起因
配置了一台All in One主机,系统是装的PVE,一个linux的虚拟机。里面装了openwrt软路由,还有OMV这个NAS系统。为了防止数据丢失,最好是配置一台UPS来保护数据,毕竟数据无价。于是买了一台山特的TGBOX-850。由于山特官方的winpower不支持linux系统,只能用NUT来对接。
安装NUT
apt update
apt install nut
NUT简介
nut 主要包含三个核心服务:
- nut-driver: 这个服务负责通过特定放驱动来与 UPS 进行通信
- nut-server: 该服务利用 nut-dirver 沟通 UPS, 并将 UPS 状态通过网络服务发布
- nut-monitor(nut-client): 该服务连接 nut-server, 根据 UPS 状态做出特定响应
nut-client
┌─────────────┐ ┌────────────┐ nut.conf 只配置运行模式
┌──── │ nut-monitor │ ───────────────► │ nut-server │ upsd.*
│ └─────────────┘ └────────────┘
│
│ │
│ │
▼ ▼
┌─────────────┐ ┌────────────┐
│ upssched │ │ nut-driver │ ups.conf
└─────────────┘ └────────────┘
│ │
│ │
│ │
▼ ▼
┌────────────────┐ ┌─────────────┐
│ user scripts │ │ UPS(HW) │
└────────────────┘ └─────────────┘
从上图可以看出,nut是基于C/S的设计,可以有多个client,对应这ups供电的多个设备,不过我这里只有1个设备需要用保护,就是我的AIO主机,其它多设备的情况请以此类推。
nut的默认配置文件位于 /etc/nut 目录,后面提及的配置文件没有写完整路径的话,都在该目录下
配置
首先将ups上电,并把usb线连上被保护的设备,我这里是pve的机子。首先确认驱动是否正常:
root@VM:~# lsusb
Bus 004 Device 002: ID 8087:8002 Intel Corp. 8 channel internal hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:800a Intel Corp. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 002: ID 18f8:0f99 [Maxxter] Optical gaming mouse
Bus 002 Device 004: ID 0463:ffff MGE UPS Systems UPS
Bus 002 Device 003: ID 24ae:4005 Shenzhen Rapoo Technology Co., Ltd. Rapoo Gaming Keyboard
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
使用 lsusb 命令可以