空空裤兜 空空裤兜
  • 首页
  • 分类目录
    • 博客建设
    • 兜兜转转
    • 每月一帖
    • 技术存档
  • 留言
  • 豆瓣
  • 人气文章排行榜
  • 热门标签
  • 博客大事记
  • 开往
首页 › 技术存档 › PVE和NAS共享一台UPS停电自动关机

PVE和NAS共享一台UPS停电自动关机

空空裤兜
6 月前

公司宿舍电力不稳定,老是闪断,担心近五万小时的硬盘挂掉,开始折腾PVE和NAS共用一台UPS。

设备:1、蜗牛星际黑群晖;2、PVE;3、山特 TG BOX UPS

连接:UPS的USB线接PVE,使用NUT监控触发自动关机。

配置:

1、安装NUT

sudo apt install nut nut-client nut-server

2、扫描UPS

ups-scanner -U

扫描结果如图:

PVE和NAS共享一台UPS停电自动关机-空空裤兜

3、将扫描结果复制,粘贴在/etc/nut/ups.conf中(后续操作文件都在/etc/nut文件夹中),为了黑群能连上,需要修改中括号的内容为UPS。

[ups]
        driver = "usbhid-ups"
        port = "auto"
        vendorid = "0463"
        productid = "FFFF"
        product = "SANTAK TG-BOX"
        serial = "Blank"
        vendor = "EATON"
        bus = "003"
        ignorelb
        override.battery.charge.low = 80
        override.battery.runtime.low = -1

4、装载驱动程序

upsdrvctl start

如图,最后一句不影响使用。

PVE和NAS共享一台UPS停电自动关机-空空裤兜

5、设置监听,修改upsd.conf文件,最后一行添加LISTEN 0.0.0.0 3493

6、修改nut.conf,因为使用PVE作为服务器,所以MODE=netserver

7、修改upsd.users配置用户,黑裙需要连接,用户名和密码必须为monuser和secret

[monuser]
    password = secret
    actions = SET FSD
    instcmds = ALL
    upsmon master

8、修改upsmon.conf,配置关机监控

RUN_AS_USER root
MONITOR ups@10.0.0.254:3493 1 monuser secret master
SHUTDOWNCMD "/sbin/shutdown -h +0"
NOTIFYMSG ONLINE    "UPS %s on line power"
NOTIFYMSG ONBATT    "UPS %s on battery"
NOTIFYMSG LOWBATT    "UPS %s battery is low"
NOTIFYMSG FSD        "UPS %s: forced shutdown in progress"
NOTIFYFLAG ONLINE       SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT       SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT      SYSLOG+WALL+EXEC

9、编写配置文件upssched.conf,使用shutdown,很多教程里的power_off不起作用。

MDSCRIPT /etc/nut/upssched-cmd #编写此脚本设置
PIPEFN /etc/nut/upssched.pipe
LOCKFN /etc/nut/upssched.lock

# 断电使用电池开始计时800秒,计时后,执行upssched-cmd脚本,带shutdown_all参数
AT ONBATT * START-TIMER shutdown_all 800
# 来电后,停止shutdown_all计时
AT ONLINE * CANCEL-TIMER shutdown_all
# 来电后,执行脚本,带start_all参数
AT ONLINE * EXECUTE start_all
# 低电量,执行脚本,带shutdown_self参数
AT LOWBATT * EXECUTE shutdown_self

10、编写执行脚本upssched-cmd,需要自己创建文件

#! /bin/sh

case $1 in
        shutdown_self)
                #关闭所有
                upsmon -c fsd
                ;;
        shutdown_all)
                pvesh create /nodes/pve/qemu/100/status/stop
                pvesh create /nodes/pve/qemu/102/status/stop
                pvesh create /nodes/pve/qemu/103/status/stop
                ;;
        start_all)
                #开启所有
                pvesh create /nodes/pve/qemu/100/status/start
                pvesh create /nodes/pve/qemu/103/status/start
                pvesh create /nodes/pve/qemu/102/status/start
                ;;
        *)
                logger -t upssched-cmd "Unrecognized command: $1"
                ;;
esac

11、重启服务

systemctl restart nut-server
systemctl restart nut-monitor

完工,可以尝试断电测试了。

2
13
宝塔无法启动fail2ban解决方法
上一篇

评论 (13)

取消
  • obaby

    有个 ups 的确能撑一会儿。

    6 月前 回复
    • 空空裤兜

      @obaby 主要怕年老的机械硬盘突然挂掉,也是好几百块的资产呢

      6 月前 回复
  • acevs

    mark~
    另外群晖通过ping路由也可以实现自动关机

    6 月前 回复
    • 空空裤兜

      @acevs ping路由的脚本我这没实现,所以就搞了共享的

      6 月前 回复
  • 网友小宋

    再等等,我估计也得上ups

    6 月前 回复
    • 空空裤兜

      @网友小宋 我是频繁断电,公司附近电路负荷太高,电力公司走流程一时半会也修不了

      6 月前 回复
  • 老张博客

    一般UPS可以供多久的电呀?还是在二十年前用过,是给电脑用的,那个时候每天都会断电,保护电脑用的。

    6 月前 回复
    • 空空裤兜

      @老张博客 我的是一个N100主机加蜗牛星际,可以待机半小时

      6 月前 回复
  • Huo

    宿舍里 UPS 的风扇声音不会影响休息吗?
    经常性的断电的确很恼火,也没办法!

    5 月前 回复
    • 空空裤兜

      @Huo 能接受,主要还是对吵闹声不是很敏感

      5 月前 回复
  • 部落志

    24年因为物业原因断过一次电,马上就来电了。这个概率UPS没啥用了

    5 月前 回复
    • 空空裤兜

      @部落志 小黄鱼搞得硬盘都很老了,突然的断电可能就报废了

      5 月前 回复
  • zeruns

    还能这么玩,学到了

    5 月前 回复

猜你喜欢

  • 宝塔无法启动fail2ban解决方法
  • 自建随机图片API
  • 使用msmtp进行邮件通知
  • 源码搭建tiny tinyrss订阅系统
  • Gravatar头像缓存本地化

空空裤兜

和过去过不去,跟未来合不来。
254
文章
1K
评论
397
获赞

随缘推荐

2023-11
2018-08
2019-03 成都行
鼠标点击特效tunneler
一次成功就够了

2020-05

15
2020 / 06

专题展示

一语惊醒植物人(25)
12 年前
PVE和NAS共享一台UPS停电自动关机
6 月前
新年快乐
12 年前
搬家到MC
8 年前
教师如何听课评课
15 年前
Copyright © 2010-2025 空空裤兜. Designed by nicetheme.
  • 首页
  • 分类目录
    • 博客建设
    • 兜兜转转
    • 每月一帖
    • 技术存档
  • 留言
  • 豆瓣
  • 人气文章排行榜
  • 热门标签
  • 博客大事记
  • 开往