如何在 Linux 上釋放空交換空間 (SWAP)

最後更新: 04/10/2024
如何在 Linux 上釋放空交換空間 (SWAP)

想知道如何釋放嗎 空交換空間 en Linux?某些應用程式可能非常貪婪地佔用記憶體資源,然後 Linux 開始使用交換空間 (SWAP),但碰巧它沒有正確清空,而且它似乎總是被使用,從而導致與硬碟存取相關的效能問題。

Linux 中的 SWAP 交換空間可以啟用/停用,大多數時候您可以清空 SWAP 空間而無需重新啟動系統。

釋放空閒交換空間(swap)方法

有關信息,我們可以使用以下命令輕鬆檢查系統上使用的 SWAP 交換空間:

交換-s

專欄 «用過的» 將告知我們可用交換記憶體的目前使用情況。如果此速率在太長時間內保持過高,則存取存在分割區或交換檔案的硬碟時可能會出現速度減慢的情況。

在這裡您可以閱讀: 沒有足夠的記憶體資源可用於處理此命令錯誤

方法一:刪除空交換空間

要重新啟動並重設 SWAP,我們使用以下命令:

swapoff -a && swapon -a

我們停用(“交換”)然後我們重新啟動(«交換«) 所有分割區或交換文件,以便它們被清空並正確重新啟動。使用選項可同時停用或重新啟用所有內容 » -a “ 這是什麼意思 ”所有“。

方法 2:釋放頻繁出現的錯誤訊息中的空交換空間

如果在此操作過程中您的記憶體被大量使用,您在執行命令時可能會收到以下錯誤訊息 » 交換 -a “:

swapoff: /dev/hda5: 無法分配內存

這意味著 SWAP 中使用的記憶體目前無法更改為 RAM,因為沒有足夠的可用空間。因此,在執行指令之前需要確保RAM有足夠的可用空間來接收已使用的SWAP空間。

如何在 Linux 中清除交換記憶體或釋放空交換空間

你有逆反心理嗎?了解如何在 Linux 上設定正確的共享設定以及刪除共享內容。

  修復 Origin 中的錯誤代碼 20:2

交換記憶體通常是“設定好後就可以忘記它«。大多數企業環境都在系統中內建了交換,除非明顯缺乏可用記憶體或伺服器因嚴重的 OOM(記憶體不足)錯誤而崩潰,否則不會對這些記憶體快取進行操作。

然而,有一種特殊情況可能會導致管理員需要手動清除系統交換。如果這就是您所處的情況,那麼您來對地方了。本文討論了這種情況以及所需的解決方案。

你覺得 Swappy 嗎?

有時,即使 RAM 可供使用,系統也會使用高比例的交換記憶體。這裡的罪魁禍首就是系統的「共享」。

是的,你沒看錯……交換。現在您已經了解了術語,您就可以探索它的含義了。 Swappiness 是指負責系統將資料從 RAM 移動到交換記憶體的數量和頻率的核心參數。

交換的預設值為 60;但是,您可以手動將其設定為 0-100 之間的任意值。小值會導致很少的交易發生,而高值會導致非常激進的交易。

值為零會導致不發生交換,因此如果您希望將交換空間最小化到盡可能低的值而不將其關閉,則應將其至少設為 1。

如果您想要更改系統釋放空交換空間的能力,過程非常簡單。您可以透過執行以下命令來檢查目前的交換配置:

  • $cat/proc/sys/vm/swappiness

如何在 Linux 上釋放空交換空間 (SWAP)

它應該看起來像這樣:

現在,您可以看到系統的兌換值為30。

  如何同步兩台電腦上的 Outlook 聯絡人

$ sudo sysctl vm.swappiness = x

(其中x是你要設定的兌換值)

swapoff: /dev/hda5: 無法分配內存

sysctl 輸出 vm.swappiness = 60

要驗證您設定的值,只需放置您之前查看的交換文件即可找出原始值。現在您已經了解了控制系統中交換行為的底層參數,您就可以學習如何在出現情況時清除該記憶體。這是你一生中第一次 終端,事情將會變得容易。

刪除空交換空間

要清除系統上的交換內存,您只需斷開交換即可。這會將所有資料從交換記憶體移至 RAM。這也意味著您需要確保有 RAM 來支援此操作。一個簡單的方法是執行「free -m」來查看交換區和 RAM 中的使用情況。

您可能也有興趣閱讀以下內容: 如何建立可啟動 USB 隨身碟

將其關閉後,您可以等待任意時間(30 秒左右)以完成操作,然後重新開啟交換。

這將清除交換快取並重新啟用它。以下是所有 命令 您將需要!

  • 檢查空間:# free -m
  • 禁用共享: # 交換-a
  • 等待約 30 秒
  • (使用 free -m 查看已使用/可用交換空間的減少量 El Temppo)
  • 啟用交換:# swapon -a

結論

如果您發現自己需要這樣的解決方案,希望這個快速提示能夠幫助您清除系統中的空閒交換空間。我們希望這些資訊對您有所幫助。