On 23.11.2017 17:37, Maxim Dounin wrote:
В systemd's daemon(7) manpage очень подробно расписано как должны вести себя SysV Daemons при работе с systemd. И очевидно, что nginx этим требованиям не соответствует.
Original process должен вызывать exit() только после того, как будет полностью завершена инициализация daemon process, в частности, после того как daemon process создаст свой pid файл.
Это, что называется, всё очень интересно, но вызывает сомнение успех подобных рекомендаций. Особенно с учётом отсутствия каких-либо внятных примеров того, что же использовать вместо daemon(3). О чём я, собственно, и писал выше.
Что использовать вместо daemon(3) документировано в daemon(7): https://www.freedesktop.org/software/systemd/man/daemon.html Lennart Poettering очень подробно ответил на этот вопрос в рассылке: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039830.html Впрочем, если очень хочется использовать все-таки daemon(3) то можно: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039834.html Кстати, Lennart Poettering нашел еще одну ошибку в исходниках nginx: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039832.html
Впрочем, если верить ответу тут: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039825.html
то соответствующее сообщение можно смело игнорировать, и systemd на самом деле умеет дожидаться создания pid-файла. То есть вопрос лишь в том, что при этом systemd пишет в лог.
Не надо верить тому, что говорит Michael Chapman - он ошибается. systemd не ждет появления pid-файла, я это проверял по исходникам. Лучше верить тому, что говорит Lennart Poettering, автор systemd: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039833.html Всегда надо указывать корректный PIDFile= для сервисов Type=forking: https://lists.freedesktop.org/archives/systemd-devel/2017-November/039831.html Максим, можно ли сделать так, чтобы nginx соответствовал тем требованиям которые предъявляет systemd к SysV Daemons? https://www.freedesktop.org/software/systemd/man/daemon.html -- Best regards, Gena _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru