如何在 Ubuntu Linux 上配置 ZRAM

如何在 Ubuntu Linux 上配置 ZRAM

雖然 ZRAM 是一個絕佳的解決方案,可以用一些 CPU 馬力來獲得更多 RAM,但如何配置它以將更多或更少的 RAM 專用於 ZRAM?如何更改壓縮演算法?在什麼情況下值得進行此類更改?繼續閱讀以了解如何在 Ubuntu 上配置 ZRAM。

檢查您目前的 ZRAM 狀態

大多數人透過 zram-config 腳本在 Ubuntu 和基於 Debian 的 Linux 發行版上使用 ZRAM。這是因為它允許您以最直接的方式利用 ZRAM。您可以使用以下命令安裝它:

接下來,檢查您的 Ubuntu 計算機中是否已啟用 ZRAM。您可以透過執行 zramctl 實用程式來做到這一點:

確保您的系統目前已停用 Zswap:

Zswap 是一種替代 RAM 快取解決方案,與 ZRAM 類似,每個 Linux 發行版都預設附帶該解決方案。然而,與 ZRAM 不同的是,它依賴於實體交換分割區,這意味著它在舊磁碟上可能會很慢。

重新啟動電腦以在 Ubuntu 系統中建立初始 ZRAM 區塊裝置。

了解正確的 ZRAM 設定

當您的電腦備份並運行時,檢查它現在是否報告 ZRAM 分割區:

顯示可用交換檔案和 ZRAM 區塊裝置的終端。

您可以在我們的螢幕截圖中看到與單一 ZRAM 區塊裝置共存的典型交換檔案。對此,我的系統有 4GB RAM 和 2GB ZRAM,這是我們 RAM 量的一半。但是,根據您的工作負載,您可能需要變更該大小。

  • 如果您正在處理多媒體和視頻,它們的壓縮性不是很好,因此最好減小 ZRAM 的大小並增加實際交換的大小。
  • 如果您正在使用大型資料庫或高度可壓縮的其他類型的數據,則情況恰恰相反。在這種情況下,您可以透過增加 ZRAM 的大小來提高電腦的回應能力。

另一個值得研究的調整與 ZRAM 使用的壓縮演算法有關。預設情況下,它使用LZO或LZO-RLE,這對CPU來說很輕。不過,在現代 CPU 上,較新的 ZSTD 演算法通常會提供更好的壓縮率,並且不會感覺到它對 CPU 造成的較高負擔。如果您的電腦使用時間不到十年,那麼值得使用此演算法而不是較舊的 LZO 變體。

變更 ZRAM 大小

若要變更 ZRAM 設置,您必須在「/usr/bin」資料夾中編輯其執行腳本。在終端機中輸入以下命令:

捲動瀏覽“init-zram-swapping”腳本並找到以mem.

終端機突出顯示 zram 交換腳本內的 mem 變數。

這定義了核心將為 ZRAM 區塊裝置分配多少空間。預設情況下,它保留系統物理記憶體的一半。您可以將“1024”替換為“512”來將其減少到四分之一。

突出顯示 mem 變數的較低記憶體偏移量的終端。

您也可以透過將 mem 值設為「1536」來增加 ZRAM 佔用的記憶體量。這會將四分之三的實體記憶體分配給 ZRAM。

終端機突出顯示 mem 變數的較高記憶體偏移量。

變更 ZRAM 壓縮演算法

您也可以從相同位置變更 ZRAM 的壓縮演算法。為此,請開啟一個新的終端會話,然後列出 ZRAM 的所有可用壓縮演算法:

顯示 ZRAM 模組所有可用壓縮演算法的終端。

您可以在進階自訂 ZRAM 配置中混合和匹配演算法。但是,如果您使用預設值,所有 ZRAM 分割區將使用相同的演算法。

返回到我們之前編輯的“init-zram-swapping”exec腳本。在那裡,找到以下行:

將其複製並直接貼上到下面,以便您擁有同一命令的兩個實例。

終端機突出顯示 ZRAM 區塊裝置的重複 echo UNIX 管道。

$mem將行開頭的第一個實例替換為“zstd”。

終端機突出顯示第一個 echo UNIX 管道的 zstd 字串。

將行尾從“disksize”更改為“comp_algorithm”。

終端機突出顯示第一個 echo UNIX 管道的 comp_algorithm 字串。

儲存調整後的「init-zram-swapping」文件,然後重新啟動電腦。

透過執行命令檢查新的 ZRAM 設定是否正常運作zramctl

顯示使用更大記憶體基礎和不同演算法的 ZRAM 區塊裝置的終端。

當系統主動使用調整後的交換時,請務必檢查系統在負載下的效能。如果您感覺它嘎嘎作響或結結巴巴,您可能做得太過分了,需要調低您選擇的值。另一方面,如果它在飛行,你可能可以再增加一些。

配置系統的 ZRAM 只是優化 Ubuntu 系統的第一步。了解如何透過在 Ubuntu 上編譯您自己的 Linux 核心來充分發揮電腦的效能。同時,如果您希望建立更強大的 PC,那麼建置 Linux PC 時需要注意以下事項。

圖片來源:Liam Briese,來自 Unsplash。所有修改和螢幕截圖均由 Ramces Red 進行。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *