I have recently had to transfer a lot of accounts over from one server to anouther (as it was easier then replacing the hardrive). So I thought I may as well write a guide about it.

Transfer Preperation - 24 hours before

We need to change the TTL system to make sure that the changes on the DNS system take 6 minutes instead of 24 hours. So login to the old server

1. cd /var/named
2. perl -pi.bak -e "s/14400/360/g" *.db
3. /etc/rc.d/init.d/named restart

The Transfer

old server

We need to shut down all the services to stop any changes to the files. Note the sites will still work as we are not shutting down httpd or mysql. The sites will just not be able to upload new files, modify anything in cPanel or get emails. If they did any of this during the transfer the files would be lost.

1. service chkservd stop
2. /etc/rc.d/init.d/exim stop
3. etc/rc.d/init.d/pure-ftpd stop;/scripts/ckillall -9 pure-ftpd;/scripts/ckillall -9 pure-authd;/etc/rc.d/init.d/proftpd stop;
4. /etc/rc.d/init.d/cpanel stop

new server

1. click on copy multiple accounts
2. Fill out the info
3. Select the accounts to transfer, if you chose select all at the bottom note that you will assign every account it's own ip address unless you manually unselect assign ip address to the side of every account.
4. Sit back and relax. You have to wait for the transfer to be complete now

Post Transfer

Ok well lets point the old DNS settings to the new server. So login to the old server

1. cd /var/named
2. perl -pi.bak -e "s/[oldip]/[newip]/g" *.db
3. /etc/rc.d/init.d/named restart

Now everything should be complete and working on your new server.