I'm facing a situation with some of my Zimbra servers.

As time goes by I try to 'concentrate' all my Zimbra installs on my main ESXi server for safety reasons, since it is located in a Datacenter with reduntant power supply, ups, lots of storage etc..

Some of my first customers, however, still have their mail server 'at home' and is beginning to be a problem, both in management and safety, so I decided to migrate them all to a new VM in the ESXi machine.

The problem is: HOW?!

Imapsync or zxztozmig (zimbra's CLI utility for migration) are off the list, because I need to migrate Shares, Mountpoints, Tags, Docs and all the other elements of the accounts, not just mail or calendar/addressbooks. In some cases, there are domains on the server that are not to be migrated (internal domains for special applications).

Any ideas? I tried kinda everything.. LVM snapshots, rsync, ldap+store export.. Every solution I tried has some kind of fault that makes it not viable for me..

Thank you for your Help,



You didn't specify what versions of Zimbra you were using (commercial or open source), however, you can just move the /opt/zimbra directory in a cold migration via scp or rsync.

Also, Zimbra gives comprehensive instructions here: http://wiki.zimbra.com/wiki/Moving_ZCS_to_New_Server

  • This wil only work if you are restoring a full server and not migrating several servers to 1 new server. – Micha Kersloot Apr 20 '16 at 7:37

I did that some months ago, but I had no luck on getting shares/etc. What we did was to use the backup cli to export the accounts and import them back on the new servers.


If you have the Network Edition, mayby you can use the build in backup and restore funcionality to backup the accounts on the local installs and restore them on the datacenter server. That should restore all data and not just the e-mails. Last time I did that we did lose some settings on the sharing part. Mostly because the internal id's changed. As you are merging from several servers, i'm not sure you are able to fix that.

You can however create a script which loops through the mailboxes and displays the sharing info wich you can use to recreate the setup on your new server. An quick example:

IFS=$'\n'; for NAAM in `zmmailbox -z -m micha@kovoks.nl gaf| cut -c 43- `;do echo $NAAM;zmmailbox -z -m micha@kovoks.nl gfg "$NAAM"; done

You will probably debug this a bit, but the basics are there.