How to configure a Debian server with one standalone USB UPS to:
- Initiate a UPS power off after one minute when the battery is low.
- Shutdown itself.
- And to be sure that when mains power is restored (even before the UPS runs out) the Debian server will start.
These steps are described in this question but there is no explanation how to achieve them.
I have:
- My server configured to always start when the power is restored.
- Installed
nut
and when I runupsc myups
I see the info from the UPS, including the battery level. So I can easily write a script to monitor the battery and shutdown the server.
My question is:
How to send a power off command to the UPS?
The UPS is: EATON 5E 650i
In /etc/nut/nut.conf
I have:
MODE=standalone
In /etc/nut/ups.conf
I have:
[myups]
driver = usbhid-ups
port = auto
vendorid = 0463
pollfreq = 30
upsc myups
prints:
Init SSL without certificate database
battery.charge: 100
battery.runtime: 1825
battery.type: PbAc
device.mfr: EATON
device.model: 5E 650i
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.parameter.vendorid: 0463
driver.version: 2.7.4
driver.version.data: MGE HID 1.39
driver.version.internal: 0.41
input.voltage: 230.0
outlet.1.status: on
outlet.desc: Main Outlet
outlet.id: 1
outlet.switchable: no
output.frequency: 49.9
output.frequency.nominal: 50
output.voltage: 230.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: 03.08.0018
ups.load: 19
ups.mfr: EATON
ups.model: 5E 650i
ups.power.nominal: 650
ups.productid: ffff
ups.start.battery: yes
ups.status: OL
ups.timer.shutdown: -1
ups.vendorid: 0463
Best Answer
OK, I think it is working now. Here is what I did:
apt-get install nut-server
apt-get install nut-client
nano /etc/nut/nut.conf
nano /etc/nut/ups.conf
/sbin/upsdrvctl start
upsc myups
Prints some problems.Reboot
/usr/sbin/shutdown -r now
Now when you execute
upsc myups
you should see the info of your UPS:If
/sbin/upsmon
print something like:try:
nano /etc/nut/upsd.users
chmod 640 /etc/nut/upsd.users
ls -lahrt /etc/nut/upsd.users
nano /etc/nut/upsmon.conf
systemctl enable nut-monitor
/sbin/upsmon
Here is what can be seen in syslog when I tested by cutting off the electricity:
After the boot when I execute
upsmon
I see the following:/sbin/upsmon
Which means it is running and everything is fine, I guess :)
You can see the meaning of the variables, printed by
upsc
, such asups.status
,ups.timer.shutdown
,battery.charge
, here: https://networkupstools.org/docs/user-manual.pdfAnother useful URL is: https://risc-a-day.blogspot.com/2014/09/getting-my-ups-to-work-with-linux.html