Kjetil Torgrim Homme wrote:
On Wed, 2006-05-03 at 11:34 -0400, Richmond Dyes wrote:
I have a postfix 2 and cyrus 2.0 server on Redhat 7.2 I want to move
this server to a redhat enterprise 4.3 server with postfix 2.1.5 and
2.2.12.
I have analyzed it and thought this procedure would work
1. Install the new server with the postfix and cyrus on it.
2. Migrate my sasldb file to sasldb2 on the new server
3. Copy my postfix config files to the new server.
4. Start cyrus on my new server.
5. Create all the users with empty mailboxes on the new server.
6. Take down my postfix and cyrus on the old server
7. Change the canonical name in my dns to point to the new server
8. change my MX to point to the new server
9. restart the dns daemon
10. Take down the cyrus on the new server making sure the postfix
is up and running to store new email in deferred. I have tons
of hard drive space for the tmp space needed to store the
email till I can bring up cyrus again.
11. Starting in the root of their inbox, copy each users mail from
the old server to the new. This would include their index and
cache files in each directory in their mailbox structure.
12. Run reconstruct.
13. Start cyrus
14. Flush the mailq to deliver the deferred mail.
Does this procedure make sense and where are the gotchas in it?
the main gotcha is the Berkeley DB versions. you may need to script
conversion into flat files on the old server, and from flat files into
the correct database format on the new server -- consider moving to
skiplist for most files.
a few additional points:
9a. restarting your DNS won't flush the entry in the world's DNS
servers, so you should add a step 0. decrease TTL for MX.
10a. copy the mailboxes.db from the old server. that way you don't need
the -f flag to reconstruct which may give you inconsistent results (it
won't recurse further down a directory without cyrus.index file)
The only problem I have with using the old mailbox.db is the filesystem
structure. As my users started outgrowing the hard drive space, I
would stop cyrus move the files to a new filesystem on a new drive I
had and use a soft link that would point to the new location and
restart cyrus. It actually works fine, but now I want to move all the
mailboxes into one filesystem since I have so much more storage on my
new system.
11a. copy user.seen and user.sub as well.
|
----
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html