Instruction Manual
NUT is built on a networked model with a layered scheme of drivers, server and clients.
1.The driver programs talk directly to the UPS equipment and run on the same host as the NUT network server upsd. Drivers are provided for a wide assortment of equipment from most of the popular UPS vendors and they understand the specific language of each UPS and map it back to a compatibility layer. This means both an expensive “smart” protocol UPS and a simple “power strip” model can be handled transparently.
2.The NUT network server program upsd is responsible for passing status data from the drivers to the client programs via the network. upsd can caches the status from multiple UPSes and can then serve this status data to many clients. upsd also contains access control features to limit the abilities of the clients (e.g. so only authorized hosts may monitor or control the UPS hardware)
3.There are a number of NUT clients that connect to upsd that to read that check on the status of the UPS hardware and do things based on the status. These clients can run on the same host as the NUT server or they can communicate with the NUT server over the network (enabling them to monitor any UPS anywhere).
The upsmon client enables servers that draw power through the UPS (i.e. slaves of the UPS) to shutdown gracefully when the battery power reaches critical. Additionally, one server is designated the master of the UPS, and is responsible for shutting down the UPS itself when all slaves have shut down. Typically, the master of the UPS is the one connected to the UPS via serial or USB cable.
upsmon can monitor multiple UPSes, so for
There also the two status/logging clients, upsc and upslog. The upsc client provides as a quick way to poll the status of a UPS. It can be used inside shell scripts and other programs that need UPS status information. upslog is a background service that periodically polls the
44