Ubuntu Upgrade, Perl Version Broke ZImbra
Solution 1
I did the same mistake as you.
The Zimbra package come with a lot of binary Perl modules compiled against the Perl version expected to be found in the Ubuntu version supported by the installation package.
In other word, the Zimbra installation package for Ubuntu 12.04 will come with Perl modules compiled for the Perl version delivered with Ubuntu 12.04.
The Zimbra installation package for Ubuntu 14.04 will come with the same Perl modules but compiled for the Perl version delivered with Ubuntu 14.04.
In other word, as you are not able to revert the Ubuntu upgrade, you will have now to upgrade your Zimbra version from an Zimbra installation package specifically build for Ubuntu 14.04.
Currently, the last version of Zimbra, the 8.5.x branch is the first to support Ubuntu 14.04.
When doing the upgrade of Zimbra, don't accept the message store database integrity check, as it is done using a script from the currently installed Zimbra version, a script that won't run for the reason that the Perl engine is now upgrade to a different version.
Solution 2
The correct steps are:
Run the installer with only software option:
./install.sh -s
Don't run the Database check integrity
When finished, please run the installer in a regular way:
./install.sh
Related videos on Youtube
terdon
Updated on September 18, 2022Comments
-
terdon over 1 year
Kind of in a bind here, since I heard about the bash bugs last night I decided on upgrading all off my server, not just the packages but the complete OS, it worked fine on all my servers, except my mail server, which was running Ubuntu 12.04 and I upgrade to 14.04.
Everything seem running correctly but when I try to get the Zimbra service running I get the Following:
Perl API version v5.14.0 of Socket does not match v5.18.0 at /usr/share/perl/5.18/XSLoader.pm line 92. Compilation failed in require at /usr/lib/perl/5.18/Sys/Syslog.pm line 10. BEGIN failed--compilation aborted at /usr/lib/perl/5.18/Sys/Syslog.pm line 10. Compilation failed in require at /opt/zimbra/zimbramon/lib/Zimbra/Mon/Logger.pm line 21. BEGIN failed--compilation aborted at /opt/zimbra/zimbramon/lib/Zimbra/Mon/Logger.pm line 21. Compilation failed in require at /opt/zimbra/bin/zmcontrol line 27. BEGIN failed--compilation aborted at /opt/zimbra/bin/zmcontrol line 27.
I was kind of guessing it was problems with my Perl Version, So I downloaded perlbrew, but when I try to change the version from 5.18.0 to 5.14.0 I get the following:
Perl API version v5.14.0 of List::Util does not match v5.18.0 at /usr/share/perl/5.18/XSLoader.pm line 92. Compilation failed in require at /usr/local/share/perl/5.18.2/App/perlbrew.pm line 22. BEGIN failed--compilation aborted at /usr/local/share/perl/5.18.2/App/perlbrew.pm line 22. Compilation failed in require at /usr/local/bin/perlbrew line 6. BEGIN failed--compilation aborted at /usr/local/bin/perlbrew line 6.
Can't see my Zimbra Version, cause from zmcontrol -v I get the following:
Perl API version v5.14.0 of Socket does not match v5.18.0 at /usr/share/perl/5.18/XSLoader.pm line 92. Compilation failed in require at /usr/lib/perl/5.18/Sys/Syslog.pm line 10. BEGIN failed--compilation aborted at /usr/lib/perl/5.18/Sys/Syslog.pm line 10. Compilation failed in require at /opt/zimbra/zimbramon/lib/Zimbra/Mon/Logger.pm line 21. BEGIN failed--compilation aborted at /opt/zimbra/zimbramon/lib/Zimbra/Mon/Logger.pm line 21. Compilation failed in require at /opt/zimbra/bin/zmcontrol line 27. BEGIN failed--compilation aborted at /opt/zimbra/bin/zmcontrol line 27
Quite the large bind for me, any help would be appreciated.