FSH говорит, что файлы сокета и pid должны идти в /var/run
Однако в целях безопасности только root может создавать файлы и подкаталоги в этом месте.
Распространенным решением является создание подкаталога для сценария в /var/run
и десять chmod это ... Но что делать, если у вас нет доступа к пользователю root?
Куда мне поместить .socket (и .pid), если у меня нет доступа к root?
В системах на основе systemd, таких как Arch Linux и (последняя версия) Debian, ожидается, что службы сообщат systemd, что им нужен каталог под /run
добавив tmpfiles.d
файл конфигурации в систему.
По умолчанию они хранятся в /usr/lib/tmpfiles.d
, хотя локальные дополнения можно добавить в /etc/tmpfiles.d
которые отменяют значения по умолчанию.
В tmpfiles.d средство может использоваться для создания и опустошения каталогов, создания файлов, символических ссылок, узлов устройств, сокетов и т. д.
Например:
# cat /usr/lib/tmpfiles.d/php-fpm.conf
d /run/php-fpm 755 root root
Это указывает на создание каталога /run/php-fpm
, с режимом 0755, принадлежит корню и группе root. Каталог будет создан при запуске системы или всякий раз, когда systemd-tmpfiles-setup
служба перезапускается. Вы также можете запустить systemd-tmpfiles
вручную.
Доступно много других вариантов; проверить tmpfiles.d документация для получения полной информации.