Apacheの起動ができなくなる「[core:emerg] [pid 5950] (28)No space left on device: AH00023: Couldn’t create the proxy mutex」
Apacheの再起動を行ったところ、以下のエラーで起動ができなくなったときの作業記録です。
「No space left on device: AH00023: Couldn’t create the proxy mutex」と出ており、ディスクフルを疑いましたがdfコマンドで確認しても問題なし。
原因は、セマフォの上限でした。
[Fri Nov 18 10:50:47.319123 2022] [suexec:notice] [pid 5950] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Fri Nov 18 10:50:47.571429 2022] [ssl:warn] [pid 5950] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Fri Nov 18 10:50:48.228680 2022] [core:emerg] [pid 5950] (28)No space left on device: AH00023: Couldn't create the proxy mutex
[Fri Nov 18 10:50:48.228731 2022] [proxy:crit] [pid 5950] (28)No space left on device: AH02478: failed to create proxy mutex
[Fri Nov 18 10:50:48.228740 2022] [:emerg] [pid 5950] AH00020: Configuration Failed, exiting
原因の確認
セマフォの上限に達しているかは以下のように確認します。
■セマフォの使用状況を確認(apacheユーザーのセマフォがあることを確認)
[root@localhost ~/]# ipcs -s
------ セマフォ配列 --------
キー semid 所有者 権限 nsems
0x00000000 884736 apache 600 1
0x00000000 884737 apache 600 1
0x00000000 884738 apache 600 1
0x00000000 884739 apache 600 1
0x00000000 884740 apache 600 1
0x00000000 917509 apache 600 1
0x00000000 393222 apache 600 1
0x00000000 393223 apache 600 1
0x00000000 393224 apache 600 1
0x00000000 393225 apache 600 1
0x00000000 393226 apache 600 1
...
上記のように、apacheが大量に出力されており、上限に達したものと思われます。
対応 セマフォを削除
セマフォの使用状況からsemidを使用してセマフォを削除する場合は、以下のコマンドを実行します。
ipcrm -s <semid>
プロセスが異常終了して解放されていないセマフォを消すことができます。
作業はrootユーザーで行えば全てを操作することができます。
一般ユーザの場合は、現在使用しているユーザのみ対象となります。
apacheのセマフォを削除する場合は、以下のようにコマンドを実行することで削除することができます。
for i in `ipcs -s | awk '/apache/ {print $2}'`; do (ipcrm -s $i); done
-
前の記事
Windows11のOS(SSD)を新しいSSDにクローンした 2022.08.10
-
次の記事
AWSの各リージョンへのレイテンシを計測するツール 2023.03.22
Author:KMMR 投稿一覧
技術屋さんです。
普段はPHP, Perl, Ruby, Pythonなどを触っています。
AWSなどのIaaSもちょこちょこ触っているので、備忘などを書いていきます。