通过 ~/.local/share 屏蔽 dbus 激活的服务 (rtkit)?

通过 ~/.local/share 屏蔽 dbus 激活的服务 (rtkit)?

我一直在尝试通过“标准服务目录”位置屏蔽 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

相关内容