In a previous tutorial we showed how to install ejabberd from source code wich is rather involved process but also flexible.In this tutorial we show a less complicated way to get your ejabberd instance up and running.
This will work for you only if processOne or someone has already provided packages for the operating system flavour you are using.The ProcessOne installation page states that they provide both RPM and DEB packages respectively for RedHat and Debian based systems.
To quote them “ProcessOne now provides RPM and DEB all in one packages as well, since ejabberd version 15.06. This is self-sufficient packages also containing a minimal Erlang distribution. It ensures that it does not interfere with your existing Erlang version. This is also a good way to make sure ejabberd will run with the latest Erlang version.”
.If your operating system is not covered ,you hay have to build from the source code .I show how to install the DEB package on an Ubuntu 14.04LTS system.
Grab yourself a copy of the package from the ProcessOne download page and store it somewhere on your filesystem:
Install your package by running dpkg -i on the downloaded deb package :
After the dpkg -i command is done, the system only tells you that it has finished setting up ejabberd and nothing more.This makes it unclear where ejabberd was installed on the system especially if you are not very familiar with ejabberd or linux in general.If this is the case ,go to your root directory and run the locate command on the ejabberdctl program .
We can see that ejabberdctl is located in my /opt/ejabberd-15.11/bin directory .If we go up one directory we can see the directory structure of our installation.
Note that this directory structure is different from the one you get when you install from the source code ,which is reproduced below for reference .
The most important directories for now are bin and conf , bin is where your control programs are located : ejabberdctl is in there and beside that there are start ,stop and status scripts that you can run directly without going through ejabberdctl.
The conf dir contains your configuration files and the one you will need straight away is ejabberd.yml:
With your control programs and configuration files in place the rest is configuring host names and admin account credentials as we did in the from source install tutorial.
If you run into any problems in your installation process ,don’t hesitate to drop me a line.I hope this will come in handy for someone around there.
Complete step by step video Course on XMPP and Smack on Android now available. By the Same Author of this Tute.Help spread the news.

We publish both written&video tutorials on XMPP and it’s application on different platforms. Subscribe below to be among the first to be notified.
Liked this tutorial ? Would be great if you helped us back, here is how :
- Share this tutorial with your friends
- Buy or recommend video courses from our online school
You can also join our XMPP Learner Square Group on Facebook to find like minded people!
Sir, i am unable to register a new user in the server.
sudo ejabberdctl register admin localhost password
doesnt work, cant log into admin web panel for the same.
the config file also doesnt have this info.
Hi,
Have you followed the instructions here : http://www.blikoon.com/networking/how-to-install-ejabberd-on-linux-ubuntu ?
Sir,I installment it follow your blog.But I don’t know admin password and can you help me?Thank you very much.
You create a normal user account and you add it in the admin list in the configuration file
as shown here http://www.blikoon.com/networking/how-to-install-ejabberd-on-linux-ubuntu