2005年01月20日

httpdの再起動を繰り返すと起動できなくなる

httpdの再起動を繰り返すと起動できなくなるんです。
ログを見ると
> [emerg] (28)No space left on device: Couldn't create accept lock

おかしなことが起こるものです。
なんでだろうと調べていましたら、Webに解決方法が。
→ http://www2.goldfisch.at/knowledge/224

助かりました。
おかげさまで帰れそうです peterさん m( _"_)m

保存のために引用:
引用元:http://www2.goldfisch.at/knowledge/224

-- 引用ここから --

apache claims 'no space on device'

keywords : apache ipcs semaphore no space on device lock accept

tested with apache 2.0.43 and 2.0.45

When dealing with mem-leaks in my mod_perl-apps I ran into a curious apache-problem. After a while apache could not be started but failed with strange errors like:

[emerg] (28)No space left on device: Couldn't create accept lock

or
[crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed


There was definitely enough space on the device where the locks are stored (default /usr/local/apache2/logs/). I tried to explicetely different Lockfiles using the LockFile-directive but this did not help. I also tried a non-default AcceptMutex (flock) which then solved the acceptlock-issue and ended in the rewrite_log_lock-issue.

Only reboot of the system helped out of my crisis.


Solution: There were myriads of semaphore-arrays left, owned by my apache-user.

ipcs -s | grep nobody

Removing this semaphores immediately solved the problem.

ipcs -s | grep nobody | perl -e 'while () { @a=split(/\s+/); print `ipcrm sem $a[1]`}'


peter at 2003-04-11 (updated 2003-04-11)

-- 引用ここまで --

Posted by Tawake at 20:00  | 覚書 | このブログの読者になる | 更新情報をチェックする