Apache: Couldn't create accept lock: различия между версиями
Bas (обсуждение | вклад) Новая страница: «Столкнулся с проблемой, что веб-сервер Apache не стартует при запуске системы. Очень часто н…» |
Bas (обсуждение | вклад) Нет описания правки |
||
Строка 6: | Строка 6: | ||
<pre lang="apache">AcceptMutex sysvsem</pre> | <pre lang="apache">AcceptMutex sysvsem</pre> | ||
В этом случае файл блокировки не создается на диске вообще. | В этом случае файл блокировки не создается на диске вообще. | ||
[[Category:Apache]] |
Текущая версия от 12:03, 9 апреля 2015
Столкнулся с проблемой, что веб-сервер Apache не стартует при запуске системы. Очень часто не только при некорректном её завершении, но и вообще, после перезагрузки. Если же в /var/log
удалить accept-файлы, то всё запускалось нормально. В логах была следующая запись:
[emerg] (17)File exists: Couldn't create accept lock (/var/log/accept.lock.639) (5)
Это происходит из-за того, что при некорректном выключении сервера файл блокировки Apache не удаляется. Хотя к имени файла и добавляется номер pid'а при старте системы, но Apache часто получает один и тот же pid, т. к. одни и те же сервисы запускаются в том же порядке. В результате файл блокировки действительно оказывается уже существующим и почему-то Apache его не пытается перезаписать, а просто выходит. Последующий ручной запуск как правило происходит успешно, т. к. счётчик pid'а к тому моменту имеет случайное значение.
Исправить данную неприятность можно, добавив в конфиг опции:
AcceptMutex sysvsem
В этом случае файл блокировки не создается на диске вообще.