Method 1: https://community.zextras.com/migrate-zimbra-from-one-server-to-another-server-method-1/
Method 2: https://community.zextras.com/migrate-zimbra-from-one-server-to-another-server-method-2/
Method 3: https://community.zextras.com/migrate-zimbra-from-one-server-to-another-server-method-3/
See also Zimbra Collaboration Server OSE
Migration Howto: https://community.zextras.com/zimbra-migration-with-zextras-backup
Set the maximum message size on the Zimbra server before proceeding with any inbound migration to avoid problems.
Read this entire page first: Migrate Using Zextras Backup
If you are migrating from one Zimbra ZCS server to another, this is the way to go. It is fairly simple and very effective.
zimbra:zimbra
/opt/zimbra/backup/zextras
/mnt/tmp
zimbra:zimbra
zimbra:zimbra
/mnt/tmp
zimbra:zimbra
mkdir /mnt/tmp chmod 777 /mnt/tmp/ mount -t nfs ip.of.nfs.svr:/path/to/backup /mnt/tmp/ chown -R zimbra:zimbra /mnt/tmp su - zimbra zxsuite backup doExternalRestore /mnt/tmp concurrent_accounts 5
Check all domains:
for dom in $(zmprov gad); do zmprov gd $dom zimbraPublicServiceProtocol zimbraPublicServiceHostname zimbraPublicServicePort; done
Modify all domains:
for dom in $(zmprov gad); do zmprov md $dom zimbraPublicServiceProtocol https zimbraPublicServiceHostname zimbra.yourdomain.tld zimbraPublicServicePort 443; done
Info below this point is old.
Change to the zimbra
user for all commands:
su - zimbra
List the mailboxes to be exported:
zmprov gqu localhost | grep yourdomain.tld|awk {'print $1'}
or, for two domains:
zmprov gqu localhost | egrep 'yourdomain1.tld|yourdomain2.tld' | awk {'print $1'}
Count of the number of mailboxes to be exported:
zmprov gqu localhost | grep yourdomain.tld|awk {'print $1'} |wc -l
The following is an example script to export all mailboxes for one domain to a temporary location. Modify before using!:
localhost
is OK for single server installations-u
and referenced URL for single server/tmp
shownvim /tmp/export-domain-all.sh
#!/bin/bash for i in `zmprov gqu localhost | grep yourdomain.tld | awk {'print $1'}`; do echo $i # file=`echo $i | awk -F '@' '{print $1}'` # /opt/zimbra/bin/zmmailbox -z -t 0 -m "${i}" getRestURL -u "https://hoster.domain.tld" "//?fmt=tgz" > /tmp/${file}.tgz done
chmod +x /tmp/export-domain-all.sh /tmp/export-domain-all.sh
You can run this GUI tool as an administrator for Exchange server to Zimbra server migrations as well as PST imports.
The PC you run it from must have Outlook and .NET Framework 4 installed. Windows 10 comes with .Net Framework installed.
You will need to know the location of your PST file to use this tool.
.pst
filezimbra.virtualarchitects.com
443
See also Migrating to a New Mail Server
Merge Two Mailboxes: https://blog.grs.gr/language/en/how-to-merge-two-zimbra-mailboxes/
https://webhostinggeeks.com/howto/how-to-manage-mailbox-folder-using-zmmailbox-cli-in-zimbra/
su - zimbra
# Entire account zmmailbox -z -m user1@domain.tld getRestURL "//?fmt=tgz" > /tmp/user1.tgz # Folder and subfolders zmmailbox -z -m user1@domain.tld getRestURL -o /tmp/user1.tgz '//?fmt=tgz&query=under:"Folder Name"'
resolve=
parameter has several options:
skip
ignores duplicates of old items, it’s also the default conflict-resolution.modify
changes old items.reset
will delete the old subfolder (or entire mailbox if /).replace
will delete and re-enter items
Reset
will be a bit faster on an empty destination mailbox because it skips most dupe checks.
zmlocalconfig socket_so_timeout zmlocalconfig -e socket_so_timeout=3000000 # change it back when you complete the import(s) zmlocalconfig -e socket_so_timeout=30000 zmlocalconfig --reload
zmmailbox -z -t 0 -m user2@domain.tld postRestURL "//?fmt=tgz&resolve=modify" /tmp/user1.tgz
zmmailbox -z -t 0 -m user2@domain.tld postRestURL "//?fmt=tgz&resolve=reset" /tmp/user1.tgz
This tool appears to require Outlook 2010 (or older?) installed on the machine you are using to run the Migration Wizard.
This tool allows for migration from Outlook (PST) to Zimbra.
Zimbra Admin → Tools and Migration → Download
See also Migrating to a New Mail Server
http://www.mojocode.com/content/moving-domain-multi-domain-zimbra-server
Let's say you are migrating a domain off of your multi-domain Zimbra server, but you don't want to just delete the accounts immediately…
If you edit the domain status to closed, users can't log in and the server won't route mail for the domain…which is a problem. Users of other domains on that server will not be able to send mail to the 'closed' domain.
So, you can easily rename the domain and the server will then route mail normally to the migrated domain.
su - zimbra zmprov --ldap rd mydomain.com mydomain-old.com