Manually upgrading Java JDK with ZCS
For security and performance reasons, it would be a good idea for customers running older versions of ZCS to manually upgrade their Java JDK version. The following steps provide the instructions on doing this - it is a low-risk activity with an easy method to rollback to the current JDK release - both versions remain on the server.
0. Download the correct version of the JDK for your version of Zimbra ZCS:
- ZCS8: Java SE Development Kit (JDK) 7
- ZCS7: Java SE Development Kit (JDK) 1.6
- ZCS6: Java SE Development Kit (JDK) 1.6
- ZCS5: Java SE Development Kit (JDK) 1.6
Manual Install Instructions (using JDK 1.6 as an example, for ZCS7)
1. Download jdk1.6 (latest)
Java SE Development Kit: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
2. Download appropriate version
Use .bin version (not rpm.bin), x64 or x86 as appropriate for your OS install.
3. Move download to mailstore(s) into /var/tmp, open binary
# chmod 755 /var/tmp/jdk-6u45-linux-x64.bin # ./jdk-6u45-linux-x64.bin Unpacking... Checksumming... Extracting... UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu). creating: jdk1.6.0_45/ creating: jdk1.6.0_45/db/ creating: jdk1.6.0_45/db/bin/ inflating: jdk1.6.0_45/db/bin/ij <snip> Creating jdk1.6.0_45/jre/lib/javaws.jar Creating jdk1.6.0_45/jre/lib/deploy.jar Done.
4. Move to /opt/zimbra
(as root) # mv -i jdk1.6.0_45 /opt/zimbra/
5. Copy cacerts file from existing Java setup
# cp /opt/zimbra/java/jre/lib/security/cacerts /opt/zimbra/jdk1.6.0_45/jre/lib/security #replace the existing file # chown zimbra:zimbra /opt/zimbra/jdk1.6.0_45/jre/lib/security/cacerts
6. Remove and replace the symlink
# cd /opt/zimbra # rm java # ln -s /opt/zimbra/jdk1.6.0_45 java
7. Restart the java processes
# su - zimbra $ zmmailboxdctl restart $ zmconfigdctl restart
8. Rollback Plan
Leave the old java version intact just in case. Rolling back is just a matter of altering the symlink for /opt/zimbra/java, and restarting the processes again.