For additional guidance, check out our community articles detailing the process of migrating from your current platform to Carbonio CE.
This is the last article in this series. Hope you find method-1 & method-2 informative and helpful. So without any further ado, let’s start the topic.
Overview of Method-3
Detail steps of Method-3
Step-1
Prepare A New Server
Set up your new server. In this method, the base operating system of the new server is not that important. So you can set up any operating system you like. If you need any hints regarding the operating system selection check out our article “Best Available Open-source Operating System for Zimbra Collaboration OSE“. You may also want to take a look at How To Prepare An OS For Zimbra Installation. Now set up Zimbra in the new server. Keep in mind that the Zimbra version should be the same as the old server. During this installation, we will use an option with the installer.
In OLD Server:
root@mail:/tmp/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954# ./install.sh -s
Operations logged to /tmp/install.log.vB4E4n45
Checking for existing installation...
zimbra-drive...NOT FOUND
zimbra-imapd...NOT FOUND
zimbra-patch...NOT FOUND
zimbra-mta-patch...NOT FOUND
zimbra-proxy-patch...NOT FOUND
zimbra-license-tools...NOT FOUND
Output Concatenated
Running Post Installation Configuration:
Software Installation complete!
Operations logged to /tmp/install.log.eo0XwEmW
root@mail:/tmp/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954#
Now you have a new Zimbra server with no user/email data. Keep it that way, we will come to it later.
Step-2
Hold all email transactions at the old server. You can use any external relays to store your incoming emails till your migration is done. After the successful migration, you shall get all stored emails from your relay server. Also, you should be able to receive emails from external senders to your new server. Take a look at the below-referred illustration.
*** You need to modify your MX record as per your activity.
Step-3
Transfer Zimbra From Old Server To New Server
Before starting the transfer process, we have to do a critical task carefully.
Warning: Follow this instruction carefully
Remove all files from /opt/zimbra directory at the new server
root@mail:/tmp/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954# cd /opt/zimbra/
root@mail:/opt/zimbra# rm -rf *
Transfer all files from /opt/zimbra
of Old Server to New Server
[Make sure rsync is working properly between old and new servers]
root@mail:/home/carbonio# rsync --progress -avzHS -e ssh /opt/zimbra/* root@192.168.1.153:/opt/zimbra/
root@192.168.1.153's password:
sending incremental file list
config.46272
2,657 100% 0.00kB/s 0:00:00 (xfr#1, ir-chk=1027/1028)
jetty -> jetty_base
mailboxd -> jetty_base
backup/
bin/
bin/antispam-mysql
1,389 100% 193.78kB/s 0:00:00 (xfr#2, ir-chk=1097/1123)
bin/antispam-mysql.server
5,273 100% 643.68kB/s 0:00:00 (xfr#3, ir-chk=1096/1123)
bin/antispam-mysqladmin
1,224 100% 119.53kB/s 0:00:00 (xfr#4, ir-chk=1095/1123)
bin/ldap
4,562 100% 445.51kB/s 0:00:00 (xfr#5, ir-chk=1094/1123)
bin/mysql
973 100% 86.38kB/s 0:00:00 (xfr#6, ir-chk=1093/1123)
bin/mysql.server
[Output Concatenated]
zmstat/pid/zmstat-nginx.pid
6 100% 0.01kB/s 0:00:00 (xfr#42175, to-chk=2/52402)
zmstat/pid/zmstat-proc.pid
6 100% 0.01kB/s 0:00:00 (xfr#42176, to-chk=1/52402)
zmstat/pid/zmstat-vm.pid
6 100% 0.01kB/s 0:00:00 (xfr#42177, to-chk=0/52402)
sent 1,277,305,685 bytes received 841,931 bytes 1,859,123.81 bytes/sec
total size is 89,398,381,407 speedup is 69.94
root@mail:/home/carbonio#
Stop all Zimbra services.
root@mail:/opt/zimbra# su zimbra
zimbra@mail:~$
zimbra@mail:~$ zmcontrol stop
Host mail.example.com
Stopping zmconfigd...Done.
Stopping zimlet webapp...Done.
Stopping zimbraAdmin webapp...Done.
Stopping zimbra webapp...Done.
Stopping service webapp...Done.
Stopping stats...Done.
Stopping mta...Done.
Stopping spell...Done.
Stopping snmp...Done.
Stopping cbpolicyd...Done.
Stopping archiving...Done.
Stopping opendkim...Done.
Stopping amavis...Done.
Stopping antivirus...Done.
Stopping antispam...Done.
Stopping proxy...Done.
Stopping memcached...Done.
Stopping mailbox...Done.
Stopping logger...Done.
Stopping dnscache...Done.
Stopping ldap...Done.
zimbra@mail:~$
Step-4
Fix all permissions.
root@mail:/opt/zimbra# /opt/zimbra/libexec/zmfixperms -extended -v
Fixing ownership and permissions on /opt/zimbra/conf
Fixing permissions on /opt/zimbra/conf/ca
Fixing permissions on /opt/zimbra/conf/ca/ca.pem
Fixing ownership and permissions on /opt/zimbra/conf/ldap-canonical.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-slm.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-transport.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-vad.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-vam.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-vmd.cf
Fixing ownership and permissions on /opt/zimbra/conf/ldap-vmm.cf
Fixing permissions and ownership on /opt/zimbra/conf/imapd.crt
Fixing permissions and ownership on /opt/zimbra/conf/nginx.crt
Fixing permissions and ownership on /opt/zimbra/conf/slapd.crt
Fixing permissions and ownership on /opt/zimbra/conf/smtpd.crt
Fixing permissions and ownership on /opt/zimbra/conf/imapd.key
Fixing permissions and ownership on /opt/zimbra/conf/nginx.key
Fixing permissions and ownership on /opt/zimbra/conf/root.key
Fixing permissions and ownership on /opt/zimbra/conf/slapd.key
Fixing permissions and ownership on /opt/zimbra/conf/smtpd.key
Fixing permissions and ownership on /opt/zimbra/conf/zmssl.cnf
Fixing ownership and permissions on /var/log/zimbra.log
Fixing ownership and permissions on /opt/zimbra/conf/crontabs
Fixing ownership and permissions on /opt/zimbra/common/lib/jylibs
Fixing ownership and permissions on /opt/zimbra/lib
Fixing ownership and permissions on /opt/zimbra/db
Fixing ownership and permissions on /opt/zimbra/data/sasl2/state
Fixing ownership and permissions on /opt/zimbra/data/amavisd
Fixing ownership and permissions on /opt/zimbra/jetty
Fixing ownership and permissions on /opt/zimbra/ssl
Fixing ownership and permissions on /opt/zimbra/data/ldap
Fixing ownership and permissions on /opt/zimbra/logger/db
Fixing ownership and permissions on /opt/zimbra/zmstat
Fixing postfix related permissions
Fixing ownership and permissions on /opt/zimbra/data/postfix
Fixing ownership of /opt/zimbra/index
Fixing ownership of /opt/zimbra/backup
Fixing ownership of /opt/zimbra/redolog
Fixing ownership of /opt/zimbra/store
root@mail:/opt/zimbra#
Now again install Zimbra with the platform override option.
root@mail:/tmp/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954# ./install.sh --platform-override
Operations logged to /tmp/install.log.OwCT5zbd
Checking for existing installation...
zimbra-drive...FOUND zimbra-drive-1.0.13.1576152256-1.u20
zimbra-imapd...NOT FOUND
zimbra-patch...FOUND zimbra-patch-8.8.15.1658841204.p33-1.u20
zimbra-mta-patch...FOUND zimbra-mta-patch-8.8.15.1658841204.p33-1.u20
zimbra-proxy-patch...FOUND zimbra-proxy-patch-8.8.15.1658841204.p33-1.u20
zimbra-license-tools...NOT FOUND
zimbra-license-extension...NOT FOUND
zimbra-network-store...NOT FOUND
zimbra-network-modules-ng...NOT FOUND
zimbra-chat...FOUND zimbra-chat-3.0.2.1655178187-1.u20
zimbra-talk...NOT FOUND
zimbra-ldap...FOUND zimbra-ldap-8.8.15.GA.4179.UBUNTU20.64
zimbra-logger...FOUND zimbra-logger-8.8.15.GA.4179.UBUNTU20.64
zimbra-mta...FOUND zimbra-mta-8.8.15.GA.4179.UBUNTU20.64
zimbra-dnscache...FOUND zimbra-dnscache-8.8.15.GA.4179.UBUNTU20.64
zimbra-snmp...FOUND zimbra-snmp-8.8.15.GA.4179.UBUNTU20.64
zimbra-store...FOUND zimbra-store-8.8.15.GA.4179.UBUNTU20.64
zimbra-apache...FOUND zimbra-apache-8.8.15.GA.4179.UBUNTU20.64
zimbra-spell...FOUND zimbra-spell-8.8.15.GA.4179.UBUNTU20.64
zimbra-convertd...NOT FOUND
zimbra-memcached...FOUND zimbra-memcached-1.6.5-1zimbra8.7b1.20.04
zimbra-proxy...FOUND zimbra-proxy-8.8.15.GA.4179.UBUNTU20.64
zimbra-archiving...NOT FOUND
zimbra-core...FOUND zimbra-core-8.8.15.GA.4179.UBUNTU20.64
ZCS upgrade from 8.8.15 to 8.8.15 will be performed.
Validating ldap configuration
LDAP validation succeeded. Continuing.
----------------------------------------------------------------------
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
SYNACOR, INC. ("SYNACOR") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.
License Terms for this Zimbra Collaboration Suite Software:
https://www.zimbra.com/license/zimbra-public-eula-2-6.html
----------------------------------------------------------------------
Do you agree with the terms of the software license agreement? [N] Y
Checking current number of databases...
Do you want to verify message store database integrity? [Y] Y
Verifying integrity of message store databases. This may take a while.
Starting mysqld...done.
mysqld is alive
No errors found
mysqld is alive
Stopping mysqld... done.
Use Zimbra's package repository [Y] Y
Warning: apt-key output should not be parsed (stdout is not a terminal)
Importing Zimbra GPG key
Configuring package repository
Checking for installable packages
Found zimbra-core (local)
Found zimbra-ldap (local)
Found zimbra-logger (local)
Found zimbra-mta (local)
Found zimbra-dnscache (local)
Found zimbra-snmp (local)
Found zimbra-store (local)
Found zimbra-apache (local)
Found zimbra-spell (local)
Found zimbra-memcached (repo)
Found zimbra-proxy (local)
Found zimbra-drive (repo)
Found zimbra-imapd (local)
Found zimbra-patch (repo)
Found zimbra-mta-patch (repo)
Found zimbra-proxy-patch (repo)
The Zimbra Collaboration Server appears to already be installed.
It can be upgraded with no effect on existing accounts,
or the current installation can be completely removed prior
to installation for a clean install.
Do you wish to upgrade? [Y] Y
Scanning for any new or additional packages available for installation
Existing packages will be upgraded
Upgrading zimbra-core
Upgrading zimbra-ldap
Upgrading zimbra-logger
Upgrading zimbra-mta
Upgrading zimbra-dnscache
Upgrading zimbra-snmp
Upgrading zimbra-store
Upgrading zimbra-apache
Upgrading zimbra-spell
Upgrading zimbra-memcached
Upgrading zimbra-proxy
Upgrading zimbra-drive
Install zimbra-imapd (BETA - for evaluation only) [N] Y
Upgrading zimbra-patch
Upgrading zimbra-mta-patch
Upgrading zimbra-proxy-patch
Upgrading zimbra-chat
Checking required space for zimbra-core
Checking space for zimbra-store
Checking required packages for zimbra-store
zimbra-store package check complete.
Installing:
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-dnscache
zimbra-snmp
zimbra-store
zimbra-apache
zimbra-spell
zimbra-memcached
zimbra-proxy
zimbra-drive
zimbra-imapd
zimbra-patch
zimbra-mta-patch
zimbra-proxy-patch
zimbra-chat
The system will be modified. Continue? [N] Y
Beginning Installation - see /tmp/install.log.OwCT5zbd for details...
zimbra-core-components will be downloaded and installed.
zimbra-timezone-data will be installed.
zimbra-common-mbox-conf-attrs will be installed.
zimbra-common-core-jar will be installed.
zimbra-common-mbox-conf-rights will be installed.
zimbra-common-core-libs will be installed.
zimbra-common-mbox-conf-msgs will be installed.
zimbra-common-mbox-db will be installed.
zimbra-common-mbox-docs will be installed.
zimbra-common-mbox-native-lib will be installed.
zimbra-common-mbox-conf will be installed.
zimbra-core will be installed.
zimbra-ldap-components will be downloaded and installed.
zimbra-ldap will be installed.
zimbra-logger will be installed.
zimbra-mta-components will be downloaded and installed.
zimbra-mta will be installed.
zimbra-dnscache-components will be downloaded and installed.
zimbra-dnscache will be installed.
zimbra-snmp-components will be downloaded and installed.
zimbra-snmp will be installed.
zimbra-store-components will be downloaded and installed.
zimbra-jetty-distribution will be downloaded and installed.
zimbra-mbox-store-libs will be installed.
zimbra-mbox-conf will be installed.
zimbra-mbox-admin-console-war will be installed.
zimbra-mbox-war will be installed.
zimbra-mbox-webclient-war will be installed.
zimbra-mbox-service will be installed.
zimbra-store will be installed.
zimbra-apache-components will be downloaded and installed.
zimbra-apache will be installed.
zimbra-spell-components will be downloaded and installed.
zimbra-spell will be installed.
zimbra-memcached will be downloaded and installed.
zimbra-proxy-components will be downloaded and installed.
zimbra-proxy will be installed.
zimbra-drive will be downloaded and installed (later).
zimbra-imapd will be installed.
zimbra-patch will be downloaded and installed (later).
zimbra-mta-patch will be downloaded and installed (later).
zimbra-proxy-patch will be downloaded and installed (later).
zimbra-chat will be downloaded and installed (later).
Downloading packages (11):
zimbra-core-components
zimbra-ldap-components
zimbra-mta-components
zimbra-dnscache-components
zimbra-snmp-components
zimbra-store-components
zimbra-jetty-distribution
zimbra-apache-components
zimbra-spell-components
zimbra-memcached
zimbra-proxy-components
...done
Saving existing configuration file to /opt/zimbra/.saveconfig
Shutting down zimbra mail
Backing up the ldap database...done.
Removing existing packages
zimbra-drive...done
zimbra-patch...done
zimbra-mta-patch...done
zimbra-proxy-patch...done
zimbra-chat...done
zimbra-ldap...done
zimbra-logger...done
zimbra-mta...done
zimbra-dnscache...done
zimbra-snmp...done
zimbra-store...done
zimbra-spell...done
zimbra-memcached...done
zimbra-core...done
Removing deployed webapp directories
Installing repo packages (11):
zimbra-core-components
zimbra-ldap-components
zimbra-mta-components
zimbra-dnscache-components
zimbra-snmp-components
zimbra-store-components
zimbra-jetty-distribution
zimbra-apache-components
zimbra-spell-components
zimbra-memcached
zimbra-proxy-components
...done
Installing local packages (27):
zimbra-timezone-data
zimbra-common-mbox-conf-attrs
zimbra-common-core-jar
zimbra-common-mbox-conf-rights
zimbra-common-core-libs
zimbra-common-mbox-conf-msgs
zimbra-common-mbox-db
zimbra-common-mbox-docs
zimbra-common-mbox-native-lib
zimbra-common-mbox-conf
zimbra-core
zimbra-ldap
zimbra-logger
zimbra-mta
zimbra-dnscache
zimbra-snmp
zimbra-mbox-store-libs
zimbra-mbox-conf
zimbra-mbox-admin-console-war
zimbra-mbox-war
zimbra-mbox-webclient-war
zimbra-mbox-service
zimbra-store
zimbra-apache
zimbra-spell
zimbra-proxy
zimbra-imapd
...done
Installing extra packages (5):
zimbra-drive
zimbra-patch
zimbra-mta-patch
zimbra-proxy-patch
zimbra-chat
...done
Running Post Installation Configuration:
Setting defaults from saved config in /opt/zimbra/.saveconfig/config.save
HOSTNAME=mail.example.com
LDAPHOST=mail.example.com
LDAPPORT=389
SNMPTRAPHOST=mail.example.com
SMTPSOURCE=admin@example.com
SMTPDEST=admin@example.com
SNMPNOTIFY=yes
SMTPNOTIFY=yes
LDAPROOTPW=*
LDAPZIMBRAPW=*
LDAPPOSTPW=*
LDAPREPPW=*
LDAPAMAVISPW=*
LDAPNGINXPW=*
Restoring existing configuration file from /opt/zimbra/.saveconfig/localconfig.xml...done
Operations logged to /tmp/zmsetup.20220825-121704.log
Adding /opt/zimbra/conf/ca/ca.pem to cacerts
Checking ldap status....not running.
Starting ldap...done.
Setting defaults...sh: 1: /sbin/ifconfig: not found
done.
Setting defaults from existing config...done.
Checking for port conflicts
sh: 1: netstat: not found
Setting defaults from ldap...done.
Saving config in /opt/zimbra/config.81144...done.
Operations logged to /tmp/zmsetup.20220825-121704.log
Setting local config values...done.
Initializing core config...Setting up CA...done.
Deploying CA to /opt/zimbra/conf/ca ...done.
Setting replication password...done.
Setting Postfix password...done.
Setting amavis password...done.
Setting nginx password...done.
Creating server entry for mail.example.com...already exists.
Setting Zimbra IP Mode...done.
Saving CA in ldap...done.
Saving SSL Certificate in ldap...done.
Setting spell check URL...done.
Setting service ports on mail.example.com...done.
Setting Keyboard Shortcut Preferences...done.
Setting zimbraFeatureTasksEnabled=TRUE...done.
Setting zimbraFeatureBriefcasesEnabled=TRUE...done.
Setting Master DNS IP address(es)...done.
Setting DNS cache tcp lookup preference...done.
Setting DNS cache udp lookup preference...done.
Setting DNS tcp upstream preference...done.
Updating zimbraLDAPSchemaVersion to version '1649766200'
Setting TimeZone Preference...done.
Initializing mta config...done.
Setting services on mail.example.com...done.
Adding mail.example.com to zimbraMailHostPool in default COS...done.
Creating user spam.uyn1iiq_@example.com...already exists.
Creating user ham.lz0gvh921e@example.com...already exists.
Creating user virus-quarantine.vcrgu214f@example.com...already exists.
Setting spam training and Anti-virus quarantine accounts...done.
Configuring SNMP...done.
Setting up syslog.conf...done.
Enabling IMAP protocol for zimbra-imapd service...done.
Enabling IMAPS protocol for zimbra-imapd service...done.
Starting servers...done.
Enabling jetty logging...done.
Checking for deprecated zimlets...done.
Checking for network zimlets in LDAP...done.
Removing network zimlets...
Finished removing network zimlets.
Installing common zimlets...
com_zimbra_adminversioncheck...done.
com_zimbra_mailarchive...done.
com_zimbra_srchhighlighter...done.
com_zextras_chat_open...done.
com_zimbra_webex...done.
com_zimbra_viewmail...done.
com_zimbra_clientuploader...done.
com_zimbra_tooltip...done.
com_zimbra_email...done.
com_zimbra_date...done.
com_zimbra_ymemoticons...done.
com_zimbra_attachcontacts...done.
com_zimbra_cert_manager...done.
com_zimbra_url...done.
com_zimbra_phone...done.
com_zimbra_attachmail...done.
com_zimbra_proxy_config...done.
com_zextras_drive_open...done.
com_zimbra_bulkprovision...done.
Finished installing common zimlets.
Getting list of all zimlets...done.
Updating non-standard zimlets...
Finished updating non-standard zimlets.
Restarting mailboxd...done.
Skipping creation of default domain GAL sync account - existing install detected.
You have the option of notifying Zimbra of your installation.
This helps us to track the uptake of the Zimbra Collaboration Server.
The only information that will be transmitted is:
The VERSION of zcs installed (8.8.15_GA_4179_UBUNTU20_64)
The ADMIN EMAIL ADDRESS created (admin@example.com)
Notify Zimbra of your installation? [Yes] No
Notification skipped
Checking if the NG started running...done.
Setting up zimbra crontab...done.
Moving /tmp/zmsetup.20220825-121704.log to /opt/zimbra/log
Configuration complete - press return to exit
root@mail:/tmp/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954#
Now your new server is ready with all the user accounts and previous data.
Step-5
Now it’s time to activate your new server. First, release your emails from the external relay to your new server. Then make necessary changes in your DNS record to make your new server active.
With this step, you have migrated your server successfully.
We hope you have enjoyed all three articles regarding the migration process. All these methods are manual and need human intervention from time to time. There are chances that they may not work as they intend to due to various reasons.
Therefore, if your data is critical to you, we would recommend you get an enterprise-level, automatic process to migrate your server. Is there anything else in your mind better than Zextras Suite?
That’s all for today.