DESCRIPTION
The Essential Services Monitor (ESM) daemon,
esmd,
maintains the availability of essential system daemons
by automatically restarting them if they terminate.
The ESM daemon monitors the Event Manager daemon,
evmd.
The ESM daemon is started by the init process
when the system is initialized to run level 2 and
continues to run until the system is shut down or
returned to single user mode.
Only one instance of
esmd
can run at a time.
Configuration information is sent to the ESM daemon
by a control program,
/sbin/init.d/esm,
which is run at key points in the startup and shutdown procedures.
As startup or shutdown progresses, the control program updates
the ESM state file,
/var/run/esm.state.
The control program then signals the
esmd
daemon to reconfigure itself.
On startup, state transitions occur after
evmd
has started.
On shutdown, transitions occur after each of these monitored daemons has terminated.
After each transition,
the ESM daemon determines which of the monitored daemons should be
running and adjusts its monitoring activities accordingly.
The ESM daemon reports all state change information,
including notice of failures and restarts,
through the system logging daemon, syslogd.
Messages are displayed on the system console during periods
when syslogd is not running. See
syslogd(1M)
for more information.
If the ESM daemon fails to restart a monitored daemon,
it reports the error by posting a high priority message through syslogd,
and makes no further restart attempts.
The system administrator should investigate the problem
and restart the failed daemon.
The ESM daemon periodically attempts to resume monitoring of the daemon,
and posts an informational message when it succeeds.
If the monitored daemon fails again once monitoring has resumed,
the ESM daemon again attempts to restart it.
The ESM daemon can be forced to restart a failed daemon by sending
a SIGHUP signal to the
esmd
process.
If there is a need to temporarily disable the ESM daemon for test purposes,
in order to prevent the monitored daemons from being restarted automatically,
send a SIGSTOP signal to the
esmd
process.
To reactivate the ESM daemon, send a SIGCONT signal to the
esmd
process.
The ESM daemon should never be disabled on a production system.
If the ESM daemon is terminated unexpectedly, it is restarted automatically by init.
Options
The
esmd
command recognizes the following options:
- -a
Limit the priority of any syslog messages posted by the ESM daemon to "alert."
If this option is not specified,
esmd
posts an "emergency" message if it cannot restart a failed daemon.
A message may be sent to all users currently logged in to the system.
The
-a
option should only be used if the system administrator is actively
monitoring syslogd messages.
- -r retry_seconds
Specify the interval between attempts to begin monitoring a daemon
that has failed, and which
esmd
has been unable to restart automatically.
The default period is 30 seconds.
Specifying a period of zero disables retrying.
Notes
To use the start options, you must add them to the
esmd
startup command in the
/etc/inittab
file. The
esmd
daemon reports any invalid start options with a single generic message through syslogd.
Restrictions
The
esmd
daemon terminates with an error message if it is started by any process
other than init.
The
/sbin/init.d/esm
program is intended to be run by the system startup
and shutdown process and should not be run from the command line.
Only one instance of
esmd
can run at a time.