web-dev-qa-db-ja.com

システムの多くのリソースでpolkitdが何をしているのかを知るにはどうすればよいですか?

Acer c7で13.04を実行しています(chrubuntu 12.04をインストールしてから2つのシステムアップグレード)。コンピューターを数分以上使用すると、polkitd、dbus-daemon、console-kit-daemon、およびnetworkmanagerとして速度が低下します。すべてのシステムリソースを消費します。この問題をグーグルで検索しようとしましたが、それほど普及していないようです。または、何か不足しています。

システムログを調べてみましたが、特に異常なものはありません。また、dbus-monitorを見てみました。私はそこで何を探しているのか完全にはわかりませんが、アクティビティが絶え間なく流れているようには見えません。 polkitdおよび/またはこれらの他のプロセスが何を行っているかを確認する他の方法はありますか?

また、この問題を解決する方法についてのご意見もお待ちしています。

ありがとう!

4
knute

ChrUbuntu 13.04を実行しているAcer C710 Chromebookの蓋を閉じた後、CPU使用率が高いという同じ問題が発生しました。私のシステムでは、dbus-monitor --systemは1秒あたり約30のNameOwnerChangedメッセージの群れを示しています。これらは、特にpolkitdだけでなく、ネットワークマネージャー、nmアプレットなど、dbus上のすべてのユーザーを繰り返し起動します。

しかし、acpidは/etc/acpid/lid.shスクリプトを繰り返し実行し続けるため、DBusはこれを行っているだけです。これは、次の質問とまったく同じ問題である、アクティブなACPI割り込みラインによるものです。

なぜkworker CPUの使用量が非常に高くなるのですか?

私のシステムでは、問題は/ sys/firmware/acpi/interrupts/gpe1Fにあり、この割り込みに「disable」をエコーすると、CPUの使用がすぐに停止しました。これにより、ふたが閉じられたときにまったく何もしないシステムになりますが、コンソールから「Sudo pm-suspend」することができ、ふたを開いたりキーボードを押すと正常に起動します。

さらに重要なことは、CPU使用率がほぼゼロになったことです!

6
Orion Lawlor

プル: https://askubuntu.com/a/233947

私は別の答えにコメントすることはできませんが、最高評価の答えから、アクティブでないACPIラインを無効にするために、「無効」を割り込みにエコーするように言っています。どの割り込みを見つけるには、これを実行します:

grep . -r /sys/firmware/acpi/interrupts/

次に、高い数値の答えを探します。そのファイルでエコーを無効化すると、準備ができているはずです。

上部のソースリンクには、サスペンドして再起動した後に永続化する方法に関する完全な情報がありますが、彼の答えをクリックしてください。

3
surfrock66

私は同じ症状を経験しました。私の場合、それは Nepomuk 活動の洪水でdb死しました。ただし、同じ症状を引き起こす方法は数百万あると思います。

dbus-monitorは開始するのに最適な場所でした。 dbus-monitor --systemdbus-monitor --sessionを試しましたか?

straceを使用して、他の高CPUコンシューマーをスヌープし、それらが開いている/閉じている/送信しているものを確認できます。

名前でプロセスのstraceを開く簡単な方法:

Sudo strace -p$(ps -ef |grep console-kit-daemon |grep -v grep |awk '{print $2}') 
3