我一直在尝试通过“标准服务目录”位置屏蔽 dbus 激活的服务(rtkit-daemon)~/.local/share/dbus-1/services/
。我想要覆盖的相应系统文件位于/usr/share/dbus-1/system-services/
.
这个想法是由如何防止 D-Bus 启动(禁用的)其他守护进程?
具体来说,我将一个文件org.freedesktop.RealtimeKit1.service
放入~/.local/share/dbus-1/services
:
Name=org.freedesktop.RealtimeKit1
#Exec=/usr/libexec/rtkit-daemon
Exec=/bin/true
#SystemdService=rtkit-daemon.service
User=root
...但“真实”仍然rtkit-daemon.service
不断被激活(通过pulseaudio,firefox)。
我知道我可以屏蔽全局 systemd rtkit-daemon.service
,但我只想为特定用户屏蔽它(通过 dbus,而不是 systemd)。为什么我的临时设置没有覆盖全局设置?有什么方法可以调试dbus
的搜索路径,或者看看是否无法解析我的文件?我使用的是 Ubuntu 20.04。
答案1
但~/.local/share/dbus-1/services/
对于“标准会议服务目录”,您要覆盖的 D-Bus 服务是全系统(其服务文件位于/usr/share/dbus-1/system-services/
此外,D-Bus服务文件org.freedesktop.RealtimeKit1.service
使用
SystemdService=rtkit-daemon.service
所以它是由systemd启动的,而不是D-Bus