Edward Rudd eddie at
Thu Feb 26 01:10:19 EST 2004

mailboxes.db is the list of all existing mailboxes and folders in
cyrus..  it is initially empty and as you create accounts and folders on
the mails server it is populated with the names of the folders and the
permissions assigned to them..  you can use the ctl_mboxlist program
included with cyrus to dump and undump the contents of this database..
However, if you mailboxes.db is completely corrupt then you will need to
recreate it.. You should consider implementing a backup procedure for
this file..
I've attached a script I wrote a while ago when I upgraded my cyrus imap
from 1.6 to 2.x and ended up having my mailboxes.db deleted
accidentally. First edit the file and change the path to the imap spool
user/ directory. Then run the script like this.

./ > mailboxes.txt
you can then adjust the contents to your liking.
The format of the *dump* file is 
foldername partition username permissionlist username permissionlist ...
There can be as many username permissionlist combos as needed.
Note that there are NO SPACES in the file.. they are all TABS.
My little bash script adds in all of the folders in the user directory
with ownership on the folder by the mailbox owner and the cyrus
To actually import this into cyrus you need to run this command
su - cyrus
/usr/lib/cyrus-imapd/ctl_mboxlist -u < mailboxes.txt

The program needs to run as the user cyrus.. And you may need to locate
where the ctl_mboxlist binary is on your system as it may not be in that

I am currently in the middle of writing a perl version of this script,
except with many more features (ie. converting to the virtual domain
system in 2.2.x) and auto-detection of the cyrus installation.

Hope this helps some..

On Wed, 2004-02-25 at 23:08, Ian Beyer wrote:
> Hash: SHA1
> I must have royally screwed up something with the installation. SASL
> fails to initialize, and I also see this in the logs:
> Feb 25 22:46:05 schizo imap[16198]: [ID 639319 local6.error] skiplist:
> invalid magic header: /var/imap/mailboxes.db
> Feb 25 22:46:05 schizo imap[16198]: [ID 729713 local6.error] DBERROR:
> opening /var/imap/mailboxes.db: cyrusdb error
> Feb 25 22:46:05 schizo imap[16198]: [ID 637875 local6.error] Fatal
> error: can't read mailboxes file
> Feb 25 22:46:05 schizo master[14053]: [ID 310780 local6.debug] process
> 16198 exited, status 75
> Am I correct in assuming that these two are related?
> I can't seem to find any documentation on how to create mailboxes.db. Is
> it supposed to be created initially?
> in /var/imap is:
> - -rw-------   1 cyrus    mail       16384 Feb 25 20:27 mailboxes.db
> Additionally, cyradm pukes on me:
> Can't locate Cyrus/IMAP/ in @INC (@INC contains:
> /usr/local/lib/perl5/5.8.0/sun4-solaris /usr/local/lib/perl5/5.8.0
> /usr/local/lib/perl5/site_perl/5.8.0/sun4-solaris
> /usr/local/lib/perl5/site_perl/5.8.0 /usr/local/lib/perl5/site_perl .).
> BEGIN failed--compilation aborted.
> and I can't install Cyrus::IMAP::Shell via
> Where in the heck did I go wrong?
> Version: GnuPG v1.2.1 (MingW32)
> iD8DBQFAPX9WRGycTB/It0gRAuwoAKD7PuHxqkWKJehJ3uWg+9kLz2JJfgCeJrcs
> 55xvCjqgUBVMBNg+L2tcZ4U=
> =kv7v
> ---
> Home Page:
> Wiki/FAQ:
> List Archives/Info:
Edward Rudd <eddie at>
-------------- next part --------------
A non-text attachment was scrubbed...
Type: text/x-sh
Size: 248 bytes
Desc: not available
Url :

More information about the Info-cyrus mailing list