首页 > 代码库 > apche启动错误|httpd.pid overwritten — Unclean shutdown of previous Apache run?

apche启动错误|httpd.pid overwritten — Unclean shutdown of previous Apache run?

APACHE启动成功,但无法接受任何请求,查看ERROR.LOG文件
[warn] pid file /opt/apache/logs/httpd.pid overwritten — Unclean shutdown of previous Apache run?
大概意思是说PID文件一直被一个程序改写,我测试系统上还运行了RESIN,只要停止了就可以了

 

resin/bin/httpd.sh stop
resin/bin/httpd.sh stop
resin/bin/httpd.sh stop

方法2:

 

试图删除/usr/local/apache/logs/httpd.pid再重启也不行。
使用ipcs查看系统的信号量,发现是信号量sem已经满了,所以导致startssl无法启动。
据说是如果apache没有正常Stop掉的话,它的信号量是不会自动清除的,导致其一直滞留在内存中
于是,用以下命令清除sem信号量后,apache就可以正常启动了:

for i in `ipcs  | grep nobody | awk ‘print $2}‘`; do ipcrm -s $i; done

看来,以后我们需要慎用killall -9 httpd,尽量使apache能正常的stop

apche启动错误|httpd.pid overwritten — Unclean shutdown of previous Apache run?