journalctl -b | grep Supervising | wc -l
2819
Run Code Online (Sandbox Code Playgroud)
发行版是 Fedora 35,vanilla,由 PipeWire 运行。
我很确定所有现代 Linux 发行版都会受到影响,但人们并不关心。
rsyslog这里没有,journald 也不支持过滤。
这真是太荒谬了。我肯定可以修补它,但问题是如何在不应用修补程序和重建的情况下完成它。这个东西,/usr/libexec/rtkit-daemon甚至没有手册页,也没有提供--help任何线索。
有一个相关的问题也从未得到解答:rtkit:列出它正在“监督”的线程?
我只能想到运行rtkit-daemon一些包装器,它只是禁用与 /system 日志记录相关的所有功能/dev/log。有人见过类似的东西吗?
我已经提交了一份错误报告以防万一。
rtkit显然知道它正在“监督”哪些线程,因为它会向系统日志发送垃圾邮件,例如
rtkit-daemon[1277]: Supervising 3 threads of 2 processes of 1 users.
Run Code Online (Sandbox Code Playgroud)
然而,这个邪恶的小东西似乎没有提供列出那些“受监督”进程/线程的方法。rtkitctl可以选择终止或重新启动守护进程以及“重置”线程(无论这意味着什么)。至少在 Debian 上,我没有看到任何其他实用程序。也许有隐藏的DBus接口,或者发行版没有打包一些实用程序。
那么,ps有没有办法列出那些“受监督”的线程,或者这只是整个dbus/systemd生态系统的另一个不透明的方面?