找回密码
 立即注册

PVE 雷迪斯UPS断电自动关机

环境:
PVE8.2
LADIS雷迪司的UPS型号H1000M(理论上带usb接口的都可以实现)


开始:
1.Ups用usb连接线接入pve机器的usb接口
QQ20241125-084407.png

Cypress Semiconductor USB to Serial
这个是usb接口通了的提示
2.安装UNT
  1. apt update
  2. apt install nut nut-client nut-server nut-cgi
复制代码


安装成功后 查看ups信息
  1. nut-scanner -U
复制代码

QQ20241125-084435.png

3.ups配置
  1. nano /etc/nut/ups.conf
复制代码


填入nut-scanner -U 获取到的信息


  1. maxretry = 3
  2. [nutdev1]
  3.         driver = "nutdrv_qx"
  4.         port = "auto"
  5.         vendorid = "xxx"
  6.         productid = "xxx"
  7.         bus = "001"
复制代码


4.配置监控设置
  1. nano /etc/nut/upsmon.conf
复制代码

文件最后面填入
  1. RUN_AS_USER root
  2. MONITOR nutdev1@localhost 1 monuser secret master
复制代码


5.配置upsd
  1. nano /etc/nut/upsd.conf
复制代码

修改监听端口,文件最后部加入
  1. #listen all interface
  2. LISTEN 0.0.0.0 3493
复制代码


6.配置nut
  1. nano /etc/nut/nut.conf
复制代码

修改MODE
  1. MODE=netserver
复制代码


7.配置nut用户名,用于其他客户端连接
  1. nano /etc/nut/upsd.users
复制代码
  1. [monuser]
  2.   password = xmspace.net
  3.   upsmon master
复制代码


8.重启服务
  1. service nut-server restart
  2. service nut-client restart
  3. systemctl restart nut-monitor
  4. upsdrvctl stop
  5. upsdrvctl start
复制代码


9.配置网页版监控界面
  1. nano /etc/nut/hosts.conf
复制代码

底部加入
  1. MONITOR nutdev1@localhost "LADS H1000M 1000VA 600W UPS"
复制代码


10.配置cgi安全
  1. a2enmod cgi
  2. systemctl restart apache2
复制代码
  1. nano /etc/nut/upsset.conf
复制代码

最后面添加
  1. I_HAVE_SECURED_MY_CGI_DIRECTORY
复制代码

访问http://ip/cgi-bin/nut/upsstats.cgi 可查看ups状态
QQ20241125-090108.png QQ20241125-090119.png

11.配置关机脚本 nano /etc/nut/upssched.conf

修改带有CMDSCRIPT 这句这行

  1. CMDSCRIPT /etc/nut/upssched-cmd #编写此脚本设置
  2. PIPEFN /etc/nut/upssched.pipe
  3. LOCKFN /etc/nut/upssched.lock

  4. AT ONBATT * START-TIMER power-off 60
  5. AT ONLINE * CANCEL-TIMER power-off
  6. AT ONLINE * EXECUTE power-on
复制代码


说明:使用ups电源后60秒后关机

/etc/nut/upssched-cmd 内容如下
  1. #!/bin/sh
  2. case $1 in
  3.        onbatt)
  4.           logger -t upssched-cmd "UPS running on battery"
  5.                   # do somethings ,e.g.send email \ wechat
  6.           ;;
  7.        earlyshutdown)
  8.           logger -t upssched-cmd "UPS on battery too long, early shutdown"
  9.           /usr/sbin/upsmon -c fsd
  10.           ;;
  11.        shutdowncritical)
  12.           logger -t upssched-cmd "UPS on battery critical, forced shutdown"
  13.           /usr/sbin/upsmon -c fsd
  14.           ;;
  15.        upsgone)
  16.           logger -t upssched-cmd "UPS has been gone too long, can't reach"
  17.           ;;
  18.        *)
  19.           logger -t upssched-cmd "Unrecognized command: $1"
  20.           ;;
  21. esac
复制代码

12.再次重启服务生效

  1. service nut-server restart
  2. service nut-client restart
  3. systemctl restart nut-monitor
  4. upsdrvctl stop
  5. upsdrvctl start
复制代码
无限星辰工作室  好集导航 Discuz全集下载  星辰站长网  集热爱361  一品文学  手机小游戏合集   海外空间网 星辰api  星辰支付二维码管理平台 阿里云服务器 腾讯云服务器
服务Discuz!建站|DiscuzQ配置|二开|小程序|APP|搬家|挂马清理|防护|Win/Linux环境搭建|优化|运维|
服务理念:专业 诚信 友好QQ842062626 服务项目 Q群315524225

发表于 2024-11-25 01:25:23 | 显示全部楼层 |阅读模式

回复 | 使用道具 举报

该帖共收到 0 条回复!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

美图秀

    • PVE 雷迪斯UPS断电自动关机
    • Flask 正确使用pyinstaller 进行exe和二进
    • Redis 数据库导出为json解决方案之一
    • Discuz!x 导航浮动跟随修改方法
    • Discuz!x Diy帖子本地/远程无法调用图片附
快速回复 返回顶部 返回列表