ejabberd on GNU/Linux OpenSuSE 11.0
I heard about the successful usage of ejabberd from weblin’s CTO Heiner yesterday at lunch during BarCamp Hamburg 08.
I was thinking of deploying jabber services for podcast.de for a while now but couldn’t decide which server to take. I checked the ejabberd website. The software looks promising. So I give it a try.
smart install ejabberdCould not find any results. So I check OpenSuSE software search. Luckily it lists a source which I add to my smart sources.
smart channel --edit
[Cyberorg] type = rpm-md name = Cyberorg baseurl = http://download.opensuse.org/repositories/home:/cyberorg:/sugar/openSUSE_11.0/
On to install the ejabberd package:
smart install ejabberdI get a report that I am still missing a package for erlang as ejabberd is written in erlang. I use the OpenSuSE software search again which lists the following source:
[NicoK] type = rpm-md name = NicoK baseurl = http://download.opensuse.org/repositories/home:/NicoK/openSUSE_11.0/
Now I can install ejabberd: ejabberd-2.0.0-2.11@x86_64
I also need one more package: erlang-R12B4-18.11@x86_64
The beauty of installing pre-compiled RPMs on OpenSuSE. You almost always get a rc-file along with the RPM (for server software that is).
rce -> Tab -> rcejabberd
There it is. Great! Now I want to change the default configuration. I would expect a config file to sit in /etc/sysconfig but ejabberd brings its own directory under /etc/ejabberd where two config files reside: ejabberd.cfg and ejabberdctl.cfg.
I read before that ejabberd.cfg is the heart of ejabberd. So I edit this for local usage only ATM.
{hosts, [{ip, {127, 0, 0, 1}}]}.
I give it a try:
rcejabberd start
Starting ejabberd doneLooks like it started. Too bad checking http://127.0.0.1:5280/admin does not work. I check for an error in the log dir /var/log/ejabberd/ just to find out no files have been created. ps aux shows me some erlang stuff is running: /usr/lib64/erlang/erts-5.6.4/bin/epmd -daemon but no jabber process(es) which I would suspect.
I am increasing the loglevel to debug (5):
{loglevel, 5}.
No change. I remove -detached in the run script and try again. This time I get debug messages on the shell:
rcejabberd start Starting ejabberd Erlang (BEAM) emulator version 5.6.4 [source] [64-bit] [smp:2] [async-threads:0] [hipe] [kernel-poll:false] {"init terminating in do_boot",{undef,[{ejabberd,start,[]},{init,start_it,1},{init,start_em,1}]}} Crash dump was written to: erl_crash.dump init terminating in do_boot() failed
At this point I have to give up the experiment as I have no time to fiddle around with erlang problems.
Don't miss a post with our RSS feed! Or get free updates by email.
Leave a Reply