找不到ejabberd命令,不存在ejabberd.cfg

时间:2017-09-14 16:13:15

标签: ejabberd

我从以前的员工那里继承了一个ejabberd安装。基本命令返回

  

错误命令'xxxx'未知

doc指的是/etc/ejabberd.cfg,它在服务器上不存在。 /opt/ejabberd-15.03/conf/ejabberd.yml似乎包含所有相关配置,例如LDAP和ssl证书位置。

对于用户来说,一切似乎都运行良好,所以也许我做错了什么。以下是一些示例:

[root@jabber bin]# pwd
/opt/ejabberd-15.03/bin
[root@jabber bin]# ./ejabberdctl create_room SteveTest conference.localhost localhost
  

错误:命令“create_room”未知。

[root@jabber bin]# ./ejabberdctl muc_online_rooms global
  

错误:命令“muc_online_rooms”未知。

1 个答案:

答案 0 :(得分:0)

配置文件

  

doc指的是/etc/ejabberd.cfg,它在服务器上不存在。 /opt/ejabberd-15.03/conf/ejabberd.yml似乎包含所有相关配置,例如LDAP和ssl证书位置。

配置文件的位置特定于ejabberd的安装方式,因此在/opt/ejabberd-15.03/conf/中使用它应该没问题。

ejabberd.cfgejabberd.yml的原因是ejabberd 13.10 introduced YAML as configuration file formatejabberd.yml),并且弃用了以前使用过的Erlang术语(ejabberd.cfg)。来自their documentation

  

在以前的ejabberd版本中,配置文件应该用Erlang术语编写。格式仍然受支持,但强烈建议将其转换为新的YAML [...]

ejabberdctl

当你在没有任何参数的情况下运行ejabberdctl时,它应该显示所有支持的命令。

您尝试过的内容(create_roommuc_online_rooms)不应该在列表中,因为它们是part of the mod_muc_admin module,而是introduced with ejabberd 15.04,但是您出现了运行较旧的ejabberd 15.03。

要获取这些命令,您可以升级ejabberd(这是推荐的方法),也可以从包含第三方ejabberd模块的ejabberd-contrib存储库中获取mod_muc_admin模块。 mod_muc_admin在直接包含在ejabberd中之前就是该存储库的一部分。以下是ejabberd-contrib的最新修订版的链接,其中仍包含模块:https://github.com/processone/ejabberd-contrib/tree/e5336f/mod_muc_admin