michihide's blog

技術メモおよび雑感

Apacheが起動できなくなった

CentOS7 でいろいろやってたら、ふと Apache が起動できなくなって10分ほど焦ったのでメモ。

[Wed Aug 19 16:07:31.191392 2015] [suexec:notice] [pid 14555] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Wed Aug 19 16:07:31.238273 2015] [auth_digest:notice] [pid 14555] AH01757: generating secret for digest authentication ...
[Wed Aug 19 16:07:31.238584 2015] [auth_digest:error] [pid 14555] (28)No space left on device: AH01762: Failed to create shared memory segment on file /run/httpd/authdigest_shm.14555
[Wed Aug 19 16:07:31.238608 2015] [auth_digest:error] [pid 14555] (28)No space left on device: AH01760: failed to initialize shm - all nonce-count checking, one-time nonces, and MD5-sess algorithm disabled

ログによると、共有メモリが容量オーバーで作れなくなっているらしい。

 m-hotta@estonia:~/as-user-dev$ ipcs
 ------ メッセージキュー --------
 キー     msqid      所有者  権限     使用バイト数 メッセージ
 ------ 共有メモリセグメント --------
 キー     shmid      所有者  権限     バイト  nattch     状態
0x00000000 xxxxx1     m-hotta    600        4194304    2          対象
0x00000000 xxxxx2     m-hotta    600        4194304    2          対象
0x00000000 xxxxx3     m-hotta    600        4194304    2          対象
0x00000000 xxxxx4     m-hotta    600        4194304    2          対象
0x00000000 xxxxx5     m-hotta    600        4194304    2          対象
0x00000000 xxxxx6     m-hotta    600        4194304    2          対象
 (以下大量:xxxxxx は、実際にはランダムな6桁の10進数)
 ------ セマフォ配列 --------
 キー     semid      所有者  権限     nsems

自分が所有者の共有メモリで埋もれている。なんだこれは?

どうも、vncserver 利用終了時に(ウィンドウを「×」で終わらせたりして)
ちゃんと終わらせないと、リソースが解放されないみたいです。

ipcrm -a

なぜかこれでも全部は消えてくれなかった。面倒なのでリブート。
これでリソースが開放されて、httpd自動起動しました。
めでたしめでたし。