In this little guide we will see how to upgrade (major.minor changes) and update (patches) Zimbra on CentOS / RHEL from an older version (previous to 8.8.15) to the latest one.
The process showed below works for every Zimbra release up to 8.8.8. After this one, the update process is managed with a simple “yum update” command for zimbra-patch package.
Please note that an outdated version may cause security breaches.
1) Single Server Installation
Before we begin, I suggest to make sure to have a good backup for all users (just in case …)
Note: Since we are performing an upgrade, we assume that ZCS is already installed on your system. For any information related on installation, please refer to the following guide.
a) Download the files
The upgrade process automatically stops and starts services, so you don’t need to stop them before starting the upgrade.
Download Zimbra packages:
Download the latest version of ZCS for CentOS / RHEL:
Note that you have the check on Zimbra website for the latest version available and eventually replace the link above with the right one.
Unpack the archive:
tar xvf zcs-8.8.15_GA_3953.RHEL8_64.20200629025823.tgz
b) Installing the upgrade
Enter the folder you created:
Inside the folder we can give the upgrade installation command:
sudo screen ./install.sh
Note: To help prevent an upgrade (or install) session from terminating before it is completed, it is suggested and reccomended to use “screen” command. It is important when the upgrade includes restoring a configuration that has a large number of accounts. Syntax is very simple. Just type : < screen ./install.sh >
You will be asked a couple of questions. Just reply “Y” to continue:
Checking current number of databases... Do you want to verify message store database integrity? [Y] Verifying integrity of message store databases. This may take a while. mysqld is alive No errors found Checking for installable packages Found zimbra-core Found zimbra-ldap Found zimbra-logger Found zimbra-mta Found zimbra-snmp Found zimbra-store Found zimbra-apache Found zimbra-spell Found zimbra-memcached Found zimbra-proxy The Zimbra Collaboration Server appears already to 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
At the end he will ask you if you want to modify the system. Obviously say Yes:
The system will be modified. Continue? [N] y
After a while (time depends on how many accounts you have on your server) it will end the configuration.
Now we need to run the following commands to fix the default globalconfig values. Open a zmprov interactive shell giving the command
zmprov (and then pressing enter) and execute:
modifyConfig zimbraMtaCommandDirectory /opt/zimbra/common/sbin modifyConfig zimbraMtaDaemonDirectory /opt/zimbra/common/libexec modifyConfig zimbraMtaMailqPath /opt/zimbra/common/sbin/mailq modifyConfig zimbraMtaManpageDirectory /opt/zimbra/common/share/man modifyConfig zimbraMtaNewaliasesPath /opt/zimbra/common/sbin/newaliases modifyConfig zimbraMtaSendmailPath /opt/zimbra/common/sbin/sendmail
One last thing is to disable DSPAM, since it is not longer shipped since ZCS 8.7:
zmprov modifyserver $(zmhostname) zimbraAmavisDSPAMEnabled FALSE zmlocalconfig -e amavis_dspam_enabled=false zmamavisdctl restart
Now the upgrade is complete.
2) Multi Server Installation
On a multi server installation of Zimbra, we have to perform upgrading on every single server in the following order:
- LDAP master server. The LDAP master servers must all be upgraded before proceeding, and they must be running as you upgrade the other servers.
- LDAP replicas where present
- MTA servers
- Proxy servers
- Mailstore servers
The process on how to perform upgrade for each server is the one showed in the first part of this guide.