1、No space left on device 错误与解决办法
解决办法 :
查看httpd进程是否存在及httpd端口是否正常启动
#ps -ef |grep httpd |grep -v "grep" |wc -l
#netstat -ant |grep 8
#/usr/local/apache2/bin/apachectl start
#ps -ef |grep http|grep -v "grep" |wc -l
查看Apache启动日志,在查看Apache的error日志后
No space left on device:mod_rewrite: could not create rewrite_log_lock Configure Failed
提示磁盘耗尽,查看磁盘信息
#df -Th
#df -i #查看inode节点
查看Linux默认的磁盘信号量设置值
#cat /proc/sys/kernel/sem
查看httpd进程占用了多少信号量
#ipcs -s |grep daemon
daemon是启动Apache进程的用户,默认是daemon,也看是nobody,发现很多daemon的信号量输出。
解决信号量耗尽办法,使用ipcrm命令清除。
#ipcs -s |grep nobody | perl -e 'while (<STDIN>) {@A=split(/\s+)};print `ipcrmsem $a[1]`'
执行之后,再次启动Apache,查看httpd进程是否启动
2、apache(20014)故障与解决办法
提示httpd.pid文件的错误,httpd.pid文件是Apache的进程pid文件,Apache的启动进程ID就放在这个文件中。
解决思路
提示httpd.pid文件有问题,先看看这个文件是否存在
#more /usr/local/apache2/logs/httpd.pid
发现这个文件存在,但内容为空,这里肯定有问题。
解决办法 :
解决这个问题有两个办法:一是直接删除httpd.pid这个空文件,二是将这个文件写入一个数字ID值
#echo "28976">>/usr/local/apache2/log/httpd.pid
#more /usr/local/apache2/log/httpd.pid
28976
再次启动Apache
#/usr/local/apache2/bin/apachectl start
Apache启动正常了,查看httpd.pid文件内容
#more /usr/local/apache2/log/httpd.pid
7789
3、could not bind to address 0.0.0.0:80
Apache无法启动,Tomcat可以启动
4、