.\" -*- nroff -*- .TH CYRMASTER 8 "Project Cyrus" CMU .\" .\" Copyright (c) 1994-2008 Carnegie Mellon University. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in .\" the documentation and/or other materials provided with the .\" distribution. .\" .\" 3. The name "Carnegie Mellon University" must not be used to .\" endorse or promote products derived from this software without .\" prior written permission. For permission or any legal .\" details, please contact .\" Carnegie Mellon University .\" Center for Technology Transfer and Enterprise Creation .\" 4615 Forbes Avenue .\" Suite 302 .\" Pittsburgh, PA 15213 .\" (412) 268-7393, fax: (412) 268-7395 .\" innovation@andrew.cmu.edu * .\" 4. Redistributions of any form whatsoever must retain the following .\" acknowledgment: .\" "This product includes software developed by Computing Services .\" at Carnegie Mellon University (http://www.cmu.edu/computing/)." .\" .\" CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO .\" THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY .\" AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE .\" FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN .\" AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING .\" OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .\" $Id: master.8,v 1.16 2010/01/06 17:01:52 murch Exp $ .SH NAME cyrmaster \- master Cyrus process .SH SYNOPSIS .B cyrmaster [ .B \-C .I alternate imapd.conf ] [ .B \-M .I alternate cyrus.conf ] [ .B \-l .I listen queue ] [ .B \-p .I pidfile ] [ .B \-P .I snmp agentx ping interval ] [ .B \-j .I janitor period ] [ .B \-d ] [ .B \-D ] [ .B \-x .I snmp agentx socket ] .SH DESCRIPTION .I cyrmaster 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 scheduled cleanup/maintenance. .PP If this process dies, then no new sessions will be started. .PP It kills itself and all child processes when it receives a SIGTERM. .SH OPTIONS .TP .BI \-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 cyrus.conf). .TP .BI \-M " alternate cyrus.conf" Specifies an alternate cyrus.conf for use by cyrmaster. .TP .BI \-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 \fBlisten(2)\fR for details. .TP .BI \-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). .TP .BI \-p " pidfile" Use .I pidfile as the pidfile. If not specified, defaults to /var/run/cyrmaster.pid .TP .BI \-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. .TP .BI \-d Start in daemon mode (run in background and disconnect from controlling terminal). .TP .BI \-D Don't close stdin/stdout/stderr. Primiarly useful for debugging. .TP .BI \-x " snmp agentx socket" Address the master agent (most likely snmpd) listens on. Requires net-snmp 5.0 or higher. .SH CONFIGURATION Upon execution, .I cyrmaster reads its configuration information out of the .IR cyrus.conf (5) file. .PP .I cyrmaster 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. .SH NOTES The environment variable \fBCYRUS_VERBOSE\fR 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. .SH BUGS 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. .PP 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. .SH FILES .TP .B /etc/cyrus.conf, /etc/imapd.conf, /var/run/cyrmaster.pid .SH SEE ALSO .PP \fBcyrus.conf(5)\fR, \fBimapd.conf(5)\fR, \fBimapd(8)\fR, \fBpop3d(8)\fR, \fBlmtpd(8)\fR, \fBtimsieved(8)\fR, \fBidled(8)\fR