Take a look at the mailutil program in the UW-IMAP distro.

Etienne Goyer wrote:

Hi list,

I am currently migrating a mail server running qpopper to Cyrus imapd.
Part of the job involve migrating the user mailbox in mbox format to
Cyrus.  A lot of these users use pine and other POP client that set
X-UIDL or Status header to set a kind of "seen" flag.  Since the
migration have to be transparent, it is required to preserve that flag.

The user base will continue to use POP for a while with their current
client (eventually migrating to IMAP).  I make the assumption that
setting the Seen flag on the revelant messages will make the Cyrus pop3d
behave the same as qpopper wrt to these messages.  Is this correct ?

For the moment, I thought of three way I could migrate the mailboxes.

My first plan was to use a script I dug from this mailing list called
mboxtocyrus.  It split the mbox file in messages with formail and inject
them with deliver.  However, the "seen" state is not preserved.  Reading
the deliver man page, I can't find a way to have it set the Seen flag.
I wish I could have used that option since I feel it would have been the
simplest and fastest (I have about 20 GB of mbox to migrate) way to do
my migration.  Is there a way I could preserve the Seen state with
deliver ?

My second plan is to follow the first one and work around the problem by writing a Sieve script that will look for the X-UIDL or Status header and set the Seen flag accordingly at delivery. If somebody already have such a Sieve script, I would be grateful if you could share it. I am a
beginner with Sieve and not sure where to start. Also, pointer toward
information about the X-UIDL and Status header will be welcome as I need
to understand what these mean and their implication.

Third and last resort plan is to run both Cyrus imapd and an imap daemon
that read mbox file (most likely UW-imapd) and programatically copy the
messages from the old mailstore to Cyrus.  I wish to avoid that path as
it is the one that require the most work from my part and I feel will
probably be quite slow due to protocol overhead and so on.

Any comments ?  I know mbox to Cyrus migration is a FAQ on the list, but
I never paid attention to these discussion and searching the archive
prove quite tedious and dončt yeld clear answer so far.

Thanks for your insight.

Kenneth Murchison     Oceana Matrix Ltd.
Software Engineer     21 Princeton Place
716-662-8973 x26      Orchard Park, NY 14127
--PGP Public Key--    http://www.oceana.com/~ken/ksm.pgp

Reply via email to