It is surprisingly easy to move an account (website) from one cPanel based server to another.
- First, open cPanel on the old server, and go to the backups tab.
- Next, select Generate/Download a Full Backup
- Select Remote FTP server from the dropdown menu. At this point, enter the FTP details of any account on the new server. Any standard account will do, however do not create an account for the site that is to be moved on the new server beforehand, as you will only have to delete it again to restore the backup.
- For the port option, usually 21 is the correct value.
- Leave the Remote Dir value blank unless you have specifically created a folder for the backup (its easy to find anyway).
- Once you press the Generate Backup button, cPanel will begin to create an archive of the entire site contents, including mail, mysql, logs, web files. Depending on the size of the site this might take a few minutes. (But god damn servers can transfer between each other quickly!).
- Once the email notification arrives that the backup has been transferred, login to the new server as root. If you don’t have root privileges you might wish to contact your hosting company and hopefully they can take over from here.
- The backup file will usually be located in /home/username/backup-mm.dd.yyyy_xx-xx-xx_oldusername.tar.gz
- From the command line, navigate to the backup location, and enter something along the lines of
mv backup-12.18.2008_11-08-09_oldusername.tar.gz /home
- In WHM on the new server, select Restore a Full Backup/cpmove file. At this point it should detect the archive located in /home/. If not you must have put the archive in the wrong place. Enter the old username and press Restore – thats it!
How much better is that than moving an account database by database, db user by db user, mail account by mail account!