更新中に100%のCPU使用率でappstreamcliがハングする


76

appstreamcliコアを常に100%使用することでラップトップを過熱しています。私の唯一の解決策はそれを殺すことです。以下にスクリーンショットを示しtopます。

CPU使用率が100%のappstreamcliを示すtopの出力

またはで殺すことができappstreamcliます。しかし、一度実行すると、プロセスが再び戻り、更新がハングします。その後、強制終了すると、次の出力が表示されます。sudo kill pidsudo killall appstreamclisudo apt updateappstreamcli

Reading package lists... Done
E: Problem executing scripts APT::Update::Post-Invoke-Success
'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli;
 then appstreamcli refresh > /dev/null;
 fi'
E: Sub-process returned an error code

このプロセスは何であり、なぜそれほど多くのCPUを使用しているのですか?


2
バグです。:この質問を参照してくださいaskubuntu.com/questions/774918/...
alwaysask

9
卵を調理するには68度が適していますが、ラップトップを調理するにはもっと高い温度が必要です。
マイケルハンプトン

@MichaelHamptonダムカーネルプロセスがすべてのCPU時間を消費すると、私のラップトップは調理されます。摂氏100度までかなり簡単に得られます。その後、スイッチがオフになります。

@catそうですね、100はあなたのラップトップが調理する魔法の数字です。ファンを掃除し、CPUのサーマルペーストをやり直す価値があるかもしれません。
マイケルハンプトン

@MichaelHampton 100は、CPUが「スイッチをオフにするか、停止してキャッチします!!!」と言うマジックナンバーです。。ファンはきれいで、サーマルペーストは新品で、古いだけです。

回答:


78

これはバグhttps://bugs.launchpad.net/ubuntu/+source/appstream/+bug/1579712
のバグが原因です。

最初のキルappstreamcli、手動または

sudo kill -KILL $(pgrep appstreamcli)

または

sudo pkill -KILL appstreamcli

次に:

wget -P /tmp https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
sudo dpkg -i /tmp/appstream_0.9.4-1ubuntu1_amd64.deb /tmp/libappstream3_0.9.4-1ubuntu1_amd64.deb

この後、通常どおりapt-get updateを続行できます


12
まさに私の問題ですが、ところでappstreamcliとは何ですか?
チャールズ・アントワーヌFournel

17
注意してください、これは64ビットシステムで動作します。32ビットでは、リンクをに変更amd64する必要i386があります。
Rmano

1
sudo kill {pid}dpkg status database is locked by another process」エラーを渡した後
アンドレア

問題は、appstreamcliがrootとして実行されているため、データベースロックをバイパスするには、次のようにします。sudo killall appstreamcli
wasp

2
このバグは(説明によると)非常にまれに現れるため、修正はテストケースを通じてテストする必要があります。sudo appstreamcli refresh --forceハングせずに実行 すると、修正が機能することが確認されます。それは私のために働いた。解決策をありがとう!
nolexa

2

あるいは、何らかの理由で、レポジトリ外のパッケージをインストールしたくない場合、更新を待つだけで完全にアンインストールできます。

これにより、KDE:PlasmaのDiscoverが削除されるため、Gnomeソフトウェアも、Ubuntuフレーバーが追加するものも削除されます。この場合、KubuntuでMuonを使用するか、GTKベースのDEでSynapticを使用できます。

これを実行する前に、削除するパッケージをチェックして、問題がないことを確認してください。

実行することで何かがわかります

apt show appstream

appstream runをアンインストールする

sudo apt remove appstream
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.