Создание именованного FIFO с использованием systemd-tmpfiles от имени пользователя без полномочий root - PullRequest
1 голос
/ 06 июня 2019

Я хочу создать именованный 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...