How-to: cPanel to DA migration

Just finished another round of cPanel to DA migrations for email only servers and thought my feedback might be of value both to leadership and other users, as the cPanel to DA conversion script has been updated since my last bit of feedback.

Two significant things failed:
- Subdomains that were added as Addon Domains in cPanel ended up missing (I intentionally instruct my users to do this and cPanel does allow it, long story but legit use case)
- Catchall emails did not migrate

Email filters not migrating remains relevant to note but not something to hope for a resolution, that's not a reasonable thing to migrate.
 
Just finished another round of cPanel to DA migrations for email only servers and thought my feedback might be of value both to leadership and other users, as the cPanel to DA conversion script has been updated since my last bit of feedback.

Two significant things failed:
- Subdomains that were added as Addon Domains in cPanel ended up missing (I intentionally instruct my users to do this and cPanel does allow it, long story but legit use case)
- Catchall emails did not migrate

Email filters not migrating remains relevant to note but not something to hope for a resolution, that's not a reasonable thing to migrate.
What was the version of the conversion script? May you provide 1 cpmove file for a test?
 
We did a recent single user transfer from a cPanel server to a DirectAdmin server and it looks like the mailclient did not get new mail although the mail was available in webmail. After re-adding the mail account the mail was synchronised correctly again. Is this expected?

DirectAdmin version 1.61.4
cpanel_to_da version 0.0.47
 
We did a recent single user transfer from a cPanel server to a DirectAdmin server and it looks like the mailclient did not get new mail although the mail was available in webmail. After re-adding the mail account the mail was synchronised correctly again. Is this expected?

DirectAdmin version 1.61.4
cpanel_to_da version 0.0.47
Do you mean email account was not created/migrated?
 
Do you mean email account was not created/migrated?

The email account was migrated, but new mail did not show up in Outlook (I think, still checking in on this) until account was removed and re-added to Outlook.

[edit]: The mailclient is Postbox 7.0.30, might be a client issue. Mail did show up on mobile without re-adding account so will test this further with another customer.
 
Last edited:
Seems that catch-all email forwarding configuration is not correctly configured by the migration script. When configured to point to an email address in cPanel, it's left at the default in DirectAdmin.
 
Last edited:
Seems that catch-all email forwarding configuration is not correctly configured in the migration script. When configured to point to an email address in cPanel, it's left at the default in DirectAdmin.
Is catch-all enabled in the package? I'd suggest opening a ticket and providing that cpmove file to get the bug fixed.

Thank you!
 
Does this work for cpanel backup files created by the cpanel user? Or is this ONLY for people that have admin access to the cpanel box? I have a lot of people interested in migrating away from cpanel on other hosts but they cannot run the "/scripts/pkgacct username" command because they do not have that access level. They can create an account backup but it is named like "backup-10.5.2020_10-52-01_somename.tar.gz". Are these files like cpmove files or are they something completely different?
 
Does this work for cpanel backup files created by the cpanel user? Or is this ONLY for people that have admin access to the cpanel box? I have a lot of people interested in migrating away from cpanel on other hosts but they cannot run the "/scripts/pkgacct username" command because they do not have that access level. They can create an account backup but it is named like "backup-10.5.2020_10-52-01_somename.tar.gz". Are these files like cpmove files or are they something completely different?
Yes, it does :) Just rename the file to cpmove-username.tar.gz, that's it.
 
Thanks! That seems to work great. Mail moved over, databases were renamed where needed, config files updated and everything!

Suggestion: When you create an email account on cpanel, it sends an email with configuration info to the newly created mailbox that also has a mobileconfig file attached. It would be nice if this translator could also deposit a similar email into each mailbox as it is created. I was kinda surprised how many people look for those emails....
 
Mmmmm. Trying to transfer a couple of more accounts but I keep getting this error:

tar: Archive is compressed. Use -z option
tar: Error is not recoverable: exiting now
pigz: abort: write error on (Broken pipe)
Failed to extract /home/admin/cpanel/cpmove-dougm.tar.gz to /home/admin/cpanel/dougm_cpanel_to_convert

Error converting file: /home/admin/cpanel/cpmove-dougm.tar.gz: Converting dougm (/home/admin/cpanel/cpmove-dougm.tar.gz)...
Found previous /home/admin/cpanel/dougm. Removing...

File '/home/admin/cpanel/cpmove-dougm.tar.gz' has not been restored

Anyone have any idea what might going on? This was working yesterday...

I "gunzip" them in the shell and then restore the cpmove tarball and it works fine. Just don't see why it can't take the gziped tarballs today...
 
Last edited:
Mmmmm. Trying to transfer a couple of more accounts but I keep getting this error:



Anyone have any idea what might going on? This was working yesterday...

I "gunzip" them in the shell and then restore the cpmove tarball and it works fine. Just don't see why it can't take the gziped tarballs today...
Strange. May you create at ticket with access there? (if no support - just PM me with access)
 
For short I will call cpanel_to_da as "script".
Which is latest version:
script version 0.0.48
On 1.61.5 DA.

Started migrations, also had this catch all issue, except that, subdomains where pointing at public_html. script couldn't find their location:

WARNING! tmp.domain.gr path was set to custom in cPanel: tmp.domain.gr
WARNING! bluegrass.domain.gr path was set to custom in cPanel: bluegrass.domain.gr
WARNING! dev5.domain.gr path was set to custom in cPanel: dev5.domain.gr
WARNING! dev1.domain.gr path was set to custom in cPanel: dev1.domain.gr
WARNING! dev4.domain.gr path was set to custom in cPanel: dev4.domain.gr
WARNING! apps.domain.gr path was set to custom in cPanel: stuff.domain.gr
WARNING! dev2.domain.gr path was set to custom in cPanel: dev2.domain.gr
WARNING! nyc.domain.gr path was set to custom in cPanel: nyc.domain.gr
WARNING! support.domain.gr path was set to custom in cPanel: support.domain.gr
WARNING! patrik.domain.gr path was set to custom in cPanel: patrik.domain.gr
WARNING! dev.domain.gr path was set to custom in cPanel: dev.domain.gr
WARNING! dev6.domain.gr path was set to custom in cPanel: dev6.domain.gr
WARNING! crm.domain.gr path was set to custom in cPanel: crm
WARNING! ip.domain.gr path was set to custom in cPanel: ip.domain.gr
WARNING! dev3.domain.gr path was set to custom in cPanel: dev3.domain.gr
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.
-i used with no filenames on the command line, reading from STDIN.


Other account:

Unable to add forwarder *
Unable to add forwarder *
Unable to add forwarder *
Unable to add forwarder *
Catch all is now set to :fail:
Catch all is now set to :fail:
Catch all is now set to :fail:
Catch all is now set to :fail:
Catch all is now set to :fail:

---
another

Unable to add forwarder *
Unable to add forwarder *
Catch all is now set to :fail:
Catch all is now set to :fail:


And so on... Anyway,


Files migrated, DBs ok, but subdomain location didn't. So any subdomain was pointing at public_html and not to their locations.
I had to manually edit every subdomain to point to its directory.

Crontabs have issues too, they are transferred, but with the old paths. No /domains/ path so they didn't worked out without edit.
Script should have the ability to "understand" path if this is subdomain or addon domain and act accordingly.

Also Openlitespeed doesn't reload properly. I see "openlitespeed is functioning normally blah blah white page" I have to "systemctl restart openlitespeed" on every transfer.


Also, when transferring from cpanel, script - directadmin doesn't create smtp/pop3/etc subdomains.
So Let's Encrypt by default doesn't work. I have to manually create them or manually un-check those subdomains from DA panel because they don't exist and LE SSL doesn't work.

Filters don't work, I've made a feature request (there are two identical basically) but at least script should warn me somehow that "hey, there are filters in this account, I couldn't transfer them" So at least we could avoid issues / transfers with accounts that have mail user or mail global filters.


That's for now. I'll update on the next batch of migrations! :)
 
While I'm not saying that these issues do not need to be fixed, I've always viewed this cpanel_to_da script as a helper script, a script that does the majority of the heavy lifting in converting a cPanel account to a DirectAdmin account. But I encapsulate this cpanel_to_da script in my own custom written script, that does pre and post checks and might fix common known issues post migration as I see fit.

Another words, I'm not directly calling the cpanel_to_da to convert cPanel to DA accounts and praying that it all works. I've written my own bash script that does checks before starting a conversion, then calls the cpanel_to_da script to do the bulk of the work, and then performs other checks and updates after the cpanel_to_da script has finished.

That's how I always viewed this cpanel_to_da script.
 
I found a bug when using cp to da script.

the sub-domains folder is wrong after migration causing sub.domain.com to give 403 error.

DA uses domains/domain.com/public_html/sub
migrator puts the files in domains/domain.com/sub.domain/
 
Hello!

Thanks for the cPanel to DA conversion script. Most of the things went pretty smoothly, however, I'm having troubles with email.

All my emails and email accounts were moved over from what I can tell, however, all emails are held in the queue under "Mail Queue Administration." However, when they finally do go through 3+ hours later, there are multiples of them in my inbox.

What is causing them to be held in the queue?

Thanks for any info!

-Trey
 
Hello!

Thanks for the cPanel to DA conversion script. Most of the things went pretty smoothly, however, I'm having troubles with email.

All my emails and email accounts were moved over from what I can tell, however, all emails are held in the queue under "Mail Queue Administration." However, when they finally do go through 3+ hours later, there are multiples of them in my inbox.

What is causing them to be held in the queue?

Thanks for any info!

-Trey
It most likely a DNS/propagation issue. The old server was fully propagated and the new server is not.

use https://intodns.com/
to see if the domain is all setup.
 
Hello!

Thanks for the cPanel to DA conversion script. Most of the things went pretty smoothly, however, I'm having troubles with email.

All my emails and email accounts were moved over from what I can tell, however, all emails are held in the queue under "Mail Queue Administration." However, when they finally do go through 3+ hours later, there are multiples of them in my inbox.

What is causing them to be held in the queue?

Thanks for any info!

-Trey
It's about DNS Propagation or Mail Quota per hour. You can check All users Mail Quota on List Users
 
Hi, I have a fairly large cpmove-user.tar.gz which is basically an account that has 2-3 email accounts with a huge archive of files.

Restoring via web admin panel fails. Below is the error, it makes no sense there's plenty of space on device.

```
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1480970968.M936388P16876.server60.myhost.net,S=2803905,W=2840454\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1465930566.M11537P8162.server60.myhost.net,S=165704,W=167934\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1477070658.M482569P20575.server60.myhost.net,S=1728477,W=1750975\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1465930570.M992050P8162.server60.myhost.net,S=2551,W=2620\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1468870862.M769231P14463.server60.myhost.net,S=226744,W=229879\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1526508388.M18077P27515.server60.myhost.net,S=12487,W=12803\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1476485668.M500840P12177.server60.myhost.net,S=28154,W=28576\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1603394666.M275568P783978.server100.proudserver.com,S=3403,W=3480\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1454644108.M524914P29437.server60.myhost.net,S=4111,W=4223\:2,: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1454635915.M845782P18379.server60.myhost.net,S=9429,W=9683\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1610393396.M449521P21305.server100.proudserver.com,S=461924,W=468062\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1610569398.M33402P2616.server100.proudserver.com,S=859970,W=871173\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1478640040.M958214P23265.server60.myhost.net,S=273558,W=277187\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1454635915.M932065P18379.server60.myhost.net,S=7108,W=7300\:2,RS: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkdir: No space left on device
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence/cur/1475516126.M916259P9368.server60.myhost.net,S=6503909,W=6588502\:2,S: Cannot open: No such file or directory
tar: homedir/mail/myusersdomain.com/melissa/.Tax Correspondence: Cannot mkFailed to extract /home/admin/converted_user_backup/cpmove-username.tar.gz to /home/admin/converted_user_backup/username_cpanel_to_convert

Error converting file: /home/admin/converted_user_backup/cpmove-username.tar.gz: Converting username (/home/admin/converted_user_backup/cpmove-username.tar.gz)...

File '/home/admin/converted_user_backup/cpmove-username.tar.gz' has not been restored
```
 
Back
Top