- ベストアンサー
ログの中にこんなメッセージが・・・
毎度、お世話になります。 Linuxサーバー内の/var/log/messagesを覗いたら、以下の様なメッセージが出てました。 Apache(httpd)関係の起動トラブルだと思うのですが、一体どのような意味なのでしょうか? また、このエラーの対処法をご教授ください。 おねがいします。 /var/log/messages httpd: Ouch! ap_mm_create(1048576, "/var/run/httpd.mm.31254") failed httpd: Error: MM: mm:core: failed to open semaphore file (Permission denied): OS: No such file or directory 使用OS:Redhat Linux7.1J
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
セマフォが開けないというエラーのようですので、カーネルパラメータの変更で回避出来るかもしれません。 まず、 # ipcs -s で、セマフォの使用状況を確認してください。 そして、 # sysctl kernel.sem で、セマフォの設定内容を確認してください。 表示される内容は「SEMMSL SEMNS SEMOPM SEMMNI」の値です。 変更方法は、/etc/sysctl.confに kernel.sem = 250 32000 100 128 という感じで、1行追加して # sysctl -p で設定内容が適用されます。 カーネルパラメータだけの問題ではないような気がしますが・・・。 Apacheのバージョンはいくつでしょうか?
その他の回答 (1)
- nipotan
- ベストアンサー率59% (134/227)
全然自信ないです。特に Linux わからないので参考までに。。。 上記エラーは、恐らく Apache に DSO 乃至は組み込みで mm (Shared Memory Library) が入ってると思うのですが、mm で割り当てされたメモリスペースを全て使い果たしたために出るようです。 (Linux の一部と、Solaris の一部で出るそうですが…) で、mm で使用する SHMMAX の設定を調節すれば出ないと思われます。 ipcs コマンドでセマフォ設定のリストが見られれば、その数値よりちょっとあげる設定にしてみてください。 (設定がどのファイルに書かれているのかは、Linux 疎い私にはわからないです。) または、/etc/fstab に none /var/shm shm 0 0 を追加してみてください。 あと、多分、mm のバージョンは古いと思うんですが、現行版に入れ替えたら、もしかしたらその点のバグが fix されてるかもしれません。 (参考 URL のサイトから落とせます) あと mm の設定がどうなってるかわかりませんが、mm で作られたセマフォファイルが、メモリリークしてる可能性もあります (これは全然自信なし) しょっちゅう出るエラーじゃなければ、Apache をむやみに長期間起動させているのも原因の一つかもしれません。 なので定期的に httpd を kill -HUP や kill -USR1 していればある程度このエラーは抑制できるかも知れません。 ついでに kill -HUP や kill -USR1 の時に、既に mm がコケている可能性もありますので、シグナル送った直後に Apache のエラーログを見てみてください。(別 tty で tail -f して待ち受けたほうがいいかも) 恐らく、そちらのほうが詳しい原因が書かれているように思います。