DragonFly On-Line Manual Pages
APCUPSD(8) DragonFly System Manager's Manual APCUPSD(8)
apcupsd - a daemon for controlling most APC UPSes
apcupsd [-b] [-d level | --debug level] [-f file | --config-file file]
[-P file | --pid-file file]
[-p | --kill-on-powerfail | -t | --term-on-powerfail] [-R]
apcupsd [-k | --killpower | --hibernate | -o | --power-off]
apcupsd [-h | --help]
apcupsd [-V | --version]
The apcupsd daemon controls the operation of most American Power
Conversion Corp (APC) UPSes. During a power failure, apcupsd informs
users about the loss of utility power and that a shutdown may occur. If
utility power is not restored, a system shutdown will follow when the
battery is exhausted, a specified timeout expires, a specified battery
charge percentage is reached, or a specified battery runtime (based on
internal UPS calculations and determined by power consumption rates)
expires. If the utility power is restored before one of the these
shutdown conditions is met, apcupsd will inform users of this and the
shutdown will generally be cancelled. Refer to the Implementation Notes
section below for situations in which the shutdown may not be cancelled.
The meaning of the command line options is as follows:
-b Run in the foreground, do not detach and become a daemon.
-d level --debug level
Set debugging output level where level is a number greater
-f file --config-file file
Load the specified configuration file. The default
configuration file is /etc/apcupsd/apcupsd.conf. It must be
changed when running more than one copy of apcupsd on the
same computer to control multiple UPSes.
-k | --killpower | --hibernate
Power down the UPS in hibernate mode after a 10 second delay.
This option is normally only used by apcupsd itself to power
down the UPS after a system shutdown has almost completed.
In hibernate mode, the UPS will again supply power to the
system when the utility power returns.
-o | --power-off
Power down UPS completely. The UPS will not supply power to
the system when the utility power returns.
-P file --pid-file file
Create the specified process ID file. The default is
/var/run/apcupsd.pid. It must be changed when running more
than one copy of apcupsd on the same computer to control
apcupsd commands the UPS to power down in hibernate mode just
before apcupsd starts the system shutdown. This relies on the
grace shutdown delay of a Smart-UPS being long enough to
allow the system to shutdown completely before the UPS shuts
off the power to the system and goes into hibernate mode.
This shutdown grace delay is a programmable value stored in a
Smart-UPS EEPROM which can be changed using apctest(8). In
hibernate mode, the UPS will again supply power to the system
when the utility power returns. Refer to apcupsd.conf(5) for
an alternative method using the KILLDELAY configuration
directive and the only method available when using a Back-UPS
or other UPS operating in simple signalling mode.
apcupsd exits immediately when it issues the system shutdown
command. This behaviour is useful for those systems where it
is not possible to insert apcupsd commands in a halt script
to issue the killpower command. Without this option, apcupsd
will wait for the SIGTERM signal from the system shutdown
process before exiting.
-R Put a UPS which runs in smart signalling mode by default (eg
a Smart-UPS) into simple signalling mode.
Prints the apcupsd version number and the program help.
-h --help Prints the program help.
The apcupsd daemon supports a networking mode called Network Information
Server (NIS) -- not related to Sun's NIS/YP -- in which the daemon
serves status and event information to clients over a network. See the
"Running The Network Information Server" section of the apcupsd manual
for more information and configuration details on this mode.
The apcupsd daemon also supports a Smart-UPS in SNMP mode provided an APC
Web/SNMP or APC PowerNet SNMP card is installed in the UPS's SmartSlot.
For more information and configuration details on this mode, refer to the
"Support for SNMP UPSes" section of the apcupsd manual.
The shutdown is made by calls to the script /etc/apcupsd/apccontrol by
the apcupsd daemon. Consequently, no changes to /etc/inittab are
necessary on Linux as there is no communication between the daemon and
the init(1) process. Installation of the daemon modifies the halt script
so that at the end of the shutdown process, the daemon will be re-
executed to power off the UPS in hibernate mode.
On some operating systems (eg FreeBSD) there is no halt script so
apccontrol must be modified to cause the daemon to power off the UPS
after a delay. Alternatives are to use the --kill-on-powerfail command
on the apcupsd command line or refer to apcupsd.conf(5) for details of
the KILLDELAY configuration directive.
It will almost certainly be necessary to customise the configuration
information in the /etc/apcupsd/apcupsd.conf configuration file to suit
your configuration and desired UPS behaviour.
For information on the configuration directives and the format of the
configuration file, refer to apcupsd.conf(5).
apcupsd generates events when certain conditions occur. These events are
sent to the system log and, optionally, to the temporary events file
(/var/log/apcupsd.events). They also generate a call to the
/etc/apcupsd/apccontrol script which in turn will call any custom scripts
placed in the /etc/apcupsd directory which may override apccontrol's
default behaviour. For details of the events and customising apccontrol's
behaviour, refer to apccontrol(8).
DATA FILE FORMAT
If the DATATIME configuration directive is set to non-zero, apcupsd will
log a data record at the interval defined by the DATATIME directive. This
data record is in a format similar to the APC PowerChute software data
STATUS REPORT FORMAT
The status report output format is simple ASCII. Generally there is a
single piece of information on each line of output. The content varies
based on the model of UPS being used and, in some cases, the firmware
version. This status report is also optionally written the the
/etc/apcupsd/apcupsd.status file. Refer to apcaccess(8) for full details
of the status report output.
/etc/apcupsd/apcupsd.conf default configuration file
/var/run/apcupsd.pid default process ID file
/var/log/apcupsd.status optional status file
/var/log/apcupsd.events default events file
apcupsd.conf(5), apcaccess(8), apccontrol(8), apctest(8).
The HTML apcupsd manual installed on your system or available online at
Trevor Roydhouse (current)
Andre M. Hedrick
Christopher J. Reimer
Adam Kropelin (current Project Manager and Code Maintainer)
Kern Sibbald (former Project Manager and Code Maintainer)
Riccardo Facchetti (former Project Manager and Code Maintainer)
Andre M. Hedrick (Project Founder and former Code Maintainer)
An enormous number of users who have devoted their time and energy to
this project -- thanks.
apcupsd v3.14.6 January 10, 2009 apcupsd v3.14.6