Zimbra Installation on OpenSUSE 10.3

I’m currently using Zimbra Collaboration Suite as my email server at work and it seems very nice. After upgrading my personal desktop from OpenSUSE 10.2 into OpenSUSE 10.3, I think it’s good idea to try Zimbra on OpenSUSE 10.3. Zimbra 5.0 is still beta, so I tried to used stable version, Zimbra version 4.5.8.

My primary documentation to install Zimbra into OpenSUSE is Zimbra forums. Bigmudcake has been updated his post and it included OpenSUSE 10.3 right now.

Here is the tutorial, with my small notification from my private experience.

  • Make sure the following packages are installed including associated dependencies.
    fetchmail, cURL, libidn, GMP, compat-libstdc++, cron, sudo, compat-openssl097g
  • Make sure package compat-expat1 is installed if using openSUSE 10.2 or libexpat0 for openSUSE 10.3
    ITS REALLY IMPORTANT ALL PACKAGES MENTIONED ARE INSTALLED
  • Remove any packages you do not need to run on your server, this makes your server simpler,
    faster and less likely to conflict to have a conflict with Zimbra. Unless your you are a Linux Expert, remove Apache,MySQL,OpenLDAP,Amavis,Spamassassin, but make sure Postfix is installed. Note : Please take a while to verify this step. If you have some dependencies conflict while uninstall these software, please avoid the software removing.
  • Make sure your DNS server is setup correctly with the hostname having A and MX records.
    Also check the /etc/resolv.conf, /etc/host.conf, and /etc/nsswitch.conf files
    to make sure your DNS server is being accessed correctly. Note : DNS Configuration is one of the main problem while installing Zimbra. You need A and MX records only. These records point to your Zimbra Server.
  • Make sure the hostname you wish to use is located in /etc/hosts file as a Fully Qualified Domain Name (FQDN). Note : FQDN example : "mailserver.vavai.com" rather than "mailserver" only. You can modify /etc/hosts file or using YAST to do this changes.

  • Download the SUSE10 zimbra package and unpack using tar xzvf zimbra_package.tgz
  • If you are running openSUSE 10.3 (not 10.2) perform the following command:
    ln -s /usr/lib/libcurl.so.4.0.0 /usr/lib/libcurl.so.3
  • If your running openSUSE 10.3 (not 10.2) – Edit the file get_plat_tag.sh located in the bin folder of the unpacked zcs zimbra folder, search for the following lines:
    grep "openSUSE 10.2" /etc/SuSE-release > /dev/null 2>&1
    if [ $? = 0 ]; then
    echo "openSUSE_10.2"
    exit 0
    fi

    modify the first line only, and make it as:

    Code:
    grep "openSUSE 10.3" /etc/SuSE-release > /dev/null 2>&1
    if [ $? = 0 ]; then
    echo "openSUSE_10.2"
    exit 0
    fi

  • Edit the file /etc/syslog-ng/syslog-ng.conf and add the following lines
    to the end of the file – if they don’t already exist if they are not exist :

    Code:
    filter f_local0       { facility(local0); }; # zimbra
    destination zmail { file("/var/log/zimbra.log" owner("zimbra") ); }; # zimbra
    log { source(src); filter(f_mail); destination(zmail); }; # zimbra
    destination local0 { file("/var/log/zimbra.log" owner("zimbra") ); }; # zimbra
    log { source(src); filter(f_local0); destination(local0); }; # zimbra
    filter f_auth { facility(auth); }; # zimbra
    destination zmauth { file("/var/log/zimbra.log" owner("zimbra") ); }; # zimbra
    log { source(src); filter(f_auth); destination(zmauth); }; # zimbra

  • Turn off any conflicting services you may be running.
    i.e. for Postfix use the following commands:
    service postfix stop
    chkconfig postfix off
  • Install Zimbra by following the normal installation instructions. (hint: execute ./install.sh from the zcs folder).

    If you are running openSUSE 10.2 (not 10.3) and the installation process reaches the configuration “main menu” you will need to login into your SUSE server with a new seperate shell window and perform the following command:
    chmod 640 /etc/sudoers

    You can then logout of the from the new shell window and return to the installation and continue on.

  • When installation is complete, run the following command
    chkconfig –del zimbra
  • Edit the file /etc/init.d/zimbra and add the following lines below the existing comments at the top of the file.
    Code:
    ### BEGIN INIT INFO
    # Provides: zimbra
    # Required-Start: $network $syslog
    # Required-Stop:
    # Default-Start: 3 5
    # Default-Stop: 0 1 2 6
    # Description: Zimbra mail service
    ### END INIT INFO

  • Replace all instances of "killall -HUP syslogd" with "/sbin/rcsyslog restart" in the files
    /opt/zimbra/bin/zmsyslogsetup
    /opt/zimbra/conf/zmlogrotate
  • Restart the syslog daemon by executing (as root)
    /sbin/rcsyslog restart
  • Run the following commands to get zimbra to startup correctly.
    chkconfig –add zimbra ; chkconfig zimbra on
  • Run the following commands to restart the zimbra server so post-installation changes can take effect.
    su – zimbra
    /opt/zimbra/bin/zmcontrol stop
    /opt/zimbra/bin/zmcontrol start
    exit

The best part about cheap web hosting is the fact that the search engine submission does not cost much either. With cheap hosting, one can save enough to invest in advanced marketing strategies like cpc. One can also think of affording email marketing if the cheapest domain name is employed. Other marketing methodologies like adsense marketing can be inculcated later.

23 thoughts on “Zimbra Installation on OpenSUSE 10.3

  1. GRAMMARIAN in action 😉 :
    1. “Here is the tutorial, with my small notification from *my private experience*.”
    IMHO, it should be *my experience*, without private
    2. “faster and less likely *to conflict with Zimbra”
    IMHO, it should be *to have a conflict*
    3. “If *your running* openSUSE 10.3 (not 10.2)”
    IMHO, it should be *you are running*
    4. “modify the first line only *to now have the lines as:*”
    IMHO, it should be *modify the first line only, and make it as:*
    5. “to the end of the file – *if they don’t already exist :*”
    IMHO, it should be * if they are not exist *
    6. “*Install Zimbra following* the normal installation instructions”
    IMHO, it should be “Install Zimbra *by* followong”
    7. “You can then logout *of* the new shell”
    IMHO, it should be, “logout *from* the new shell”
    Nice tutorial 🙂

  2. GRAMMARIAN in action 😉 :
    1. “Here is the tutorial, with my small notification from *my private experience*.”
    IMHO, it should be *my experience*, without private
    2. “faster and less likely *to conflict with Zimbra”
    IMHO, it should be *to have a conflict*
    3. “If *your running* openSUSE 10.3 (not 10.2)”
    IMHO, it should be *you are running*
    4. “modify the first line only *to now have the lines as:*”
    IMHO, it should be *modify the first line only, and make it as:*
    5. “to the end of the file – *if they don’t already exist :*”
    IMHO, it should be * if they are not exist *
    6. “*Install Zimbra following* the normal installation instructions”
    IMHO, it should be “Install Zimbra *by* followong”
    7. “You can then logout *of* the new shell”
    IMHO, it should be, “logout *from* the new shell”
    Nice tutorial 🙂

  3. “IMHO, it should be if they are not exist ”
    This sounds like shit: “If they are not exist?”
    You mean “If they are not existing?”, which sounds slightly more correct, but still sounds like it came from your anal factory. You would never hear anybody put it either way.
    “If it doesn’t exist” is how the mass of people would say it, most likely talking about the mass of text, instead of a group of lines.
    “If they don’t already exist” sounds much more correct, stays with the context.
    Oh yeah, nice tut btw.

  4. “IMHO, it should be if they are not exist ”
    This sounds like shit: “If they are not exist?”
    You mean “If they are not existing?”, which sounds slightly more correct, but still sounds like it came from your anal factory. You would never hear anybody put it either way.
    “If it doesn’t exist” is how the mass of people would say it, most likely talking about the mass of text, instead of a group of lines.
    “If they don’t already exist” sounds much more correct, stays with the context.
    Oh yeah, nice tut btw.

  5. Thank you for the correction. I confused which one is the best and better (and right), but I agree with your argument. Seems to choose “If it doesn’t exist”. 🙂

  6. Thank you for the correction. I confused which one is the best and better (and right), but I agree with your argument. Seems to choose “If it doesn’t exist”. 🙂

  7. Salah satu target saya menggunakan Google Apps (Gmail Hosted) adalah mengurangi jumlah spam yang menghampiri inbox email-email dikantor. Feature anti spam dari Gmail masih yang paling baik dalam menendang para spammer.Mengingat email server kantor menggun

  8. Salah satu target saya menggunakan Google Apps (Gmail Hosted) adalah mengurangi jumlah spam yang menghampiri inbox email-email dikantor. Feature anti spam dari Gmail masih yang paling baik dalam menendang para spammer.Mengingat email server kantor menggun

  9. Thanks for the great tutorial!
    1 comment though. The file ‘/opt/zimbra/conf/zmlogrotate’ is read only. I had to 1st ‘chmod’ it to 640 and once modded ‘chmod’ back to 444
    You saved my day…

  10. Question:
    If you omit to edit the file /etc/syslog-ng/syslog-ng.conf
    during install, does it make sense to change it afterwards?
    Addition:
    When during install Zimbra checks for the DNS entries and it passes it will prompt you for the domain name when checking the MX entry. I had to insert the domain name again for Zimbra to continue the install.

  11. Question:
    If you omit to edit the file /etc/syslog-ng/syslog-ng.conf
    during install, does it make sense to change it afterwards?
    Addition:
    When during install Zimbra checks for the DNS entries and it passes it will prompt you for the domain name when checking the MX entry. I had to insert the domain name again for Zimbra to continue the install.

  12. If you find that your installation is running well without problem, it doesn’t make sense.
    I’ve forgot to change the syslog-ng.conf file and I can’t go to finished my installation before edit the file as noticed in the installation tutorial.
    DNS checking is OK. The first check is against host name and mx entry and the second case is to verified your domain. Just type your domain name and if the installation accept it, then it should be OK.
    In my experience, I got the question if I have an incomplete DNS setting. It would be better if you recheck your DNS hosting.

  13. Thx for the reply.
    The installation is running well safe 1 problem, the logger function aka stats are not working for me. I tried another solution (deleting ./jetty/work/* files found on zcs forum) for this but it is not working. Does your changes to the syslog-conf file have anything to do with this by any chance?
    FYI, the first DNS checked passed ok, the verification of the domain prompted me for that question. Indeed entering the domain again solved it for me and the installation continued without furhter hickups.

  14. Thx for the reply.
    The installation is running well safe 1 problem, the logger function aka stats are not working for me. I tried another solution (deleting ./jetty/work/* files found on zcs forum) for this but it is not working. Does your changes to the syslog-conf file have anything to do with this by any chance?
    FYI, the first DNS checked passed ok, the verification of the domain prompted me for that question. Indeed entering the domain again solved it for me and the installation continued without furhter hickups.

  15. To answer the question myself, yes it does. The stats/logger won’t work properly without those lines inserted. I stopped zimbra, edited the syslog file as suggested, restarted the syslogger, restarted zimbra and all is working fine now!

  16. To answer the question myself, yes it does. The stats/logger won’t work properly without those lines inserted. I stopped zimbra, edited the syslog file as suggested, restarted the syslogger, restarted zimbra and all is working fine now!

  17. Hi Christian,
    Sorry for a late reply but thanks for the confirmation.
    Have you tried the 5.0.2 version ? It has a nice feature compared to 4.5.X

  18. Hi,
    worked all well for me, starting with a fresh OpenSuSE 10.3 install.
    Small remark: the domain name questions are there to ensure the MTA can do its job. If you build the system somewhere else it will accept a domain name not pointing at the machine itself as long as there is an MX record present (i.e. it complains, but continues).
    One other comment: has anyone else noticed that Zimbra won’t install on a 64bit version of OpenSuSE (hence the fresh install :-)?

  19. Hi,
    worked all well for me, starting with a fresh OpenSuSE 10.3 install.
    Small remark: the domain name questions are there to ensure the MTA can do its job. If you build the system somewhere else it will accept a domain name not pointing at the machine itself as long as there is an MX record present (i.e. it complains, but continues).
    One other comment: has anyone else noticed that Zimbra won’t install on a 64bit version of OpenSuSE (hence the fresh install :-)?

Leave a Reply

Your email address will not be published. Required fields are marked *