Я хочу создать именованный FIFO, используя systemd-tmpfiles, как указано в руководстве по адресу tmpfiles.d |р, р + .Я могу создать fifo, но проблема с пользователем и группой с именем fifo.Вот как я определяю его в файле conf:
p+ /run/reboot 0644 system system - -
Но fifo всегда создается как root.root
, даже если я указываю его как системную систему в файле conf.
ЕслиПосле запуска я запускаю сценарий systemd-tmpfiles-setup.service, а затем fifo с привилегиями system.system.
/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
Итак, либо systemd-tmpfiles создает его как root.root
при загрузке, либо какой-то другой сервис меняет разрешения (не systemd-udev-trigger - попытался замаскировать это, но без изменений).
В целях отладки я запустил этот скрипт (lsing
) как ExecStartPort
из systemd-tmpfiles-setup.service
, который выполняет ls -la
на /run
и записывает в /run/lsing.txt
.Даже там я вижу, что fifo это root.root
,
ExecStartPost=/sbin/lsing
Нужна помощь в устранении этой проблемы.Я совсем новичок в systemd.