web-dev-qa-db-ja.com

polkitdを再起動するには?

私のデスクトップPCは、小規模なワークグループのNIS/NFSサーバーとしても使用されます。再起動せずに数か月間実行されます。

最近、デスクトップセッションにログインすると、コンピューターの応答が数分間低下することがわかりました。 polkitd状態のDプロセスは、多くのディスクI/Oアクティビティを生成します。そのVmSizeは600MBを超え、そのVmRSSは400MBを超えています。

マシンはまだOpenSUSE11.3とpolkit0.96を使用しています。夏にアップグレードする予定です。

0.98( freedesktop.orgopensuse.org )で修正されたpolkitdのメモリリークに関するいくつかのレポートがあります。アップグレードで問題が解決する可能性がありますが、約1日かかります。迅速な解決策を探しています。

/etc/init.dにはpolkitdスクリプトはなく、polkitdプロセスの親はinit自体です。

    PID  PPID USER     CMD
      ....
  22362     1 root     /usr/lib/polkit-1/polkitd

質問:システムを再起動せずにpolkitdを再起動するにはどうすればよいですか?デスクトップセッション内から実行できますか、それともデスクトップセッションからログオフしてテキストコンソールにログオンする必要がありますか?

3
Dmitri Chubarov

Polkitdのmanページにはこう書かれています:

...このデーモンはdbus-daemon(1)によって自動的に開始されるため、ユーザーまたは管理者はこのデーモンを開始する必要はありません...

したがって、dbusサービスが再起動されると、polkitdが再起動されます。このサービスはデスクトップマネージャーと対話するため、デスクトップセッションからログアウトし、xdmサービスを停止して、dbusを再起動し、xdmを再起動する方が安全です。

3
Dmitri Chubarov

Ubuntu 10.04デスクトップでpolkitdメモリリークが発生しています。

コマンドps -ef | grep polkitdを使用してプロセスIDを見つけ、次にkill -9 procidを使用します

Polkitdプロセスは強制終了されますが、システムによって再び開始されます。そして、polkitdプロセスは再びメモリリークを開始します。

1
muman

あなたは実行する必要があります:

invoke-rc.d dbus restart

ルートとして。

1

これをターミナルで実行します:

killall -HUP polkitd