ejabberd_ctl.beam not found

I installed ejabberd 16.01 by the Linux binary installer. However it shows below error whenI run the ejabberdctl command:

root@xmpp:/opt/ejabberd-16.01/bin# ./ejabberdctl help

=ERROR REPORT==== 5-Feb-2016::02:35:12 ===
File operation error: eacces. Target: /opt/ejabberd-16.01/lib/xmerl-1.3.7/ebin/ejabberd_ctl.beam. Function: get_file. Process: code_server.
Usage: ejabberdctl [--no-timeout] [--node nodename] [--auth user host password] command [options]
......

I confirmed that the target file ejabberd_ctl.beam does not exist on my Ubuntu. How can I fix it?

Thanks,
Matthew

*bump* I also get this. Any

*bump*

I also get this. Any fix?

Strange. The file is

Strange.

The file is correctly found in the proper place:

% find /Applications/ejabberd-16.01 -name ejabberd_ctl.beam
/Applications/ejabberd-16.01/lib/ejabberd-16.01/ebin/ejabberd_ctl.beam

Same on linux

$ find ejabberd-16.01/ -name ejabberd_ctl.beam
ejabberd-16.01/lib/ejabberd-16.01/ebin/ejabberd_ctl.beam

What version did you install? How did you install it? As root or normal user? rpm or deb from process-one ?

Just did this again this

Just did this again this morning. I just installed as root from the process-one Linux repo [1] into a docker container (linux 16.04 latest on docker hub [2]). The file is indeed in the correct place but for some reason it is looking in that folder.

root@6321a65c05b0:~# /opt/ejabberd-16.01/bin/ejabberdctl status

=ERROR REPORT==== 21-Feb-2016::12:06:40 ===
File operation error: eacces. Target: /opt/ejabberd-16.01/lib/xmerl-1.3.7/ebin/ejabberd_ctl.beam. Function: get_file. Process: code_server.
The node ejabberd@node0 is started with status: started
ejabberd 16.01 is running in that node

[1] https://www.process-one.net/downloads/downloads-action.php?file=/ejabber...

[2] https://hub.docker.com/_/ubuntu/

I also tried this on Ubuntu

I also tried this on Ubuntu 14.04 as root and the same error is shown.

I fix this error by ``` cd

I fix this error by
```
cd $EJABBERD_HOME
chown ejabberd:root -R .
```
These because ejabberd run by ejabberd user but the files are root's

To solve the issue you have

To solve the issue you have to change the permission of files to user ejabberd with followign command:
cd /opt/ejabberd-16.01
chown ejabberd:root -R .

Syndicate content