搜尋更新時 CPU 負載為 98% (applydeltarpm)

搜尋更新時 CPU 負載為 98% (applydeltarpm)

我在筆記型電腦上運行 openSUSE 13.1,每次系統開始尋找更新時,風扇就會瘋狂運轉,CPU 負載會超過 90%。使用top,我發現該進程applydeltarpm導致了負載。終止該進程不會有幫助,因為它會在幾秒鐘後重新啟動。過了一會兒,GNOME 的更新通知彈出,讓我安裝新的軟體包。之後,CPU 恢復正常。

這款筆記型電腦是配備 Intel i7 (Ivy Bridge) 的 Sony Vaio S,因此效能不應該成為問題。

有人有解決方案嗎?

答案1

applydeltarpm是 yum 的內部進程,yum 是 RPM 之上的 OpenSUSE 套件管理器(也是 Fedora 和其他基於 RPM 的發行版)。

applydeltarpm 的工作是減少網路負載:

可以使用特殊的 Delta-RPM 檔案 ( ),而不是從儲存庫下載完整的 RPM 文件.drpm,這些檔案只是下載大小的一部分。為了建立要由 RPM 安裝的真實 rpm 文件,applydeltarpm 會取得檔案系統中舊的快取 rpm,並在其上套用 delta-rpm。此過程是 CPU 密集型的,這就是該階段負載較高的原因。

如果您有寬頻連接和小型電池和/或您寧願消耗頻寬而不是 CPU,那麼您可以調整 yum 的行為以決定何時下載 delta-rpm。

根據您的套件管理器,您必須編輯其設定檔。

在 OpenSUSE 中,假設您正在使用齊普:

/etc/zypp/zypp.conf呼叫中有一個配置選項download.use_deltarpm,可以將其設為 false。 (取自 [1])

在 Fedora 中,或假設您正在使用:

有一個配置選項/etc/yum.conf(參見yum.conf(5))呼叫deltarpm_percentage調整 delta-rpm 的大小來下載它而不是完整的 rpm。

相關內容