head	1.4;
access;
symbols;
locks; strict;
comment	@# @;


1.4
date	2001.07.10.23.44.01;	author stack;	state Exp;
branches;
next	1.3;

1.3
date	2001.05.03.01.22.01;	author stack;	state Exp;
branches;
next	1.2;

1.2
date	2001.05.03.01.17.40;	author stack;	state Exp;
branches;
next	1.1;

1.1
date	2001.04.30.20.04.25;	author edk;	state Exp;
branches;
next	;


desc
@@


1.4
log
@Correct spelling of eds' name.
@
text
@<h1>Moving Mail from One Server to Another</h1>
<p>Author: Ed Korthof</p>
<pre>$Id: migration.html,v 1.3 2001/05/03 01:22:01 stack Exp $</pre>

<h2>General Requirements</h2>
<p>
The following general requirements apply regardless of the migration being
done.  Addressing them first can save significant trouble.
<ul>
<li> There must be a user named 'root' in the list of users.  Without this
     user, certain things may not work correctly; and generally the address
     should be a valid one.  What's more, there should be a user named
     'postmaster', to comply with an RFC</li>
</ul>


<h2>0.* To 1.0</h2>
<p>Here is an outline of how to move mail from one server to another -- for
tags 0.* -- 1.0 (e.g. TIGRIS_0_9_2 to TIGRIS_1_0_0)

<ol>
<li> stop qmail on the first machine :
<pre>        old# /etc/rc.d/init.d/qmail stop
</pre>
<li> tar anzu and eyebrowse data directories
<pre>        old# cd /usr/local/tigris/data
        old# tar czf anzu.tar.gz anzu
        old# tar czf eyebrowse.tar.gz eyebrowse
</pre>
<li> copy those tarballs to the new machine
<li> stop mail delivery to ~tigrisq on the new machine:
<pre>        new# chmod +t ~tigrisq
</pre>
<li> comment out the the line in /etc/crontab which would call call_eyebrowse
      on the new machine:
<pre>    4,9,14,19,24,29,34,39,44,49,54,59 * * * * root run-parts /etc/cron.5mins
</pre>
    then make sure call_eyebrowse is not currently running

<li> unpack tarballs of the old data on the new machine:
<pre>        new# cd /usr/local/tigris/data
        new# mv eyebrowse eyebrowse-orig
        new# mv anzu anzu-orig
        new# tar xzf anzu.tar.gz
        new# tar xzf eyebrowse.tar.gz
</pre>
<li> handle helm database migration, run the appropriate migration script

    <li>If the new machine has the same DOMAIN as old machine -- i.e. we're moving mail 
    from TIGRIS.ORG on one hardware to TIGRIS.ORG on other hardware -- then you 
    can skip this step.  If moving mail from one DOMAIN to another, e.g. 
    TIGRIS.ORG to TESTING.TIGRIS.ORG, then you need to run a transform on the 
    contents of the $SANDBOX/data directory.  See the 
    <a hef="http://helm.tigris.org/source/browse/helm/scripts/domain_change.pl">SANDBOX/helm/scripts/domain_change.pl</a> script.</li>
    
<li> enable mail delivery on the new machine:
<pre>        new# chmod -t ~tigrisq
</pre>
<li> make sure permissions are correct:
<pre>        new# /usr/local/tigris/scripts/patch_permissions
</pre>
<li> explicitly index the archives:
<pre>        new# /usr/local/tigris/site/cron/org/tigris/helm/5mins/call_eyebrowse
</pre>
    (this make take a while to complete)
<li> renable the 5 min crontab in /etc/crontab
<li> on the first machine (the old one), edit /var/qmail/control/smtproutes:
    add ".DOMAIN:new-machine-name"  (DOMAIN is the domain name for this
    instance; and new-machine-name is an unambiguous name for the new machine)
<li> start qmail on the first machine
<pre>        old# /etc/rc.d/init.d/qmail start
</pre>
</ol>


<h2>classic to 1.0</h2>
<p>Here is an outline of how to move mail when upgrading from classic
(TIGRIS_BASELINE, or TIGRIS_SEP_13_2000, or previous versions) to 1.0.

<ol>
<li> stop qmail on the first machine:
<pre>        old# /etc/rc.d/init.d/qmail stop
</pre>
<li> tar ~tigrisq :
<pre>        old# cd /usr/local/tigris/data/helm/tigrisq
        old# tar czvf ~/qmail-old.tar.gz .
</pre>
<li> copy the qmail-old.tar.gz tarball to the new machine
<li> stop mail delivery to ~tigrisq on the new machine:
<pre>        new# chmod +t ~tigrisq
</pre>
<li> comment out the line in /etc/crontab which would call call_eyebrowse
        on the new machine:
<pre>    4,9,14,19,24,29,34,39,44,49,54,59 * * * * root run-parts /etc/cron.5mins
</pre>
    then make sure call_eyebrowse is not currently running

<li> unpack the tarball of the old data on the new machine:
<pre>        new# cd /usr/local/tigris/data/helm/
        new# mkdir qmail-old
        new# cd qmail-old
        new# tar xzf ~/qmail-old.tar.gz
</pre>
<li> do the standard helm data migration for other data sources, run
     upgrade_tigris class 1.0.0 watch the output for errors!
    
    <li>If the new machine has the same DOMAIN as old machine -- i.e. we're moving mail 
    from TIGRIS.ORG on one hardware to TIGRIS.ORG on other hardware -- then you 
    can skip this step.  If moving mail from one DOMAIN to another, e.g. 
    TIGRIS.ORG to TESTING.TIGRIS.ORG, then you need to run a transform on the 
    contents of the $SANDBOX/data directory.  See the 
    <a hef="http://helm.tigris.org/source/browse/helm/scripts/domain_change.pl">domain_change.pl</a> script.</li>
    
<li> enable mail delivery on the new machine:
<pre>        new# chmod -t ~tigrisq
</pre>

<li> make sure permissions are correct:
<pre>        new# /usr/local/tigris/scripts/patch_permissions
</pre>
<li> explicitly index the archives:
<pre>        new# /usr/local/tigris/site/cron/org/tigris/helm/5mins/call_eyebrowse
</pre>
    (this make take a while to complete)
<li> renable the 5 min crontab in /etc/crontab
<li> on the first machine (the old one), edit /var/qmail/control/smtproutes:
    add ".DOMAIN:new-machine-name"  (DOMAIN is the domain name for this
    instance; and new-machine-name is an unambiguous name for the new machine)
<li> start qmail on the first machine
<pre>        old# /etc/rc.d/init.d/qmail start
</pre>
</ol>

@


1.3
log
@Making path to script a full one.
@
text
@d2 2
a3 2
<p>Author: Ed Korthoff</p>
<pre>$Id: migration.html,v 1.2 2001/05/03 01:17:40 stack Exp $</pre>
@


1.2
log
@Added author and note on what to do if moving mail to a new domain.
@
text
@d3 1
a3 1
<pre>$Id$</pre>
d54 1
a54 1
    <a hef="http://helm.tigris.org/source/browse/helm/scripts/domain_change.pl">domain_change.pl</a> script.</li>
@


1.1
log
@an initial outline of the steps required for doing data migration.
this covers mainly mail; other items need to be added.
@
text
@d1 3
a3 2
<p>TODO : this currently discusses only mail migration, but it should
include migrating the other data as well.
d13 1
a13 1
     'postmaster', to comply with an RFC
d19 1
a19 1
tags 0.* -- 1.0.
d48 8
d59 1
a59 1
<li> ? make sure permissions are correct:
d106 8
d117 2
a118 1
<li> ? make sure permissions are correct:
@

