当我尝试启动 ejabberd 服务时它总是崩溃。
Starting jabber server: ejabberd
Crash dump was written to: /var/log/ejabberd/erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})
Crash dump was written to: /var/log/ejabberd/erl_crash.dump
Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})
.
我已经更改了服务器的 hostanme,在此之前它运行良好,但是在配置中我有:
{hosts, ["localhost", "private.localhost", "public.localhost"]}.
答案1
我认为您不能仅仅简单地更改主机名,因为 Erlang/ejabberd 在这方面存在问题。
尝试这种方法(大锤式)
- 切换回您的原始主机名
- 转储 ejabberd Erlang 数据库
ejabberdctl backup /tmp/ejabberd_bkp
(如果选择其他输出目录,可能会出现权限问题) - 备份你的 ejabberd 配置
- 卸载 ejabberd
- 将主机名更改为当前主机名
- 安装 ejabberd
- 使用以下方式导入数据库
ejabberdctl restore /tmp/ejabberd_bkp