cyrmaster - master Cyrus process
[ -C alternate imapd.conf
] [ -M
] [ -l listen queue
] [ -p
] [ -P snmp agentx ping interval
] [ -j
] [ -d
] [ -D
] [ -x snmp agentx
is the process that controls all of the Cyrus processes. This
process is responsible for creating all imapd, pop3d, lmtpd and sieved child
processes. This process also initializes the Berkeley DB code and performs
If this process dies, then no new sessions will be started.
It kills itself and all child processes when it receives a SIGTERM.
- -C alternate imapd.conf
- Specifies an alternate imapd.conf for use by cyrmaster
(note that this will not affect any sub-processes spawned by cyrmaster,
you should specify those specifically in the respective entries in
- -M alternate cyrus.conf
- Specifies an alternate cyrus.conf for use by
- -l listen queue backlog
- Increase the listen queue backlog. By default, the listen
queue is set to 32. On systems with a high connection rate, it may be
desirable to increase this value. refer to listen(2) for
- -j janitor full-sweeps per second
- Sets the amount of times per second the janitor should
sweep the entire child table. Leave it at the default of 1 unless you have
a really high fork rate (and you have not increased the child hash table
size when you compiled Cyrus from its default of 10000 entries).
- -p pidfile
- Use pidfile as the pidfile. If not specified,
defaults to /run/cyrus-master.pid
- -P snmp agentx ping interval
- Sets the amount on time in seconds the subagent will try
and reconnect to the master agent (snmpd) if it ever becomes (or starts)
disconnected. Requires net-snmp 5.0 or higher.
- Start in daemon mode (run in background and disconnect from
- Don't close stdin/stdout/stderr. Primarily useful for
debugging. Note that -d and -D cannot be used together; consider using -L
- -L logfile
- Redirect stdout and stderr to the given
- -x snmp agentx socket
- Address the master agent (most likely snmpd) listens on.
Requires net-snmp 5.0 or higher.
Upon execution, cyrmaster
reads its configuration information out of the
rereads its configuration file when it receives a hangup
signal, SIGHUP. Services and events may be added, deleted or modified when the
configuration file is reread. Any active services removed from the
configuration file will be allowed to run until completion. Services added or
modified to listen on a privileged port may not be able to bind the port,
depending on your system configuration. In this case a full restart is needed.
propagates the hangup signal, SIGHUP, to its child service
processes, so that they stop waiting for incoming connections and exit,
allowing them to be recycled. This is useful to make services take into
account a new version of the imapd.conf
(5) file. Children that are
servicing a client connection when SIGHUP is received are allowed to run until
the client logouts before being recycled. It may take a long time until the
client logouts, so a log message is generated for processes that have not been
recycled within 30s.
The environment variable CYRUS_VERBOSE
can be set to log additional
debugging information. Setting the value to 1 results in base level logging.
Setting it higher results in more log messages being generated.
Services do not always go away silently when removed through a SIGHUP. If there
are workers of the removed service still running, messages to syslog about
broken pipes and accept() failures are to be expected.
The in-memory list of services is not cleaned up ever, so a cyrmaster daemon
that has been sent an extremely high amount of SIGHUP signals to
add/remove/modify services will lose performance eventually. Restarting
cyrmaster fixes this.
- /etc/cyrus.conf, /etc/imapd.conf,