
Here’s the problem: The documentation’s example uses commas when it should be using colons. # ps -ef |grep ejabberdĮjabberd 1429 1 0 17:04 ? 00:00:00 /opt/ejabberd-14.12/bin/epmd -daemonĮjabberd 1431 1 3 17:04 ? 00:00:04 /opt/ejabberd-14.12/bin/beam.smp -K true -P 250000 -root /opt/ejabberd-14.12 -progname /opt/ejabberd-14.12/bin/erl -home /opt/ejabberd-14.12 -sname -noshell -noinput -noshell -noinput -pa /opt/ejabberd-14.12/lib/ejabberd-14.12/ebin -mnesia dir -ejabberd log_rate_limit 100 log_rotate_size 10485760 log_rotate_count 1 log_rotate_date "" -s ejabberd -sasl sasl_error_logger in application_master:init/4 line 133 Should the ejabberd server fail to start or if it crashes, there may still be ejabberd processes running in the background. The solution there is pretty simple: chown -R ejabberd:ejabberd /opt/ejabberd-14.12 Sh: /opt/ejabberd-14.12/bin/erl: Permission denied ejabberdctl: line 125: cd: Permission denied Mkdir: cannot create directory `/opt/ejabberd-14.12/database': Permission denied Sed: can't read /opt/ejabberd-14.12/conf/ejabberd.yml: Permission denied usr/sbin/useradd -g ejabberd -p ejabberd -r ejabberdĪnother issue I ran into was that I installed ejabberd as root, but I was trying to run it as the user ejabberd and so got the error: sed: can't read /opt/ejabberd-14.12/conf/ejabberd.yml: Permission denied So after adding that to ejabberd.init, all that is left to do is: cp ejabberd.init /etc/init.d/ejabberd I don’t think chkconfig is distro-specific, I’ll ask ejabberd developers to add this to the distribution package. The numbers after chkconfig are boot-up and shutdown priorities, they may need tunning but those seem safe. # ejabberd Startup script for the ejabberd XMPP Server Just adding the following to the beginning of ejabberd.init does the trick: #!/bin/sh The init file doesn’t support chkconfig because it’s missing the required header:

I’m using CentOS, so I followed along with these comments: There are no external dependencies and no config files in etc. The Challenges Installation Woesīy default, the installation binary puts ejabberd in the path /opt/ejabberd-14.12. It sounded perfect on paper, but in reality it was quite an affair to get it 95% functional.
#Ejabberd centos windows#
We are largely a Windows workstation / Linux server shop, which is why we use Active Directory and I’m running ejabberd on Linux. Out of the box, ejabberd fit the bill on all three with the following features: The reason for all three of these is that it’s an administrative pain to maintain a separate system and have to create all user accounts twice (something I was doing with Google).

Yes, I’ve heard great things about Openfire and others, but I decided to go ejabberd nonetheless. That means running our own IM server.Įjabberd is a well-known workhorse for IM.

We also don’t necessarily want Google being a party to all of our communication. Moreover, we want to limit employees to only messaging other people in our organization. Of course we can’t take the risk of Google actually shutting down our IMs, and I personally don’t like the new Hangouts Chrome app.
#Ejabberd centos update#
Update () : They finally did kill Talk for Windows as of February 23, 2015. (Though this may be an old automated notification from when Google was threatening to EOL Talk last February.) This Monday all users got a broadcast message from Google saying that the Google Talk desktop client will cease working on February 15. My office uses Google Talk for intra-employee instant messaging.
