Hi! I just made a cpanel migration and my old emails are coming with the backup but when I look at it from a email client or the “read emails” feature from virtualmin, 90% of them are showing as “empty message” or with “unknown sender” + “empty body”. Anyone know why this could happen? I’m running the lastest version of virtualmin + fresh centos 7 on a vps. I didn’t changed anything related to emails on virtualmin/webmin yet. All by default.
Hi! Yes! I tried on emClient on windows and BlueMail on Android both are showing the existence of the emails but both say something in the lines of “empty mail” and opening the email doesn’t actually load anything besides an empty email with no sender or text.
Well, then it is the import / migration from cPanel to Virtualmin which is faulty. I am assuming that you have enough space on the new server and have changed the default quota of 1 GB for the virtual server so it is not these which are causing this problem.
As a workaround, if the old server is still online, you could use a tool, like Imapsync, to copy over your email from the old server to the new one.
Yes. I did try with the smallest account possible that only had one email account with 3 emails there. The whole backup is only 3mb, Because the other account have over 100 emails accounts and I just wanted to make sure everything would work fine before making the move haha. Having said that, I do still have the other server online and working and I wonder if that can be part of the issue, I know emails are very sensitive to the hostname and the old server hostname is “Kara.helware.com” and it’s pointing to old server ip obviously. Now, the new server is also “Kara.helware.com”, i don’t know if that can affect anything or if don’t matter. The new server can send and receive emails without any issues.
Not likely, no. It is okay to have two servers with the same hostname / domain name while you carry out a migration, as long as you are mindful about which is which. There are best practices which tell you how to work around this paradox and switch domains after migration by lowering the TTL but I have found both methods to work perfectly well.
The ‘empty email’ issue is not being caused by colliding hostnames / domain names.
If you don’t mind sending me the test backup, I could import it on one of my spare Virtualmin installs and let you know if it produces the same issue with empty emails here.
Reading/listing emails is not more than just reading/listing ordinary files. You can move Maildir manually. We expect Maildir (directory with all emails) to be under /home/username. You can zip up mail on CPanel, download it and then re-upload it to Virtualmin manually. I think mail on CPanel it’s stored at /home/user/mail, while on Virtualmin it’s /home/user/Maildir.
Did something went wrong while restoring a back up? Mail expected to be restored without any issues.
I don’t want to steal more of your time but to be honest I was thinking on deploying another vps just to try it again in a new install! But if youreally have some free time and a spare VM install, I would appreciate it so much! Thanks!
Hi! No, nothing really happened while restoring the backup, when it was done I stay there and looked every single line, everything finished without any error or warnings!
And yes! cPanel is /home/user/mail, based on your suggestion I just compare it both and they look the same. but anyways, I went and try to manually extract the mail.zip folder to Maildir but sadly, the same problem still persist
Validating migration file ..
.. done
Starting migration of helware.xyz from uploaded file ..
Checking for cPanel features ..
.. found Home directory, Administration user, Nginx website, Log file rotation, Webmin login, BIND DNS domain, Mail for domain.
**However, the follow features are not supported or enabled on your system : Webalizer reporting, virtualmin-awstats. Some functions of the migrated virtual server may not work.**
Checking for clashes and dependencies ..
.. all OK
Creating initial virtual server helware.xyz ..
Creating administration group helwarexyz ..
.. done
Creating administration user helwarexyz ..
.. done
Creating aliases for administration user ..
.. done
Adding administration user to groups ..
.. done
Creating home directory ..
.. done
Creating mailbox for administration user ..
.. done
Adding new DNS zone ..
.. done
Adding to email domains list ..
.. done
Adding DKIM records to DNS domain helware.xyz ..
.. added successfully
Creating Nginx virtual host ..
.. done
Starting PHP FastCGI server ..
.. done
Adding webserver user nginx to server's group ..
.. done
Setting up log file rotation ..
.. done
Creating Webmin user ..
.. done
Saving server details ..
.. done
Re-starting DNS server ..
.. done
Applying Nginx configuration ..
.. done
Re-loading Webmin ..
.. done
.. done
Copying home directory to /home/helwarexyz ..
.. done
Fixing home directory permissions ..
.. done
Re-creating mail users for helware.xyz ..
.. done (migrated 1 mail users)
Moving server owner's mailbox ..
.. done
Copying email aliases ..
.. done (migrated 0 aliases)
Re-creating FTP users ..
.. done (created 0 FTP users)
Successfully migrated 1 servers. [Click here](https://vps03.indiax.com:10000/virtual-server/edit_domain.cgi?dom=16057127334374) to manage the new server.
Despite a successful migration, the mailbox does not display email normally. See:
Yes! The file structure looks fine! The Emails even are in the cur folder, with the correct size /permissions and everything… But it just can’t show from virtualmin or any email client.
Great idea! but I followed your advice and no luck. I deleted every ‘dovecot.’ file under Maildir, restarted the server and nothing… The problem persist!
Yes! You see? The migration finish just fine, not even a warning, and all the files are even in the new server, but for some reason nothing shows up in the client. If you find something let me know please! Thanks for your help! <3
What is mail_location directive set to in /etc/dovecot/conf.d/10-mail.conf file? Is Dovecot running? What do you see on mail logs when connecting to your IMAP server to read your mail?
I was checking my dovecot and in my old cPanel Server I have installed dovecot 2.3.10 and in the new Virtualmin server is included the 2.2.36. Do you think this can be an issue? Do you think it’s possible that somehow the files created with the newer version can’t be readed by the older one.
EDIT: Well… Pretty sure it was actually that… cPanel updated their version of dovecot to 2.3.10 and virtualmin still is running on 2.2.36, but after some struggle I was able to upgrade dovecot to version 2.3.11.3 on virtualmin and now, on the “Read user emails” function from virtualmin still says “Unknow” but in my email client on the phone/desktop it actually works fine now. But i think it broke something else because adding a new email account on my email client is a pain now, it not reliable anymore, on the phone works like a charm but on desktop, sometimes it doesn’t want to send/receive the emails but sometimes it just works fine. Maybe dovecot is depending on another service that also needs to be upgraded? I truly don’t know
Yes! Thanks!
I did try with centos 8, and virtualmin was able to download a newer version of dovecot (2.3.8) which it should work better with the problem of “empty mails” but I Still don’t know haha, because I can even connect an email client to virtualmin with centos 8 yet… All fresh installation in vultr. Every service is running fine but both emails clients I tried (emClient on windows and bluemail on android) are having problems connecting to the IMAP service, SMTP works fine apparently. Having said that, I will keep trying, I really want to make the move to Virtualmin! <3