Проблема проявилась в связке ISPmanager 5 Business и CentOS 7.
При попытке перезапуска httpd, выходит ошибка о том, что невозможно перезапустить сервис:
# service httpd status
Redirecting to /bin/systemctl status httpd.service
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
Active: failed (Result: exit-code) since Sat 2015-07-18 09:45:40 MSK; 2min 12s ago
Process: 2471 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
Process: 1401 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
Main PID: 1401 (code=exited, status=1/FAILURE)
CGroup: /system.slice/httpd.service
Jul 18 09:45:40 localhost systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Jul 18 09:45:40 localhost kill[2471]: kill: cannot find process ""
Jul 18 09:45:40 localhost systemd[1]: httpd.service: control process exited, code=exited status=1
Jul 18 09:45:40 localhost systemd[1]: Failed to start The Apache HTTP Server.
Jul 18 09:45:40 localhost systemd[1]: Unit httpd.service entered failed state.
При этом в логах httpd ошибка такая:
# tail -f /var/log/httpd/error_log
AH00015: Unable to open logs
Проблема в том, что systemd считал, что не хватает файловых дескрипторов для запуска httpd через httpd.service.
Решение:
# ulimit -n
16384
# mkdir -p /etc/systemd/system/httpd.service.d/
# echo -e "[Service]\nLimitNOFILE=16384" >> /etc/systemd/system/httpd.service.d/nofile.conf
# systemctl daemon-reload
# systemctl start httpd.service
При попытке перезапуска httpd, выходит ошибка о том, что невозможно перезапустить сервис:
# service httpd status
Redirecting to /bin/systemctl status httpd.service
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
Active: failed (Result: exit-code) since Sat 2015-07-18 09:45:40 MSK; 2min 12s ago
Process: 2471 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
Process: 1401 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
Main PID: 1401 (code=exited, status=1/FAILURE)
CGroup: /system.slice/httpd.service
Jul 18 09:45:40 localhost systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Jul 18 09:45:40 localhost kill[2471]: kill: cannot find process ""
Jul 18 09:45:40 localhost systemd[1]: httpd.service: control process exited, code=exited status=1
Jul 18 09:45:40 localhost systemd[1]: Failed to start The Apache HTTP Server.
Jul 18 09:45:40 localhost systemd[1]: Unit httpd.service entered failed state.
При этом в логах httpd ошибка такая:
# tail -f /var/log/httpd/error_log
AH00015: Unable to open logs
Проблема в том, что systemd считал, что не хватает файловых дескрипторов для запуска httpd через httpd.service.
Решение:
# ulimit -n
16384
# mkdir -p /etc/systemd/system/httpd.service.d/
# echo -e "[Service]\nLimitNOFILE=16384" >> /etc/systemd/system/httpd.service.d/nofile.conf
# systemctl daemon-reload
# systemctl start httpd.service