centos 安装 ejabberd 报“Error: Error running Post Install Script.”问题排查

centos 安装 ejabberd 报“Error: Error running Post Install Script.”问题排查

在公司服务器上部署ejabberd 服务器发现如下报错:

Installing
0% ______________ 50% ______________ 100%
#######################################
Error: Error running Post Install Script.
The installation may have not completed correctly

排查步骤如下:

1.

cd /opt/ejabberd-2.1.10/logs

more  install.log     #查看ejabberd 安装日志,发现如下内容;

Executing final installation script
Error executing post installation script

2.


/opt/ejabberd-2.1.10/bin/postinstall.sh
\child process exited abnormally                  #执行上面的脚本 ,子进程异常退出;

 

3.

  more /opt/ejabberd-2.1.10/bin/postinstall.sh    #查看执行失败的脚本;
#!/bin/sh

echo
echo "       -=- ejabberd post installation script -=- "
echo "              (c) 2005-2010 ProcessOne "
echo
echo "* Checking ejabberd installation"
echo
echo "* Starting ejabberd instance"
cd /opt/ejabberd-2.1.10/bin
./ejabberdctl start
./ejabberdctl started
[ $? -eq 0 ] && {
  echo
  echo "* Creating administrator user"
  ./ejabberdctl register "$1" "$2" "$3"
  echo
  echo "* Stopping ejabberd instance"
  ./ejabberdctl stop
  ./ejabberdctl stopped
  echo "==> Setup finished"
} || {
  echo "* Error, ejabberd can not start"
  exit 1
}

#通脱脚本的内容可以看出,这个脚本只是在程序安装完成后,启动,关闭了一次 ejabberd,这个脚本执行失败,应该有两种原因,程序端口占用,程序调用某个文件被占用,先不想这么多,先去看一下系统日志;

4.

查看系统日志;

[root@Web02 opt]# tail -f /var/log/messages
Dec  6 18:52:48 web02 epmd: epmd: epmd running - daemon = 1


Dec  6 18:52:48 web02 epmd: epmd: node name already occupied ejabberd    #发现问题,系统日志报ejabberd  进程已存在;

5.

查看进程,发现真的有一个进程在,用KILL -9 杀掉;

[root@Web02 opt]# ps -ef |grep epmd
root      6658     1  0 Dec05 ?        00:00:00 /opt/ejabberd-2.1.10/bin/epmd -daemon

[root@Web02 opt]# kill -9 6658

6.总结

     分析了一下此次问题出现的原因可能是,之前服务器上安装过ejabberd ,且能够正常启动,后来研发调试程序,导致ejabberd 程序出现问题,后面重装ejabberd ,原有ejabberd进程没有完全杀掉导致!

 

 

你可能感兴趣的:(报错,centos,error,ejabberd,排查)