September 09, 2004
Monkeying with Mail

Just FYI, I'm going to be messing around a bit with the mail setup, trying to convince the imap and pop servers to not suck so bad :)

Update: Well, didn't break anything, but in theory might have sped the IMAP up a tiny bit, though I can't tell myself. I tried the tip of removing USERID as according to this and this page, but if anyone knows how to speed up a postfix+uw-imap I'd appreciate it. I was going to move to courier-imap, but moving a system with lots of users and already set up heirarchy of MBox folders to a mailder isn't all that good IMHO :) What'd be nice is a imap server that can deal with both mbox and maildir folders dynamically depending on what the user has set up, so my users can convert over slowly if they want.

Help or suggestions appreciated.



Posted by Arcterex at September 09, 2004 12:13 PM

Comments

qmail (/duck)

well not MH/maildir format?


Posted by: Bear_Foot on September 9, 2004 8:03 PM

When we (mid sized IT ~4000 users) were moving from maildir to mbox I just put uw and cyrus (courier works too) up at the same time and with a little bit of perl magic (see google) got the systems to sync the imap boxes. Basically the old mailserver kept running and when people were ready to move to the new server (mbox), their incoming mail was temp spooled elsewhere, mail was synced between imap servers using the imap protocol (i.e. nothing lost in translation), and then a .forward installed to push all new mail from the old (active smtp) server to the new server. When every user was moved the MX records were changed and the old mailserver was brought down.

In my testing cyrus was a lot faster than courier, but it requires a closed server (no user access to mail files) and is a bit more complicated to setup, although along with that you get a lot more features. Suffice it to say, at work I run cyrus, on my personal server I run courier.

Hope that helps if you plan an eventual move. I imagine it could be done one one server, but it would require a little postfix config so you could choose the delivery agent on a per user basis and running one of the imap servers on a non-standard port. Actually since courier does not need a special MDA, you could get away with just changing procmail for each user rather than postfix.


Posted by: Anonymous on September 9, 2004 8:22 PM

At work, I did basically the same thing as the above anonymous poster.

Old system was Redhat something something with Sendmail, qpopper, UW IMAPD, etc. Lots of limitations, manual provisioning, etc...

I wrote some scripts that automatically created the Cyrus email accounts, migrated the password from /etc/shadow on the old box into LDAP, and moved the email by opening an IMAP connection to the old server and to the new Cyrus, and recursively copying everything over. Did this in batches for 300 users over 100+ odd domains.

Performance of cyrus is great... the only reason the mail server breaks a sweat is for spam/virus scanning.


Posted by: Wim on September 10, 2004 1:43 AM

With UW-IMAPd on my personal mail server, I've been using MH folders. Seems to perform a LOT better, as each message is a seperate file. Haven't had a problem ever; only minor drawback is that when setting up a mail account you have set the root mail path to "#mh/" in Thunderbird, Outlook etc. INBOX is still in /var/spool/mail as an MBOX as usual.


Posted by: Wim on September 10, 2004 11:28 AM
Post a comment
Name:


Email Address:


URL:


Comments:


Remember info?