I’m migrating from a web host with CPanel to my own server with Ubuntu 18.04 and Virtualmin. I couldn’t get the transfer to work, so I downloaded a complete backup from the CPanel backup tool and then migrated it after downloading.
Nothing works. All the files are there and the domains and subdomains, but it’s as if the entire folder structure has been changed. There is now a domains folder that was never there before and all the domains and subdomains point to that folder when all the files are actually in other folders.
So what I get now on each domain I try to preview is an error 403 Forbidden except for the parent domain where I get an “Error” and below that is a white box that says "Invalid SSL certificate : Could not fetch peer certificate.
I’m not quite sure where to begin working on this. Any advice would be greatly appreciated.
Thank you in advance.
I’m not a Virtualmin expert, only having just come over from cPanel myself, due to the licence fee hike.
I was able to export all my cpanel domains and import them without any real issues.
What method did you try to use to export the cpanel backups, I personally selected SCP.
Why couldn’t you get the transfers to work… Error messages?
The transfer never worked. For some reason none of the pathing was correct. It had subdomains listed as the primary domain pointing to different domains they were never associated with before on the Cpanel server.
I’m doing a very slow manual move and it WAS working until I used Virtualmin to repair permissions on it and now I get nothing but Internal Server Errors.
I’m about to give up on this entirely and try something else.
I too have tried cpanel to virtualmin migration…all it did was import the account with, essentially, gigabytes of empty space. It was a total failure.
I have also tried the same thing with Centos Web panel as well and it did not work either…so it’s not just virtualmin that has problems importing cpanel.
What I really struggle with is the exact virtualmin settings needed to import without stuffing things up. It is more reliable for single domains to just copy the web directory across manually, backup emails using an email client, and forget about everything else.
This forum needs to have some decent wiki articles on administering virtualmin. Most of the articles in the docs seem to be targeting end users…that is a bloody stupid philosophy because end users don’t give a shit about such articles…It’s administrators who need advanced documentation to help setup and problem solve. All docs need to focus on that.
Sadly, there’s no easy way for migrating websites wherever panel you come from. Since you’ve chosen Virtualmin, I assume you have more technical experience than a usual cPanel user?
For websites, you could recreate your entire domain/subdomain structure in Virtualmin first, then rsync your files to public_html. Subdomains may have a different directory (I’m not sure with this one though). Then, if you don’t want to mysqldump your DBs, install phpMyAdmin via Install Script and import/export from there. You may have to adjust phpMyAdmin/PHP file upload limits depending on the size of your DB.
Mail migration may not be a straightforward path as cPanel is using Exim vs Postfix for Virtualmin. Try imapsync though.
Comments like ‘The transfer never worked’ and ‘For some reason none of the pathing was correct.’ are very vague in terms of trying to help you.
Just explain exactly what you did, any error messages that were presented to you, and we can help from there.
Firstly let’s not try to over complicate things. Let’s try to migrate a single domain. This is how I accomplished it.
Log in to your domains cpanel (you can do this for any domain as a root user).
Select ‘Backup’ from within cPanel (it’s within the ‘Files’ section of cpanel).
Select the ‘Downlaod a Full Account Backup’ option.
Select the ‘Secure Copy (SCP)’ option from the Backup Destination drop down.
Enter an appropriate email address to be notified of the completed backup and transfer in the ‘Email Address’ text box.
Enter your Virtualmin server IP in the ‘Remote Server’ textbox.
Enter a Virtualmin username with admin and SSH permissions into the ‘Remote User’ textbox.
Enter the password for the Virtualmin user into the ‘Remote Password’ textbox.
Leave the ‘Port’ and ‘Remote Directory’ fields blank (this will write the cPanel backup into the directory root of the Virtualmin user you specified above).
Click on the ‘Generate Backup’ button.
What was the outcome, post any errors here.
At this point all we are doing is getting cpanel to create a full domain / account backup and transfer it via SCP to your Virtualmin server.
Once you have done that successfully we can move on to migrating the domain into virtualmin (ensure that the domain does not already exisit in Virtualmin, if it does exist, delete it (take a backup first)).
Thanks for the replies.
I uninstalled Virtualmin and went with ISPConfig 3 and it worked to perfection. Up and running in 2 hours with no issues whatsoever.
That simply isn’t true. Virtualmin makes the import of an existing cpanel account that is already properly configured and working correctly on the cpanel host very easy, if not a little time consuming, but as part of a properly planned migration is easy to accomplish.
Basically all that needs to happen is cpanel creates a tar file, transfers it to your virtualmin server, you select the tarball and import it into virtualmin. If you have any out of the ordinary configs that may present a problem but to date I have migrated over 75 domains into virtualmin without issue.
The key is properly configured cPanel server.
Properly configured Virtualmin server.
Valid cpanel account backup tarball created by cpanel.
Correctly imported into Virtualmin.
There has been no issue for me in importing mail either, it’s all contained within the cpanel full account backup tarball.
Any issues and errors at any point will be recorded somewhere, log files are your friend when things don’t go to plan, they will detail what failed and when. Then issues can be resolved and people can proceed.
In my personal experience it’s almost always a configuration error that needs correcting when things don’t go to plan, be it apache, nginx, dns, sql etc, etc.