MASTER(8)

πŸ“¦ version 3.8.8, in opensuse-leap 16.0

πŸ’… MASTER(8) β€” the Cyrus IMAP queen bee

okay bestie, welcome to MASTER(8), straight out of the Cyrus IMAP docs. this is the manual page for master, and yes she's literally the mother of the whole operation. let's get into it 🐝


✨ NAME ✨

master β€” Cyrus IMAP documentation. the Cyrus IMAP master process. that's her. that's the one. πŸ‘‘


πŸŽ€ SYNOPSIS πŸŽ€

master [ -C config-file ] [ -M alternate cyrus.conf ]
    [ -l listen queue ] [ -p pidfile ]
    [ -j janitor period ] [ -d | -D ] [ -L logfile ]

πŸ’– DESCRIPTION πŸ’–

so master is the process that controls, like, all of the Cyrus processes. she's the one creating every single imapd, pop3d, lmtpd and timsieved child process β€” mother hen energy fr fr. she also handles the scheduled cleanup/maintenance, because somebody has to do the chores. 🧹

⚠️ if this process dies, then no new sessions will be started. not one. zero. the whole vibe check fails. πŸ’€

she kills herself and all her child processes when she receives a SIGTERM β€” dramatic? maybe. necessary? absolutely. πŸ”₯

master reads her configuration options out of the imapd.conf(5) file unless you specify otherwise with -C. iykyk.


🌸 OPTIONS 🌸

  • -C alternate imapd.conf β€” use the config file you specify as config-file instead of the default imapd.conf(5). your config, your rules πŸ’…
  • -M alternate cyrus.conf β€” specifies an alternate cyrus.conf for master to use. swapping the whole blueprint, iconic.
  • -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 details. more room in the club, more people get in 🫢
  • -j janitor full-sweeps per second β€” sets the number 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). she's cleaning, don't stress her out 🧚
  • -p pidfile β€” use pidfile as the pidfile. if not specified, defaults to /var/run/master.pid. know where your girl lives ✨
  • -d β€” start in daemon mode (run in background and disconnect from controlling terminal). bye bye terminal, she's busy 😌
  • -D β€” don't close stdin/stdout/stderr. primarily useful for debugging. note that -d and -D cannot be used together; consider using -L instead. it's giving "pick one, bestie" πŸ™ˆ
  • -L logfile β€” redirect stdout and stderr to the given logfile. receipt keeping, but make it technical πŸ“

πŸ’œ CONFIGURATION πŸ’œ

upon execution, master reads her configuration information out of the cyrus.conf(5) file, or an alternative if -M is used.

master rereads her configuration file when she 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. no shortcuts, sorry babe 😭

master propagates the hangup signal, SIGHUP, to her 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. she's patient, but she is watching πŸ‘€


πŸ¦‹ NOTES πŸ¦‹

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. turn the volume up as much as you want, she'll tell you everything πŸ—£οΈ


🌈 FILES 🌈

  • /etc/cyrus.conf
  • /etc/imapd.conf
  • /var/run/master.pid

⭐ SEE ALSO ⭐

cyrus.conf(5), imapd.conf(5), imapd(8), pop3d(8), lmtpd(8), timsieved(8), idled(8) β€” the whole friend group, go say hi 🫢


πŸ‘‘ AUTHOR πŸ‘‘

The Cyrus Team, Nic Bernstein (Onlight). legends, honestly.


1993–2026, The Cyrus Team


and that's the tea β˜• β€” this iconic little number is from Cyrus IMAP version 3.8.8, dated Sep 09, 2026, and it's filed under MASTER(8). slay, go run your mail server bestie πŸ’–βœ¨

πŸ“¦ where this page comes from