如何重启polkitd?

Dmi*_*rov 5 opensuse d-bus freedesktop

我的台式 PC 还用作小型工作组的 NIS/NFS 服务器。它可以运行数月而无需重新启动。

最近我观察到,当我登录到桌面会话时,计算机会在几分钟内变得反应迟钝。polkitd处于某种D状态的进程会生成大量磁盘 I/O 活动。它的 VmSize 超过 600MB,其 VmRSS 超过 400MB。

机器仍然在 OpenSUSE 11.3 和 polkit 0.96 上。我打算在夏天升级。

在 polkitd 中有几个关于内存泄漏的报告,这些报告在 0.98 中得到了修复(freedesktop.orgopensuse.org)。虽然升级可能会解决问题,但大约需要一天时间,我正在寻找快速解决方案。

/etc/init.d 中没有 polkitd 脚本,polkitd 进程的父进程就是init它自己。

    PID  PPID USER     CMD
      ....
  22362     1 root     /usr/lib/polkit-1/polkitd
Run Code Online (Sandbox Code Playgroud)

问题:如何在不重新启动系统的情况下重新启动 polkitd?我可以在桌面会话中执行此操作,还是应该注销桌面会话并登录到文本控制台?

Dmi*_*rov 4

polkitd 的手册页显示:

...用户或管理员永远不需要启动此守护进程,因为它将由 dbus-daemon(1) 自动启动...

dbus因此,当服务重新启动时,polkitd 也会重新启动。由于此服务与桌面管理器交互,因此注销桌面会话、停止xdm服务、重新启动dbus并再次启动会更安全xdm