How to install eGroupware
Quite some time ago I wrote an article that illustrated how eGroupware could serve as a legitimate Exchange replacement (see my article "eGroupware: Your Exchange replacement has arrived"). I very briefly skimmed over the process of installing this outstanding groupware tool. In this case, skimming will get you nowhere.
Recently I revisited the installation of eGroupware and thought I should give a bit more detail on the procedure of installing this rather challenging tool. So in this article I will walk you through the steps on installing eGroupware.
Download and unpack and prerequisites
I will assume you have a working Apache and MySQL installation, on your Linux server, ready to go. If not, go ahead and take care of that major prerequisite first. Once you have completed that task you are ready to being. Almost. There are still a few other prerequisites to get out of the way. You will want to fire up Synaptic (or whatever package manager you use) and make sure you have the following installed:
- PHP
- php-pear
- An SMTP server (Postfix is a good choice)
- IMAP server (Dovecot is a good choice)
There will also be a LOT of pear extensions to install - we will deal with those in a moment. Before going any further create the database you intend on using (let's stick with the name egroupware). If you're not sure how to create the database give my article "Complete database administration with MySQL Workbench" a read.
Now it's time. move the the downloaded tar file for eGroupware into the /var/www/ directory and then unpack it with the commands:
bunzip2 eGroupware-XXX.tar.bz2
Where XXX is the release number.
tar xvzf eGroupware-XXX.tar
Where XXX is the release number.
You will now have a newly created directory /var/www/egroupware. Point your browser to http://ADDRESS_TO_SERVER/egroupware and you will begin the installation process. This is where it gets fun. On the first page you will have a link that allows you to run the installation tests. Click that and you will be presented with a long list of items. Each of these items will be preceded by either a green check, a yellow lightning bolt, or a red X. Anything marked with a red X MUST be resolved. Yellow lightning bolts are only warnings. Some of these you can ignore (for instance features you know you won't use). The green checks - those are all right.
Most likely you will need to deal with some php issues and some Pear modules. Let's examine each.
PHP
In the directory /etc/php5/apache2/ is the main php configuration file (php.ini). You will need to make some modifications to this file in order for the installation to work. Typically the modifications you will need to deal with are:
upload_max_filesize >= 8M By default PHP has a 2MB upload limit. You will need to change that.
mbstring.func_overload = 7 By default this is set to 0. You will need to change this.
Pear
Now you will enjoy quite a few pear module installations. This is hit or miss on how many your system will have installed by default. What you need is the following:
- HTTP_WebDAV_Server
- Net_Socket
- Auth_SASL
- Net_IMAP
- Net_Sieve
- XML_Feed_Parser
- Log
Some of these modules can be found in Synaptic. The best way to locate them is do a search for "pear" (No quotes) and then mark the necessary modules for installation (and then, of course, install them). Those that you do not find you will have to install from the command line, like so:
sudo pear install MODULE_NAME
Typically these install very quickly.
You should now be at the point where all of the X's are gone and all of the necessary warnings have been replaced with green checks as well. The next step is to click Continue with the Header Admin. That we will deal with in our next article.
Final thoughts
It may seem like eGroupware is a pain to install. It's not really as bad as some I have tried to work with. But it is, most certainly, worth the effort.
Advertisement
rtfm Jack … again:
$ man tar
…
$ tar xvjf eGroupware-XXX.tar.bz2
where:
– tar is the program
– xvj are the arguments that turn on eXtract, Verbose, and !!BUNZIP2!!
– f file specifies the file to eXtract Verbosely after BUNZIP2’ing it
sorry there Simon. i’ve always done them separately. been doing so for over ten years now. but i’ll gladly take that advice…no need to go hostile on me. ;-)