[CentOS] Converting to maildir

Wed Jan 5 03:06:57 UTC 2011
Devin Reade <gdr at gno.org>

I've been happily using and deploying Cyrus based systems for over
a decade, so I'll jump in with my $0.02.

> Many people care about storage format.

It was mentioned previously that Cyrus IMAPd uses an internal format.
Well, it happens that that internal format is really just the mail 
message itself, one per file.  This means that incremental backups
are extreamly effective, including for *huge* mailboxes.  It also
means that if you feel you need to, you can go in as root and read
the message directly.  Mailbox repairs are done by reparsing the 
original email.

Cyrus is solid, scalable, fast, portable, and all the other adjectives
you'd want from a production mail store.  That includes being able
to run it in a master/failover HA cluster, BTW.

An observation was also made about large numbers of small files.
Yes, you do have to be aware of inode allocations and the behavior
of your underlying filesystems with any system that doesn't use
monolithic mailboxes. Grep and wc can help you figure out how much
that should concern you based on your existing mail store. Cyrus
can mitigate the inode and filesystem performance issues by
having mailboxes spread across different filesystems.  If you run
a system with a truly large number of users, then consider Cyrus
Murder for horizontal scaleout.

I find that pairing Cyrus IMAPd with sendmail, horde, MailScanner,
clamav, and a few assorted antispam mechanisms is a really good
combination.  (I'm not saying that postfix or whatever is bad,
but don't sell sendmail short, either.)  That combination can
exist on a single host, but doesn't need to.  In fact, in a few
installations I have multiple sendmails doing remote delivery
to cyrus via network-based lmtp (all locked down, of course).

Regarding quotas, cyrus will take care of that for you at the MDA
level; you don't need filesystem quotas.  (And in fact, because
all files are owned by Cyrus, a filesystem-based quota wouldn't
work anyway.)

Jason, if you decide to go with Cyrus and need advice on integration
with sendmail (since you obviously want to stick with it), drop
me a line privately.

Devin