How-to: Migrate Accounts From One Server To Another (cPanel)

xxkylexx

Well-Known Member
Apr 29, 2006
57
0
156
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!


Regards,
Kyle
 

RKF

Member
Jul 25, 2003
8
0
151
Decent :)

The main problem I have with WHM's move account is that there has to be room on the old server account to build the tar file before downloading it. If the account doesn't have enough room for that, !profit. This negates that rather well.
 
Last edited:

xxkylexx

Well-Known Member
Apr 29, 2006
57
0
156
That step is intended to be completed on the "old server" cPanel account that is being moved, not WHM.
 

iconraul

Member
Mar 14, 2006
8
0
151
I'm migrating account from

WHM 10.8.0 cPanel 10.8.2-S120
RedHat Enterprise 3 i686 - WHM X v3.1.0


to

WHM 10.8.0 cPanel 10.8.2-R119
CentOS 4.3 i686 - WHM X v3.1.0

following the steps above. However, the e-mail accounts were not included in the full backup. Is this normal? How can I export and export e-mail addresses?
 

thomasconor

Member
Aug 2, 2006
17
0
151
Migration help

I'm migrating account from

WHM 10.8.0 cPanel 10.8.2-S120
RedHat Enterprise 3 i686 - WHM X v3.1.0


to

WHM 10.8.0 cPanel 10.8.2-R119
CentOS 4.3 i686 - WHM X v3.1.0

following the steps above. However, the e-mail accounts were not included in the full backup. Is this normal? How can I export and export e-mail addresses?
original posted by iconraul

I am also facing the same issue please comment on this too....

Thanks all
Tom
 

kdarray

Well-Known Member
Apr 13, 2006
81
0
156
Washington
Generate Full backup should include everything, including the mail directories. Is it possible the old server was using mailbox structure and the new (destination) server is running courier-imap with the maildir format. The mail should be visible in ssh, though you would need to run the conversion from mailbox to maildir in order for them to show up for in cpanel, i believe.
 

brianoz

Well-Known Member
Mar 13, 2004
1,146
7
168
Melbourne, Australia
cPanel Access Level
Root Administrator
Generate Full backup may not include Mailman mailing lists - it definitely didn't 18 months or so ago, haven't checked since.

If anyone checks and finds out whether it does now include Mailman mailing lists please post here and let us know!
 

interfx

Member
Mar 29, 2004
11
0
151
A basic questions on these instructions... When I create a new account for "restore" what domain name to I put in (step1)??? Also in step 5, it asks for the new servers address? (do I enter the IP address?) or the domain name of my main account???


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.


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
 

brianoz

Well-Known Member
Mar 13, 2004
1,146
7
168
Melbourne, Australia
cPanel Access Level
Root Administrator
You don't need a real domain name; as you're only using the account for FTP purposes the domain name doesn't get used in any way. WHM requires a domain name though, so just put in something like "myrestoredomain.com" or anything else that doesn't exist.

When you finish the process you can safely delete the "restore" account (it doesn't have to be called restore, of course, anything is fine, and for security's sake it might be wise to use something else).

By the way, I've found the cpanel transfer process to be pretty reliable myself, so I've only used this method once, but it is a guaranteed failsafe method that will always work.