我想使用tmpfiles.d | p,p+手册中指定的systemd-tmpfiles创建一个命名的FIFO。我可以创建fifo,但是问题在于名为fifo的用户和用户组。这是我在conf文件中定义它的方式:
p+ /run/reboot 0644 system system - -
但是即使我在conf文件中将它指定为系统系统,fifo始终创建为root.root
。
如果我在启动后运行systemd-tmpfiles-setup.service脚本,则FIFO具有system.system特权。
/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
因此,要么systemd-tmpfiles在启动时将其创建为root.root
,要么其他服务正在更改权限(不是systemd-udev-trigger-尝试屏蔽此内容,但没有更改)。
出于调试目的,我以lsing
的{{1}}身份运行了该脚本(ExecStartPort
),该脚本在systemd-tmpfiles-setup.service
上进行了ls -la
,并写入了{{1} }。即使在那儿,我也看到fifo是/run
,
/run/lsing.txt
在调试此问题时需要一些帮助。我是systemd的新手。