CTL_MBOXLIST(8)
π CTL_MBOXLIST π
okay bestie, listen β this is ctl_mboxlist, part of the Cyrus IMAP docs, and it is literally your remote control for the mailbox list database. That's the big book of who-has-what-mailbox. Let's get into it π
πΈ NAME πΈ
ctl_mboxlist β Cyrus IMAP documentation
It does operations on the mailbox list database. That's the whole job. Slay.
β¨ SYNOPSIS β¨
ctl_mboxlist [ -C config-file ] -d [ -x ] [-y] [ -p partition ] [ -f filename ]
ctl_mboxlist [ -C config-file ] -u [ -f filename ] [ -L ]
ctl_mboxlist [ -C config-file ] -m [ -a ] [ -w ] [ -i ] [ -f filename ]
ctl_mboxlist [ -C config-file ] -v [ -f filename ]
like, four whole modes of existence π
π¦ DESCRIPTION π¦
So ctl_mboxlist does various administrative operations on the mailbox list database. That's its whole personality and it's thriving.
It reads its config options out of the imapd.conf(5) file β unless you tell it otherwise with -C. And the configdirectory option in imapd.conf(5)? That's what decides where the mailboxes database lives by default. iykyk πβ¨
π OPTIONS π
-C config-fileβ use config-file as the config file instead of the defaultimapd.conf(5). you're the boss π«Ά-d,--dumpβ dump the contents of the database to standard output, in JSON format. gorgeous, structured, iconic π-x,--remove-dumpedβ when you're doing a dump, also remove the mailboxes you just dumped from the mailbox list. mostly useful when you pair it with-p. it's giving "cleanup era" π§Ή-y,--include-intermediariesβ when doing a dump, also list the intermediary mailboxes that would normally be hidden from IMAP. no more secret folders, we're airing everything out π-p partition,--partition=partitionβ when doing a dump, only dump the mailboxes that live on partition. picky and we respect it π-f filename,--filename=filenameβ use the database at filename instead of the default (configdirectory/mailboxes.db*). β-L,--legacyβ when doing an undump, use the legacy dump parser instead of the JSON parser. supposedly useful for importing a dump made by an older version of Cyrus. vintage vibes, respect the elders π-u,--undumpβ load ("undump") the contents of the database from standard input. the input MUST be a valid JSON file β unless you also passed-L.
IMPORTANT: USE THIS OPTION WITH CARE. If you modified the dump file since it was dumped, or if the file wasn't produced by-din the first place, or it was produced on a different server β you can easily break yourmailboxes.db. Undump will refuse to process a syntactically-invalid dump file, but it can't do much to protect you from a valid file containing bad data. π fr fr be careful
-m,--sync-mupdateβ for backend servers in the Cyrus Murder, synchronize the local mailbox list file with the MUPDATE server. server-to-server gossip, but make it productive πΈ-a,--authoritativeβ when used with-m, assume the local mailboxes file is authoritative. that means: only change the mupdate server, do not delete any local mailboxes.
IMPORTANT: USE THIS OPTION WITH CARE, as it allows namespace collisions into the murder. π we do not play with this one
-w,--warn-onlyβ when used with-m, print out what would be done but do not actually perform the operations. a dress rehearsal, a mood board, a vision β¨-i,--interactiveβ when used with-m, asks for verification before deleting local mailboxes. consent is key bestie π«Ά-v,--verifyβ verify the consistency of the mailbox list database and the spool partition(s). Mailboxes that are in the database but not located on a spool partition, and those that are located on a spool partition (a directory containing a validcyrus.headerfile) but not present in the database, will be reported. Note that this function is very I/O intensive. it will absolutely devour your disk, no cap π³
π EXAMPLES π
ctl_mboxlist -d
Dump the mailboxes list to standard output in JSON format. pretty printer behavior, honestly π
ctl_mboxlist -u < newmboxlist.dump
Undump (restore) the mailboxes database from newmboxlist.dump, where newmboxlist.dump is a JSON file produced by ctl_mboxlist -d.
NOTE: Be very careful with this option. π
ctl_mboxlist -m
Synchronize our mailboxes database with the MUPDATE server. (One may commonly put a command like this into the START section of cyrus.conf(5) on backend nodes of a Murder cluster, to cause the backend to synchronize its mailbox list with the mupdate master upon startup.) set it and forget it era π
ctl_mboxlist -m -w
The same as above, but only show us what would be done, don't actually do it. window shopping ποΈ
ctl_mboxlist -m -a
Populate the Mupdate server from our copy of the mailboxes database.
NOTE: Be very careful with this option, as it can create conflicts in the Murder. π
ctl_mboxlist -m -i
Synchronize our mailboxes database with the MUPDATE server interactively, asking for verification before deleting any local mailboxes. polite and powerful, the dream combo π
π§Έ FILES π§Έ
/etc/imapd.conf<configdirectory>/mailboxes.db
the sacred texts π
π¦ SEE ALSO π¦
go read those too, bestie, they're part of the lore π«Ά
π AUTHOR π
The Cyrus Team, Nic Bernstein (Onlight), Jeroen van Meeuwen (Kolab Systems)
π COPYRIGHT π
1993β2026, The Cyrus Team
and that's the whole page, periodt β¨ this was Cyrus IMAP version 3.12.3, dated Jul 15, 2026 β go forth and do not break your mailboxes.db πππ¦
π¦ where this page comes from
- ubuntu stonking: cyrus-common 3.12.3-3build1 Β· CMU
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms