Having small servers at office requires try to avoid a small number of problems one of then are electrical supply falitures, a quick way to solve this is connecting a UPS to the server and forget about cross your fingers when a power outtage makes act of presence.
In my case i have to configure a couple of small servers one with an old Yukai UPS and other with a Salicru ups.
If you want to get an ups linux communication working follow this steps:
yum install https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
yum install nut.x86_64 vim
First search if your ups is supported in nut database and ensure that you select the desired driver Linux UPS Hardware Compatibility list
if your ups doesn’t appears in this list youl use your favourite web searcher for someone who try to fix these problems in case of Salicru appears to work with blazer_usb driver
at the end of the file append these lines for mustek Yukai series
[yukai] driver = blazer_usb port = auto desc = "Yukai PowerMust 600 usb"
next step is verify if your selected configuration is valid just type in your terminal
and shoud get some output like these
Network UPS Tools - UPS driver controller 2.7.2 Network UPS Tools - Megatec/Q1 protocol USB driver 0.11 (2.7.2) Supported UPS detected with megatec protocol Vendor information unavailable No values provided for battery high/low voltages in ups.conf Using 'guestimation' (low: 10.400000, high: 13.000000)! Battery runtime will not be calculated (runtimecal not set)
after this you should configure your permissions ACL, in my case I only want query SAI status from the server only
so edit file /etc/ups/upsd.conf using this command
and append these text
ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 ACCEPT localhost REJECT all
after this you should add a user to check UPS status edditing /etc/ups/upsd.users file
vim vim /etc/ups/upsd.users
and append this text
[local_mon] password = secretpass allowfrom = localhost upsmon master
Next step is link your ups with created user
add a line in file
with these content
MONITOR </etc/ups/ups.conf UPS name>@localhost 1 </etc/ups/upsd.users selected username> </etc/ups/upsd.users selected password> master
in this case
MONITOR yukai@localhost 1 local_mon secretpass master
systemctl enable nut-monitor.service
systemctl enable nut-server.service
and start these services
systemctl start nut-server.service
systemctl start nut-monitor.service
sometimes at execute after execute “upsdrvctl start” command it hijacks usb communication, this can be solved restarting system.
to check if ups is working just launch
upsc “ups name” and you should get an output like these
battery.charge: 100 battery.voltage: 13.20 battery.voltage.high: 13.00 battery.voltage.low: 10.40 battery.voltage.nominal: 12.0 device.type: ups driver.name: blazer_usb driver.parameter.pollinterval: 2 driver.parameter.port: auto driver.version: 2.7.2 driver.version.internal: 0.11 input.current.nominal: 1.0 input.frequency: 49.9 input.frequency.nominal: 50 input.voltage: 231.5 input.voltage.fault: 231.5 input.voltage.nominal: 230 output.voltage: 231.5 ups.beeper.status: enabled ups.delay.shutdown: 30 ups.delay.start: 180 ups.load: 27 ups.productid: 5161 ups.status: OL ups.type: offline / line interactive
7 Replies to “Configure ups in centos 7”
thank you !
i was trying to make my Eaton Ellipse Pro 650 work on centos7 before, but with no avail (diffrent forums, posts)
i used your solution (modified to use usbhid-ups) and it works.
This ist the only guide for the current release of RHEL I found in the big www. Short and precise, and not bloated with unusual use cases, thats how guides should be!
Thanks for your guide ! Totaly agree to previous comment.
Works like a charm! Thank you
That was a good tutorial, thank you. I’m using a Salicru SPS 700 One. It didn’t work to start but a reboot sorted it.
I had to create the following file to make it work:
$ cat /etc/tmpfiles.d/nut-run.conf
#Type Path Mode UID GID Age Argument
d /run/nut 0755 nut root
Hey thanks for the tip — I had to create that file as well. I’m guessing there is a permissions problem somewhere