NAME
ups_mond — HP PowerTrust Uninterruptible Power System monitor daemon
SYNOPSIS
/usr/lbin/ups_mond
[-f
configfile]
[-s]
[-t]
DESCRIPTION
When it detects a loss of AC power
for a period of time exceeding a configured limit,
ups_mond
ensures file system integrity by shutting down
HP-UX.
To do this,
ups_mond
uses the device special files specified in its configuration
file
(/etc/ups_conf
by default)
to monitor the state of each
HP PowerTrust Uninterruptible Power System (UPS) attached to the system.
Use the
-f
option to specify a configuration file other than
/etc/ups_conf.
See
ups_conf(4)
for a description of the configuration file format.
By default,
ups_mond
is locked into memory (see
plock(2)).
That is,
ups_mond
is not swappable.
Although extreme caution is required,
you can make
ups_mond
swappable if all swap disks are powered by an uninterruptible power system
(assured to have power when the primary power source fails).
To make
ups_mond
swappable, use the
-s
option.
When
ups_mond
is forced to shutdown the system, it executes the
/sbin/shutdown
command with real-time priority (default behavior).
ups_mond
can be configured to execute
/sbin/shutdown
command with a timeshare (non-real-time) priority by using the
-t
option.
ups_mond
is started by
init
(see
init(1M))
by means of an entry in the file
/etc/inittab
(see
inittab(4)).
The
inittab
entry uses the
respawn
option to automatically restart
ups_mond
if
ups_mond
is terminated by the
kill
command (see
kill(1)).
This entry should follow the entry:
sqnc::wait:/sbin/rc </dev/console >/dev/console 2>&1
# system initialization
so that
ups_mond
is started after the system logging daemon
(syslogd).
It should also be run with real-time priority to assure its
execution (see
rtprio(1)).
ups_mond
logs messages, and when appropriate invokes
/sbin/shutdown
using the
-h
option, or
/usr/sbin/reboot.
For each configured UPS,
ups_mond
can be instructed (in
/etc/ups_conf)
to log messages only, without taking
shutdown
or
reboot
action. See
MSG_ONLY
in
ups_conf(4).
By default
ups_mond
performs the
shutdown
and
reboot
actions.
Note that when the shutdown is performed, UPSs that have
lost AC line voltage will be turned off once the
shutdown_timeout_mins
time has expired (see
ups_conf(4)).
By default the system will power on when the AC line voltage
is restored. The
kill_after_shutdown
line can be added to
ups_conf
to tell the UPS not to come back
up when AC line voltage is restored (see
ups_conf(4)).
ups_mond
uses the
syslog
message logging facility
to log these occurrences
(see
syslog(3C)).
Messages are written to the console if
ups_mond
is unable to send them to
syslogd.
Critical messages (see DIAGNOSTICS section) are also sent to
the console.
RETURN VALUE
ups_mond
returns the following values:
- zero (0)
Successful Completion
- non-zero
Error encountered. See ERRORS below.
EXAMPLES
The entry in
/etc/inittab
should be similar to this:
ups::respawn:rtprio 0 /usr/lbin/ups_mond -f /etc/ups_conf
DIAGNOSTICS
Messages resulting from normal operation:
UPS Monitor daemon starting; using configuration file <configfilename>.
UPS <tty special file name> OK: AC Power back on.
AC Power to all recognized, system critical UPS's OK! System will not shutdown.
Messages resulting in exit of daemon:
usage: ups_mond [-f configfile].
cannot exec /usr/lbin/ups_mond -f <configfilename> -e ups_monchild due to <error>.
permission denied; must be superuser.
exiting; unable to lock process in memory: <errno>.
aborted, configfile <configfilename> open received error: <errno>.
aborted, configfile <configfilename> fseek error: <errno>.
aborted, malloc error: <errno>.
terminated by signal <decimal value of signal>.
Messages for which
shutdown
might be run (depends on UPS configuration):
UPS <tty special file name> AC POWER FAILURE - running on UPS battery.
If power is not returned within previously configured time period, your system will automatically go to graceful shutdown.
If power is not returned within previously configured time period, your system will automatically go to graceful shutdown. System will not come back up after shutdown.
Messages for which
reboot
might be run (depends on UPS configuration):
UPS <tty special file name> battery low.
UPS <tty special file name> no output - either switch setting wrong on UPS or bad UPS.
UPS <tty special file name> failed - requires repair.
UPS <tty special file name> current overload; UPS turned itself off - either UPS bad or too many devices connected.
UPS <tty special file name> ambient temperature too high; UPS turned itself off - reduce heat in area.
UPS <tty special file name> output voltage too high; UPS turned itself off - requires repair.
UPS <tty special file name> output voltage too low; UPS turned itself off - requires repair.
cannot exec shutdown due to <errno>.
The above messages are followed by the following message:
reboot -halt invoked due to UPS error cited in previous syslog message.
Messages that are only logged (no
shutdown/reboot
action is taken):
warning - no upstty: UPS's found in configfile <configfilename>; daemon running for no purpose.
warning - shutdown delay or shutdown timeout parameter in configfile <configfilename> missing or not greater than zero; using default.
UPS <tty special file name> in bypass-mode; no AC Power-loss protection.
UPS <tty special file name> interrupted, but read of ups status failed - possible UPS hardware problem.
upstty <tty special file name> failed open: <errno>; ignoring that tty and continuing.
UPS <tty special file name> ioctl(TCGETA) failed: <errno>; ignoring that UPS.
UPS <tty special file name> ioctl(TCSETAF) failed <errno>; ignoring that UPS.
UPS <tty special file name> line too noisy; ignoring that UPS.
UPS <tty special file name> could not enable; loss of power would not be detectable.
UPS <tty special file name> read failed: <errno>; Uninterruptible Power Supply has not been connected correctly; loss of power would not be detectable.
UPS <tty special file name> write failed: <errno>; ignoring that UPS.
UPS <tty special file name> read of status received ILLEGAL CMD or NOISY LINE.
UPS <tty special file name> read of status received <number> bytes of unexpected data
(octal: <octal returned>): <string returned>.
UPS <tty special file name> read of status failed: <errno>.
UPS <tty special file name> write failed: <errno>.
UPS <tty special file name> OK; turned-off Failure Alarm.
UPS <tty special file name> OK; turned-off Inverter Failure Alarm.
UPS <tty special file name> OK; turned-off No Battery Alarm.
UPS <tty special file name> OK; turned-off Battery Charger Fault Alarm.
UPS <tty special file name> OK; turned-off Current Overload Alarm.
UPS <tty special file name> OK; turned-off High Ambient Temperature Alarm.
UPS <tty special file name> OK; turned-off Battery Failure Alarm.
UPS <tty special file name> OK; turned-off High Battery Voltage Alarm.
UPS <tty special file name> OK; turned-off Low Battery Voltage Alarm.
UPS <tty special file name> OK; turned-off High Output Voltage Alarm.
UPS <tty special file name> OK; turned-off Low Output Voltage Alarm.
UPS <tty special file name> OK; turned-off UPS Communication Lost Alarm.
UPS <tty special file name> Inverter Failure requires repair.
UPS <tty special file name> No Battery - ensure UPS battery installed.
UPS <tty special file name> Battery Charger Fault- requires repair.
UPS <tty special file name> Current Overload - either UPS bad or too many devices connected.
UPS <tty special file name> High Ambient Temperature-reduce area temperature.
UPS <tty special file name> Battery Failure- requires repair.
UPS <tty special file name> High Battery Voltage - requires repair.
UPS <tty special file name> Low Battery Voltage - requires repair.
UPS <tty special file name> Communication Lost - At least one or more components of the UPS subsystem has lost communications.
UPS <tty special file name> UNKNOWN status/alarm <hex number> - may require repair.
write to UPS <tty special file name> of
command <cmd string> Failed: <errno>.
read from UPS <tty special file name> after sending command <cmd string> to it failed; <errno>.
UPS <tty special file name> could not execute command <cmd string>; returned
(octal: <octal returned>): <string returned> - possible bad signal cable.
Messages relating to Timer Controlled Power On and Off:
Timer Controlled On/Off information invalid; ignored.
mknod error: <errno> for Timed On/Off fifo file /var/tmp/timed_off; continuing without.
open error: <errno> for Timed On/Off fifo file /var/tmp/timed_off; continuing without.
Timer Controlled On value exceeds UPS <tty special file name> maximum. The maximum value of <maximum supported decimal value> will be used for this UPS.
ERRORS
ups_mond
returns the following error values:
- EINVAL
ups_mond
encountered an incorrect parameter.
- EPERM
Insufficient privileges.
ups_mond
must be started by a
superuser.
- EINTR
ups_mond
was interrupted (terminated) by
signal()
or
kill().
See
signal(2)
and
kill(1).
- one (1)
For all other error conditions.
FILES
/dev/tty*
/etc/ups_conf
/var/tmp/timed_off
/var/adm/syslog/syslog.log