Итак имеем сервер с кучей сайтов. В какой-то момент на сервере лег apache с ошибкой:
No space left on device: Couldn’t create accept lock (/etc/httpd/logs/accept.lock)
Поиски решения проблемы натолкнули меня на мысль, что проблема в semapfores ядра.
В сети есть скрипты, которые помогут очистить таблицу семафоров.
Посмотреть кто использует семафоры можно командой: ipcs -s
Если вы видите в таблице пользователя apache, httpd вам надо почистить таблицу и все заработает. Но в моем случае проблема была не в apache, а в отсутствии свободных семафоров в ядре.
Поправим это:
nano /etc/sysctl.conf
добавляем две строки:
kernel.msgmni = 1024
kernel.sem = 250 256000 32 10241
и применим изменения командой:
sysctl -p
Все, теперь apache стартует. Данная статья относится к тонким настройкам сервера.