Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Ask questions about your setup or get help installing ZCS server (ZD section below).
Post Reply
stolen time
Posts: 14
Joined: Wed Sep 11, 2019 7:56 pm

Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by stolen time »

I attempted a green-field installation of Zimbra 9 on a newly-built Ubuntu 20.04.3 server. I tried using the very helpful process provided by ianw1974 on Github, and the guidance at https://github.com/zimbra/zm-build for a "traditional install".

In both cases, I got as far as running the ./install.sh file, saying "Y" to the question "Use Zimbra's package repository", and selecting the packages. Installation then failed with a number of error messages such as "zimbra-core-components is missing". For completeness:

Code: Select all

root@mail1:~/zcs-9.0.0_GA_0001.UBUNTU20_64.20211124201817# ./install.sh

Operations logged to /tmp/install.log.ZE8yX7st
Checking for existing installation...
    zimbra-imapd...NOT FOUND
    zimbra-patch...NOT FOUND
    zimbra-mta-patch...NOT FOUND
    zimbra-proxy-patch...NOT FOUND
    zimbra-license-tools...NOT FOUND
    zimbra-license-extension...NOT FOUND
    zimbra-network-store...NOT FOUND
    zimbra-ldap...NOT FOUND
    zimbra-logger...NOT FOUND
    zimbra-mta...NOT FOUND
    zimbra-dnscache...NOT FOUND
    zimbra-snmp...NOT FOUND
    zimbra-store...NOT FOUND
    zimbra-apache...NOT FOUND
    zimbra-spell...NOT FOUND
    zimbra-convertd...NOT FOUND
    zimbra-memcached...NOT FOUND
    zimbra-proxy...NOT FOUND
    zimbra-archiving...NOT FOUND
    zimbra-onlyoffice...NOT FOUND
    zimbra-core...NOT FOUND


----------------------------------------------------------------------
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



Use Zimbra's package repository [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-proxy (local)
Found zimbra-imapd (local)


Select the packages to install

Install zimbra-ldap [Y]

Install zimbra-logger [Y]

Install zimbra-mta [Y]

Install zimbra-dnscache [Y]

Install zimbra-snmp [Y]

Install zimbra-store [Y]

Install zimbra-apache [Y]

Install zimbra-spell [Y]

Install zimbra-proxy [Y]

Install zimbra-imapd (BETA - for evaluation only) [N]
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-proxy

The system will be modified.  Continue? [N] y

Beginning Installation - see /tmp/install.log.ZE8yX7st for details...

                          zimbra-core-components is missing.                                    ERROR
                            zimbra-timezone-data will be installed.
                         zimbra-common-mbox-conf will be installed.
                   zimbra-common-mbox-native-lib will be installed.
                           zimbra-common-mbox-db will be installed.
                    zimbra-common-mbox-conf-msgs will be installed.
                   zimbra-common-mbox-conf-attrs will be installed.
                         zimbra-common-mbox-docs will be installed.
                  zimbra-common-mbox-conf-rights will be installed.
                          zimbra-common-core-jar will be installed.
                         zimbra-common-core-libs will be installed.
                                     zimbra-core will be installed.
                          zimbra-ldap-components is missing.                                    ERROR
                                     zimbra-ldap will be installed.
                                   zimbra-logger will be installed.
                           zimbra-mta-components is missing.                                    ERROR
                                      zimbra-mta will be installed.
                      zimbra-dnscache-components is missing.                                    ERROR
                                 zimbra-dnscache will be installed.
                          zimbra-snmp-components is missing.                                    ERROR
                                     zimbra-snmp will be installed.
                         zimbra-store-components is missing.                                    ERROR
                       zimbra-jetty-distribution is missing.                                    ERROR
                          zimbra-mbox-store-libs will be installed.
                                zimbra-mbox-conf will be installed.
                   zimbra-mbox-admin-console-war will be installed.
                       zimbra-mbox-webclient-war will be installed.
                                 zimbra-mbox-war will be installed.
                             zimbra-mbox-service will be installed.
                                    zimbra-store will be installed.
                        zimbra-apache-components is missing.                                    ERROR
                                   zimbra-apache will be installed.
                         zimbra-spell-components is missing.                                    ERROR
                                    zimbra-spell will be installed.
                         zimbra-proxy-components is missing.                                    ERROR
                                zimbra-memcached is missing.                                    ERROR
                                    zimbra-proxy will be installed.

Unable to find missing packages in repository. System is not modified.
root@mail1:~/zcs-9.0.0_GA_0001.UBUNTU20_64.20211124201817# 
root@mail1:~/zcs-9.0.0_GA_0001.UBUNTU20_64.20211124201817# apt update
Hit:1 http://gb.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://gb.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:3 http://gb.archive.ubuntu.com/ubuntu focal-backports InRelease
Hit:4 http://gb.archive.ubuntu.com/ubuntu focal-security InRelease
Hit:5 https://repo.zimbra.com/apt/87 focal InRelease
Hit:6 https://repo.zimbra.com/apt/90 focal InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
17 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@mail1:~/zcs-9.0.0_GA_0001.UBUNTU20_64.20211124201817# 
It seems that what is happening is that the packages built locally are getting installed, but several of the packages that should be downloded from Zimbra's repository are not. I inspected the install.sh script and found that the repositories used are defined at line 2179 of utilfunc.sh:

Code: Select all

cat > /etc/apt/sources.list.d/zimbra.list << EOF
deb     [arch=amd64] https://$PACKAGE_SERVER/apt/87 $repo zimbra
deb     [arch=amd64] https://$PACKAGE_SERVER/apt/90 $repo zimbra
deb-src [arch=amd64] https://$PACKAGE_SERVER/apt/87 $repo zimbra
EOF
This produces the file /etc/apt/sources.list.d/zimbra.list:

Code: Select all

deb     [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra
deb     [arch=amd64] https://repo.zimbra.com/apt/90 focal zimbra
deb-src [arch=amd64] https://repo.zimbra.com/apt/87 focal zimbra
By comparison with the repositories used to create 8.8.15 (which I have been using for some time), I speculated that the problem was that Zimbra 9 might need packages from 8.8.15 as well as Zimbra 8.7, and I re-tried with an additional line:

Code: Select all

deb     [arch=amd64] https://$PACKAGE_SERVER/apt/87 $repo zimbra
deb     [arch=amd64] https://$PACKAGE_SERVER/apt/8815 $repo zimbra
deb     [arch=amd64] https://$PACKAGE_SERVER/apt/90 $repo zimbra
deb-src [arch=amd64] https://$PACKAGE_SERVER/apt/87 $repo zimbra
With this in place, it ran through and completed the installation (though I have yet to test the result, there's at least one error message about /sbin/ifconfig but it looks to be just a missing dependency).

Can anyone say please: is this the right way to go, or is there some other problem: it could be that there's a different package server than repo.zimbra.com, for example?
BradC
Outstanding Member
Outstanding Member
Posts: 265
Joined: Tue May 03, 2016 1:39 am

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by BradC »

stolen time wrote:With this in place, it ran through and completed the installation (though I have yet to test the result, there's at least one error message about /sbin/ifconfig but it looks to be just a missing dependency).
Can't help with the rest, but apt install net-tools will sort out the missing ifconfig.
User avatar
ianw1974
Outstanding Member
Outstanding Member
Posts: 229
Joined: Sat Sep 13, 2014 12:45 am
Location: UK and Poland
Contact:

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by ianw1974 »

I got a DM about this today, thanks for pointing it out as I had built Ubuntu 20.04 but never tested it. If patching utilfunc.sh solves the problem and allows the packages to install, then it should be just a case of me patching that file prior to building. I find it strange though that Zimbra hasn't included this in their build process considering that they officially support Ubuntu 20.04 anyway. Obviously those packages wouldn't be in the older repos (8.7) as Ubuntu 20.04 wasn't supported back then as far as I am aware. If they added it for version 8.8.15, then that would explain it. Still, their utilfunc.sh should have had that incorporated to it though for a successful build of Zimbra for Ubuntu 20.04.
oneitonitram
Posts: 1
Joined: Mon Feb 28, 2022 10:47 am

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by oneitonitram »

Hello,
where is the link to that installation instruction as you have put it above there?
User avatar
rosch
Advanced member
Advanced member
Posts: 163
Joined: Sat Sep 13, 2014 1:34 am
ZCS/ZD Version: 9.0.0.ZEXTRAS.20220713.UBUNTU20.64

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by rosch »

When starting zimbra, the web interface is not reachable.
This is the start of log/zmmailboxd.out:

Fatal error: terminating: cannot initialize RightManager
com.zimbra.common.service.ServiceException: parse error: unable to parse right: [setDomainAdminAccountAndCalendarResourceAttrs]
ExceptionId:main:1645966909035:2fe10a049c3609fd
Code:service.PARSE_ERROR
at com.zimbra.common.service.ServiceException.PARSE_ERROR(ServiceException.java:337)
at com.zimbra.cs.account.accesscontrol.RightManager.loadRight(RightManager.java:536)
at com.zimbra.cs.account.accesscontrol.RightManager.loadSystemRights(RightManager.java:498)
at com.zimbra.cs.account.accesscontrol.RightManager.<init>(RightManager.java:188)
at com.zimbra.cs.account.accesscontrol.RightManager.getInstance(RightManager.java:150)
at com.zimbra.cs.account.accesscontrol.RightManager.getInstance(RightManager.java:141)
at com.zimbra.cs.account.accesscontrol.RightManager.getInstance(RightManager.java:136)
at com.zimbra.cs.util.Zimbra.startup(Zimbra.java:257)
at com.zimbra.cs.util.Zimbra.startup(Zimbra.java:177)
at com.zimbra.soap.SoapServlet.init(SoapServlet.java:130)
at javax.servlet.GenericServlet.init(GenericServlet.java:244)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:671)
at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:428)
at org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:750)
at java.base/java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312)
at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735)
at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:734)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:744)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:369)
at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1497)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1459)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:852)
at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:278)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:545)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:119)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:119)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:406)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.server.handler.DebugHandler.doStart(DebugHandler.java:142)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.server.Server.start(Server.java:418)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.server.Server.doStart(Server.java:382)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1572)
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1512)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:554)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1511)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:220)
at org.eclipse.jetty.start.Main.start(Main.java:490)
at org.eclipse.jetty.start.Main.main(Main.java:77)
Caused by: com.zimbra.common.service.ServiceException: system failure: attribute zimbraFeatureWebClientEnabled is not on account
ExceptionId:main:1645966909035:2fe10a049c3609fd
Code:service.FAILURE
at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:293)
at com.zimbra.cs.account.accesscontrol.AttrRight.validateAttr(AttrRight.java:254)
at com.zimbra.cs.account.accesscontrol.RightManager.parseAttr(RightManager.java:286)
at com.zimbra.cs.account.accesscontrol.RightManager.parseAttrs(RightManager.java:299)
at com.zimbra.cs.account.accesscontrol.RightManager.parseRight(RightManager.java:405)
at com.zimbra.cs.account.accesscontrol.RightManager.loadRight(RightManager.java:521)
... 66 more


Running /opt/zimbra/libexec/zmfixperms before starting the server did not help.
User avatar
ianw1974
Outstanding Member
Outstanding Member
Posts: 229
Joined: Sat Sep 13, 2014 12:45 am
Location: UK and Poland
Contact:

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by ianw1974 »

As of today it isn't possible to build Ubuntu 20.04 anymore due to a commit made to zm-zcs-lib on Feb 25 2022. This is what occurs:

This is the build issue:

Code: Select all

     [exec] =========================================================================================================
     [exec] FAILURE MSG : copy 'build/dist/owasp-java-html-sanitizer-20190610.4z.jar' -> 'build/stage/zimbra-mbox-store-libs/opt/zimbra/jetty_base/common/lib/owasp-java-html-sanitizer-20190610.4z.jar' failed!
     [exec] SYSTEM ERR  : No such file or directory
     [exec] 
     [exec] =========================================================================================================
     [exec] --Stack Trace--
     [exec] ./pkg-builder.pl:296 called from main::cpy_file
     [exec] ./pkg-builder.pl:95 called from main::stage_zimbra_store_lib
     [exec] ./pkg-builder.pl:351 called from main::__ANON__
     [exec] ./pkg-builder.pl:410 called from main::make_package
     [exec] ./pkg-builder.pl:423 called from main::depth_first_traverse_package
     [exec] ./pkg-builder.pl:512 called from main::main
     [exec] 
     [exec] =========================================================================================================
     [exec] END at ./pkg-builder.pl line 507.
And here we find that it cannot find the file, because pkg-builder.pl is trying to copy the wrong filename (note the difference 3z versus 4z):

Code: Select all

root@ubuntu20:/home/git/zimbra# find ./ -iname owasp-java-html-sanitizer*
./zm-zcs-lib/build/dist/owasp-java-html-sanitizer-20190610.3z.jar
./java-html-sanitizer-release-20190610.1/build/lib/owasp-java-html-sanitizer-20190610.3z.jar

Code: Select all

root@ubuntu20:/home/git/zimbra# grep -ir owasp-java-html-sanitizer-20190610.4z.jar
zm-zcs-lib/pkg-builder.pl:       cpy_file("build/dist/owasp-java-html-sanitizer-20190610.4z.jar",             "$stage_base_dir/opt/zimbra/jetty_base/common/lib/owasp-java-html-sanitizer-20190610.4z.jar");
so the commit on zm-zcs-lib needs fixing. I'm not sure if this only affects Ubuntu 20.04, or whether it also affects compiling for others. I'm waiting for a compile on RHEL7 to finish to see if it is the case or not.

EDIT:

Nope, fails there also. So it's not distro-specific. So based on this, it's not possible to build Zimbra anymore.
User avatar
Rony
Posts: 45
Joined: Fri Jan 27, 2017 3:50 pm
Location: Canada-Montreal
ZCS/ZD Version: Zimbra 9.0.0_GA_4174
Contact:

Re: Installing Zimbra 9 OSE on Ubuntu 20.04 - Components missing

Post by Rony »

Hi,
I have been waiting for such update as Ubuntu 18 is now a bit old and even 20 will be outdated soon.
I see there are still issues and the upgrade won't go smoothly, I hope Zimbra people will do the necessary to permit a smooth upgrade for Ubuntu.
I am not willing to to reinstall my server from scratch.
Thank you
Post Reply