Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
MONITORD(8)		  BSD System Manager's Manual		   MONITORD(8)

     monitord -- monitor system	services for accidental	termination

     monitord [-f file -t interval]

     monitord is a simple to use system	service	that allows one	to easily mon-
     itor other	system services	for accidental termination. If they terminate
     because of	some internal bug or illegitimate action, such as a DoS	at-
     tack, they	are restarted with the given username and parameters specified
     in	monitord.conf.

     The two command line options are as follows:

     -f	file	 A custom configuration	file may be used instead of the	de-
		 fault one: /usr/local/etc/monitord.conf.

     -t	interval
		 The time interval in seconds at which to check	the system
		 processes, which are configured in monitord.conf. The default
		 interval is 10	seconds.

     The configuration file for	monitord, /usr/local/etc/monitord.conf,	has a
     simple format. It is divided into two parts. The first part contains gen-
     eral configuration	informaion, which for now consists simply of the ad-
     min's email and your email	server.	The second part	consists of multiple
     configuration lines for each service to be	monitored. In this second
     part, the first column contains the user under which the given service on
     that line will be run if it needs to be restarted.	The group to which the
     user belongs will be grabbed from the password database.

     The second	column consists	of the options to be used in monitoring	that
     particular	service. Currently, three options are supported:

     auto	 Indicates that	the service should be automatically restarted
		 if it's found down. This is also the default behaviour	when
		 neither auto nor noauto are specified.

     noauto	 Indicates that	the service should not be automatically
		 restarted if it's down.

     alert	 Indicates that	if this	service	is found down, the administra-
		 tor is	automatically notified via email, as specified in the
		 first part of the configuration file. Also, once a service is
		 restarted, this option	will prompt monitord to	notify the ad-
		 ministrator that it was successfully restarted.

     The third column is the delay that	will follow the	startup	of that	par-
     ticular service. Some services take a while to start up, especially if
     they need to perform preperatory tasks in a wrapper script, so to keep
     monitord from attempting to restart a service after it's already begun
     its startup proceedure but	before it appears in the process table the
     specified delay keeps monitord from checking that service for the speci-
     fied time in seconds.

     The fourth	and fifth columns are the service being	monitored and script
     used to start the service,	respectively. Only the script column includes
     the full path. If no special wrapper script is being used but instead the
     service's binary is invoked directly simply include the path to the ser-
     vice in the script	column.	The service field should always	contain	the
     name of the binary	being executed.	See examples in	monitord.conf.

     The last column, which is optional, may contain any parameters that
     should be passed to the script (or	binary as the case may be). For	in-
     stance, the following line	would configure	monitord to watch for
     sendmail(8) and restart it, in case of termination, with the user root
     and group wheel (which it would grab from the password database), and
     then notify the administrator.  monitord will wait	30 seconds after at-
     tempting to restart sendmail before it checks to see if sendmail is up
     and running:

     root    auto,alert	     30	     sendmail	     /usr/sbin/sendmail	-bd -q60m

     Here are a	few more example service entries:

     root    auto,alert	     30	     syslogd	     /usr/sbin/inetd	    -wW
     root    auto,alert	     30	     syslogd	     /usr/sbin/syslogd
     www     auto,alert	     60	     httpd	     /usr/local/etc/rc.d/

     This is version 0.4.1.

     When using	a time interval	that is	smaller	than 5 seconds,	an increas-
     ingly larger amount of CPU	time will be used by the process. It is	recom-
     mended that one keep the interval equal to	or above 5 seconds. The	de-
     fault of 10 seconds may be	changed	in config.h before compile time.

     /usr/local/etc/monitord.conf  configuration file

     When restarting a service which it	is monitoring, monitord	will notify
     syslogd(8)	of the event.

     monitord should be	run as root so that it can restart the services	it is
     monitoring	with the correct username and group.

     This manual page was written by W.	M. Shandruk <>.

     There are no known	bugs.

FreeBSD	4.3			August 21, 2003			   FreeBSD 4.3


Want to link to this manual page? Use this URL:

home | help