161 lines
5.3 KiB
Text
161 lines
5.3 KiB
Text
|
UPSD(8)
|
||
|
=======
|
||
|
|
||
|
NAME
|
||
|
----
|
||
|
|
||
|
upsd - UPS information server
|
||
|
|
||
|
SYNOPSIS
|
||
|
--------
|
||
|
*upsd* -h
|
||
|
|
||
|
*upsd* ['OPTIONS']
|
||
|
|
||
|
DESCRIPTION
|
||
|
-----------
|
||
|
|
||
|
*upsd* is responsible for serving the data from the drivers to the clients. It
|
||
|
connects to each driver and maintains a local cache of the current state.
|
||
|
Queries from the clients are served from this cache, so delays are minimal.
|
||
|
|
||
|
It also conveys administrative messages from the clients back to the drivers,
|
||
|
such as starting tests, or setting values.
|
||
|
|
||
|
Communication between *upsd* and clients is handled on a TCP port.
|
||
|
Configuration details for this port are described in linkman:upsd.conf[8].
|
||
|
|
||
|
This program is essential, and must be running at all times to actually
|
||
|
make any use out of the drivers and clients.
|
||
|
|
||
|
Controls in the configuration files allow you to limit access to the
|
||
|
server, but you should also use a firewall for extra protection. Client
|
||
|
processes such as linkman:upsmon[8] trust *upsd* for status information about
|
||
|
the UPS hardware, so keep it secure.
|
||
|
|
||
|
OPTIONS
|
||
|
-------
|
||
|
|
||
|
*-c* 'command'::
|
||
|
Send 'command' to the background process as a signal. Valid commands
|
||
|
are:
|
||
|
|
||
|
*reload*;; reread configuration files
|
||
|
*stop*;; stop process and exit
|
||
|
|
||
|
*-D*::
|
||
|
Raise the debug level. Use this multiple times for additional details.
|
||
|
|
||
|
*-h*::
|
||
|
Display the help text.
|
||
|
|
||
|
*-r* 'directory'::
|
||
|
upsd will *chroot*(2) to 'directory' shortly after startup
|
||
|
and before parsing any configuration files with this option set. You
|
||
|
can use this to create a "jail" for greater security.
|
||
|
+
|
||
|
You must coordinate this with your drivers, as upsd must be able to find
|
||
|
the state path within 'directory'. See linkman:upsdrvctl[8] and
|
||
|
linkman:nutupsdrv[8].
|
||
|
|
||
|
*-u* 'user'::
|
||
|
Switch to user 'user' after startup if started as root. This
|
||
|
overrides whatever you may have compiled in with `configure
|
||
|
--with-user`.
|
||
|
|
||
|
*-V*::
|
||
|
Display the version of the program.
|
||
|
|
||
|
RELOADING
|
||
|
---------
|
||
|
|
||
|
upsd can reload its configuration files without shutting down the process
|
||
|
if you send it a SIGHUP or start it again with `-c reload`. This only works
|
||
|
if the background process is able to read those files.
|
||
|
|
||
|
If you think that upsd can't reload, check your syslogs for error messages.
|
||
|
If it's complaining about not being able to read the files, then you need
|
||
|
to adjust your system to make it possible. Either change the permissions
|
||
|
on the files, or run upsd as another user that will be able to read them.
|
||
|
|
||
|
DO NOT make your upsd.conf or upsd.users world-readable, as those files
|
||
|
hold important authentication information. In the wrong hands, it could
|
||
|
be used by some evil person to spoof your master upsmon and command your
|
||
|
systems to shut down.
|
||
|
|
||
|
DIAGNOSTICS
|
||
|
-----------
|
||
|
|
||
|
upsd expects the drivers to either update their status regularly or at
|
||
|
least answer periodic queries, called pings. If a driver doesn't
|
||
|
answer, upsd will declare it "stale" and no more information will be
|
||
|
provided to the clients.
|
||
|
|
||
|
If upsd complains about staleness when you start it, then either your
|
||
|
driver or configuration files are probably broken. Be sure that the
|
||
|
driver is actually running, and that the UPS definition in
|
||
|
linkman:ups.conf[5] is correct. Also make sure that you start your
|
||
|
driver(s) before starting upsd.
|
||
|
|
||
|
Data can also be marked stale if the driver can no longer communicate
|
||
|
with the UPS. In this case, the driver should also provide diagnostic
|
||
|
information in the syslog. If this happens, check the serial or
|
||
|
USB cabling, or inspect the network path in the case of a SNMP UPS.
|
||
|
|
||
|
ACCESS CONTROL
|
||
|
--------------
|
||
|
|
||
|
If the server is build with tcp-wrappers support enabled, it will check if
|
||
|
the NUT username is allowed to connect from the client address through the
|
||
|
`/etc/hosts.allow` and `/etc/hosts.deny` files. Note that this will
|
||
|
only be done for commands that require to be logged into the server. Further
|
||
|
details are described in *hosts_access*(5).
|
||
|
|
||
|
FILES
|
||
|
-----
|
||
|
|
||
|
The general upsd configuration file is linkman:upsd.conf[5]. The
|
||
|
administrative functions like SET and INSTCMD for users are defined and
|
||
|
controlled in linkman:upsd.users[5]. UPS definitions are found in
|
||
|
linkman:ups.conf[5].
|
||
|
|
||
|
ENVIRONMENT VARIABLES
|
||
|
---------------------
|
||
|
|
||
|
*NUT_CONFPATH* is the path name of the directory that contains
|
||
|
`upsd.conf` and other configuration files. If this variable is not set,
|
||
|
*upsd* uses a built-in default, which is often `/usr/local/ups/etc`.
|
||
|
|
||
|
*NUT_STATEPATH* is the path name of the directory in which
|
||
|
*upsd* keeps state information. If this variable is not set,
|
||
|
*upsd* uses a built-in default, which is often `/var/state/ups`.
|
||
|
The *STATEPATH* directive in linkman:upsd.conf[5] overrides this variable.
|
||
|
|
||
|
SEE ALSO
|
||
|
--------
|
||
|
|
||
|
Clients:
|
||
|
~~~~~~~~
|
||
|
linkman:upsc[8], linkman:upscmd[8],
|
||
|
linkman:upsrw[8], linkman:upslog[8], linkman:upsmon[8]
|
||
|
|
||
|
CGI programs:
|
||
|
~~~~~~~~~~~~~
|
||
|
linkman:upsset.cgi[8], linkman:upsstats.cgi[8], linkman:upsimage.cgi[8]
|
||
|
|
||
|
Drivers:
|
||
|
~~~~~~~~
|
||
|
linkman:nutupsdrv[8],
|
||
|
linkman:apcsmart[8], linkman:belkin[8], linkman:belkinunv[8],
|
||
|
linkman:bestuferrups[8], linkman:bestups[8],
|
||
|
linkman:cyberpower[8], linkman:energizerups[8], linkman:etapro[8],
|
||
|
linkman:everups[8], linkman:genericups[8],
|
||
|
linkman:isbmex[8], linkman:liebert[8], linkman:masterguard[8],
|
||
|
linkman:mge-shut[8], linkman:mge-utalk[8], linkman:oneac[8],
|
||
|
linkman:powercom[8], linkman:safenet[8], linkman:snmp-ups[8],
|
||
|
linkman:tripplite[8], linkman:tripplitesu[8], linkman:victronups[8],
|
||
|
|
||
|
Internet resources:
|
||
|
~~~~~~~~~~~~~~~~~~~
|
||
|
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
|