Debian10: 安装nut服务器(UPS)

UPS说明:
UPS的作用就不必讲了,我选择是SANTAKTGBOX-850,规格为 850VA/510W,可以满足所需,关键是Debian10自带了驱动可以支持,免去安装驱动,将UPS通过USB线连接服务器即可,如下图所示:

注1:官方未说明支持Linux系统,实际是支持的。 
注2:其中只有一排插座提供UPS供电,另一排只起防雷保护作用,注意看说明书。

Linux nut说明:
nut(Network UPS tools),是一个Linux下的网络版的UPS工具,采用C/S架构,服务器端连接UPS设备,客户端通过网络连接服务器端接收UPS相关信息,更多了解可以浏览nut工具的官网:
https://networkupstools.org/

第1步:安装nut相关服务:

#安装nut驱动、服务器端、客户端和服务器端WEB服务
root@server:~# apt-get install nut nut-server nut-client nut-cgi
... ...#列出nut目录下的文件
root@server:~# ls /etc/nut
hosts.conf  nut.conf  ups.conf	upsd.conf  upsd.users  upsmon.conf  upssched.conf  upsset.conf	upsstats.html  upsstats-single.html

nut的配置文件比较多,可以做个分类,以便理解:
驱动相关配置文件(nut-driver):ups.conf
服务器端配置文件(nut-server):nut.conf, upsd.conf, upsd.users, upssched.conf
服务器端WEB支持(nut-cgi):hosts.conf, upsset.conf
客户端的配置文件(nut-client):upsmon.conf

第2步:驱动配置

#打开ups.conf配置文件,在文件尾添加内容
root@server:~# vi /etc/nut/ups.conf
root@server:~# cat /etc/nut/ups.conf
...
[tgbox850]driver=usbhid-upsport=autovendorid=0463desc='SANTAK TGBOX-850 UPS"pollinterval=1override.battery.charge.low=40
root@server:~# 

其中“override.battery.charge.low = 40” 表示ups电量降到40%的时候触发低电量报警,默认值为20。低电量报警是UPS重要的信息,多数情况下,作为服务器关机操作的触发条件。

第3步:服务器端配置

#修改运行模式
root@server:~# vi /etc/nut/nut.conf
root@server:~# cat /etc/nut/nut.conf
... ...
MODE=netserver#修改网络监听配置
root@server:~# vi /etc/nut/upsd.conf
root@server:~# cat /etc/nut/upsd.conf
... ...
LISTEN 0.0.0.0 3493#创建客户端连接时所需用户名和密码
root@server:~# vi /etc/nut/upds.users
root@server:~# cat /etc/nut/upds.users
... ...
[nutuser]password = nutpasswdupsmon master#配置WEB(CGI)服务(nutuser和nutpasswd为upds.users文件添加的用户和密码)
root@server:~# vi /etc/nut/hosts.conf
root@server:~# cat /etc/nut/hosts.conf
... ...
MONITOR tgbox850@localhost 1 nutuser nutpasswd master#确认CGI目录安全性
root@server:~# vi /etc/nut/upsset.conf
root@server:~# cat /etc/nut/upsset.conf
... ...
I_HAVE_SECURED_MY_CGI_DIRECTORY#重新拔插一下UPS的USB线,然后重启相关服务,执行后若未返回到命令提示状态,Ctrl + C即可。
root@server:~# service nut-driver restart
root@server:~# service nut-server restart
root@server:~# service nut-monitor restart#查看服务是否正常启动
root@server:~# lsof -i:3493
upsd    12413  nut    4u  IPv4 185568      0t0  TCP *:nut (LISTEN)
root@server:~#

第4步:配置WEB服务(CGI)

root@server:~# ls /usr/share/nut
cmdvartab  driver.list	www#修改apache2.conf文件,添加内容
root@server:~# vi /etc/apache2/apache2.conf
root@server:~# cat /etc/apache2/apache2.conf
... ...
Alias /nut /usr/share/nut/www
<Directory /usr/share/nut/www>Options +SymLinksIfOwnerMatchAllowOverride AllRequire all granted
</Directory>
... ...#确认apache2使能CGI支持
root@server:~# a2enmod cgi 
[Sat Aug 19 10:22:33.100704 2023] [so:warn] [pid 12757] AH01574: module dav_module is already loaded, skipping 
Module cgi already enabled#修改serve-cfg-bin.conf文件内容
root@server:~# vi /etc/apache2/conf-available/serve-cgi-bin.conf
root@server:~# cat vi /etc/apache2/conf-available/serve-cgi-bin.conf
... ...<IfDefine ENABLE_USR_LIB_CGI_BIN>ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<Directory "/usr/lib/cgi-bin">AllowOverride NoneAddHandler cgi-script .cgiOptions +ExecCGI -MultiViews +SymLinksIfOwnerMatchRequire all granted</Directory></IfDefine>
... ...#重启apache2服务
root@server:~# service apache2 restart

第5步:浏览器查看UPS信息
在WINDOWS客户端,打开浏览器,输入网址:http://192.168.121.240/nut,界面如下:

需要注意:谷歌浏览器测试时可能出现直接下载CGI文件(不执行)的问题,若出现这个情况,换Edge浏览器测试。

阶段说明:
至此,只是完成了nut服务器端的配置,更多关键内容将在nut客户端的配置中说明。

参考文章:
Linux UPS配置详解 (山特SANTAK TGBOX-850 )_mayer的博客-CSDN博客
电源管理之捣腾家用 UPS - 知乎
PVE/Linux安装nut管理apc BK650M2-CH ups自动关机 - 海运的博客
SANTAKTGBOX-850在Linux下的UPS部署踩坑记 - 百度文库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/43761.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue初识别--环境搭建--前置配置过程

问题一&#xff1a; 在浏览器上的扩展程序上添加了vue-devtools后不生效&#xff1a; 解决方式&#xff1a;打开刚加入的扩展工具Vue.js devtools的允许访问文件地址设置 问题二&#xff1a;Vue新建一个项目 创建一个空文件夹hrsone&#xff0c;然后在VSCode中打开这个空文件夹…

RequestRespons

文章目录 Request&Respons1 Request和Response的概述2 Request对象2.1 Request继承体系2.2 Request获取请求数据2.2.1 获取请求行数据2.2.2 获取请求头数据2.2.3 获取请求体数据2.2.4 获取请求参数的通用方式 2.3 IDEA快速创建Servlet2.4 请求参数中文乱码问题2.4.1 POST请…

基于Python的微博大数据舆情分析,舆论情感分析可视化系统,可作为Python毕业设计

运行效果图 基于Python的微博大数据舆情分析&#xff0c;舆论情感分析可视化系统 系统介绍 微博舆情分析系统&#xff0c;项目后端分爬虫模块、数据分析模块、数据存储模块、业务逻辑模块组成。 先后进行了数据获取和筛选存储&#xff0c;对存储后的数据库数据进行提取分析处…

postgresql 分类排名

postgresql 分类排名 排名窗口函数示例CUME_DIST 和 NTILE 排名窗口函数 排名窗口函数用于对数据进行分组排名。常见的排名窗口函数包括&#xff1a; • ROW_NUMBER&#xff0c;为分区中的每行数据分配一个序列号&#xff0c;序列号从 1 开始分配。 • RANK&#xff0c;计算每…

数学建模之“灰色预测”模型

灰色系统分析法在建模中的应用 1、CUMCM2003A SARS的传播问题 2、CUMCM2005A长江水质的评价和预测CUMCM2006A出版社的资源配置 3、CUMCM2006B艾滋病疗法的评价及疗效的预测问题 4、CUMCM2007A 中国人口增长预测 灰色系统的应用范畴大致分为以下几方面: (1&#xff09;灰色关…

“深度学习”学习日记:Tensorflow实现VGG每一个卷积层的可视化

2023.8.19 深度学习的卷积对于初学者是非常抽象&#xff0c;当时在入门学习的时候直接劝退一大班人&#xff0c;还好我坚持了下来。可视化时用到的图片&#xff08;我们学校的一角&#xff01;&#xff01;&#xff01;&#xff09;以下展示了一个卷积和一次Relu的变化 作者使…

IronPDF for .NET Crack

IronPDF for .NET Crack ronPDF现在将等待HTML元素加载后再进行渲染。 IronPDF现在将等待字体加载后再进行渲染。 添加了在绘制文本时指定旋转的功能。 添加了在保存为PDFA时指定自定义颜色配置文件的功能。 IronPDF for.NET允许开发人员在C#、F#和VB.NET for.NET Core和.NET F…

深入探讨API接口测试:从基础到高级策略

引言&#xff1a;API测试的重要性 在当前的技术趋势中&#xff0c;API&#xff08;应用程序接口&#xff09;已经成为连接各种系统和服务的基石。API不仅仅是大型企业的领域&#xff0c;中小型公司和初创公司也越来越依赖API来拓展他们的业务功能和跨系统通信。正因如此&#…

虚拟机问题

虚拟机无法识别USB设备 经排查为VMware USB Arbitration Service 没有启动,但是VMware USB Arbitration Service依赖于VMware Workstation Server启动 VMware USB Arbitration Service(VMUSBArbService)是由 VMware 虚拟化软件提供的一个服务,用于协调和管理主机系统上的…

Python数据分析实战-*和**实现可变多参数的传入或变量的拆解(附源码和实现效果)

实现功能 *和**实现多参数的传入或变量的拆解 实现代码 # 1、实现多参数的传入 def one(a,*b):"""a是一个普通传入参数&#xff0c;*b是一个非关键字星号参数"""print(b) one(1,2,3,4,5,6) 其中&#xff0c;第一个的输入可以理解为&#xff1a…

【虫洞攻击检测】使用多层神经网络的移动自组织网络中的虫洞攻击检测研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

阿里Canal学习笔记

github地址 canal 使用IDEA打开&#xff0c;注意国内加载慢的问题&#xff0c;解决方式如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <settings xmlns"http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi"http://w…

SpringBoot中优雅的实现隐私数据脱敏(提供Gitee源码)

前言&#xff1a;在实际项目开发中&#xff0c;可能会对一些用户的隐私信息进行脱敏操作&#xff0c;传统的方式很多都是用replace方法进行手动替换&#xff0c;这样会由很多冗余的代码并且后续也不好维护&#xff0c;本期就讲解一下如何在SpringBoot中优雅的通过序列化的方式去…

设计模式之备忘录模式(Memento)的C++实现

1、备忘录模式的提出 在软件功能开发过程中&#xff0c;某些对象的状态在转换过程中&#xff0c;由于业务场景需要&#xff0c;要求对象能够回溯到对象之前某个点的状态。如果使用一些共有接口来让其他对象得到对象的状态&#xff0c;便会暴露对象的实现细节。备忘录模式是在不…

【学会动态规划】单词拆分(24)

目录 动态规划怎么学&#xff1f; 1. 题目解析 2. 算法原理 1. 状态表示 2. 状态转移方程 3. 初始化 4. 填表顺序 5. 返回值 3. 代码编写 写在最后&#xff1a; 动态规划怎么学&#xff1f; 学习一个算法没有捷径&#xff0c;更何况是学习动态规划&#xff0c; 跟我…

【模拟集成电路】反馈系统——基础到进阶(一)

【模拟集成电路】反馈系统——基础到进阶 前言1 概述2 反馈电路特性2.1增益灵敏度降低2.2 终端阻抗变化2.3 带宽拓展2.4 非线性减小 3 放大器分类4 反馈检测和返回机制4.1 按照检测物理量分类4.2 按照检测拓扑连接分类 5 反馈结构分析6 二端口方法7 波特方法6 麦德布鲁克方法 前…

VS2015打开Qt的pro项目文件 报错

QT报错&#xff1a;Project ERROR: msvc-version.conf loaded but QMAKE_MSC_VER isn‘t set 解决方法&#xff1a; 找到本机安装的QT路径&#xff0c;找到“msvc-version.conf”文件&#xff0c;用记事本打开&#xff0c; 在其中添加版本“QMAKE_MSC_VER 1900”保存即可。 …

CSS:filter滤镜 详解(用法 + 代码 + 例子 + 效果)

文章目录 filter 滤镜blur() 模糊度例子 渐变光晕 brightness() 元素亮度contrast() 对比度grayscale() 元素灰度hue-rorate() 色相opacity() 透明度invert() 反转颜色saturate() 饱和度 backdrop-filter 蒙版&#xff0c;滤镜例子 卷轴展开 filter 滤镜 动图为效果添加前后对…

界面组件Telerik UI for WinForms R2 2023——拥有VS2022暗黑主题

Telerik UI for WinForms拥有适用Windows Forms的110多个令人惊叹的UI控件。所有的UI for WinForms控件都具有完整的主题支持&#xff0c;可以轻松地帮助开发人员在桌面和平板电脑应用程序提供一致美观的下一代用户体验。 Telerik UI for WinForms R2 2023于今年6月份发布&…

Blender 混合现实3D模型制作指南【XR】

本教程分步展示如何&#xff1a; 减少 3D 模型的多边形数量&#xff0c;使其满足 Microsoft Dynamics 365 Guides 和使用 Microsoft Power Apps 创建的应用程序中包含的混合现实组件的特定性能目标的性能需求。将 3D 模型的多种材质&#xff08;颜色&#xff09;组合成可应用于…