Prelude:
Hello. I am writing this tutorial because this is a solid method I have used in the past for easily migrating cPanel accounts from one server to another. Using this method, you can transfer accounts from an old server, to a new one, help customers from another host move to your host, etc. This method is very simple, and does not even require root access on one end of the migration. I have found the “Transfer Account from another Server” tool in WHM to not work so well, and break often, so I have used this method.

Requirements:
-cPanel on both servers
-WHM access on the new server (one that the accounts are being moved to)
-root access on the new server

Throughout the instructions I will refer to the server your are transfering the accounts from as the “old server“, and the server to are transfering the accounts to as the “new server“.

Instructions:
1. Log into WHM of your new server and create a new account called “restore“, or anything you like for that matter. Remember the FTP address, username (‘restore’, in this example), and account password. We will need these for later.

2. Log into the cPanel account you are wanting to transfer on the old server.

3. Click on “Backup >> Generate/Download a Full Backup“.

4. Once here, select the backup destination to be “Remote FTP Server“.

5. Enter your email address for verification, follwed by all of the FTP account information for “restore”, which we created on the new server.

Remote Server: new server’s address
Remote User: restore
Remote Password: restore’s password
Port: 21

Then, click “Generate Backup“. This may take some time to backup the files, depending on how large the account is. You should receive an email provided in the above info once it is complete.

6. Now, log into SSH on your new server.

7. Type in the following commands:

cd /home/restore/public_html

ls

After running the list command above (ls), you should see the tar file of the account on the old server. This means that you have successfully sent the file via FTP to your new server.

8. Now move the tar file to your new server’s /home directory with the following command:

mv tar_file_name /home

9. Now, log into WHM on your new server and navigate to “Backup >> Restore a Full Backup/cpmove file

Once here, you should see the old account’s username under “Possible cpmove archives found:“.

If you do not, log back into SSH and be sure that the account’s tar file has been moved into /home.

10. Type in the account name in the text field in WHM, which is proceeded by “Enter the username for the account you wish to restore:“.

11. Click “Restore“.

12. Repeate process for additional accounts.

That’s all there is to it! I have found this way to work alot more sufficiently for moving accounts from one server to another. Hope you all enjoyed!