Swap簡介
Linux中Swap(即:交換分區),類似于Windows的虛擬內存,就是當內存不足的時候,把一部分硬盤空間虛擬成內存使用,從而解決內存容量不足的情況。
如何創建Swap文件
1. 創建一個用于交換的文件
sudo fallocate -l 1G /swapfile
如果faillocate未安裝或者您收到錯誤消息,fallocate failed: Operation not supported則可以使用以下命令創建交換文件:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
2. 設置正確的權限
只有 root 用戶才能寫入和讀取交換文件,要設置正確的權限類型:
sudo chmod 600 /swapfile
3. 設置Linux交換區
使用該 mkswap 實用程序將文件設置為Linux交換區域:
sudo mkswap /swapfile
4. 啟用交換
使用以下命令激活交換文件:
sudo swapon /swapfile
要使更改永久打開/etc/fstab文件并附加以下行:
/swapfile swap swap defaults 0 0
5. 驗證交換狀態
要驗證交換是否處于活動狀態,我們可以使用swapon或free命令,如下所示:
sudo swapon --show
輸出
NAME TYPE SIZE USED PRIO/swapfile file 1024M 507.4M -1
sudo free -h
輸出
total used free shared buff/cache availableMem: 488M 158M 83M 2.3M 246M 217MSwap: 1.0G 506M 517M
如何調整swappiness
Swappiness是一個Linux內核屬性,用于定義系統使用交換空間的頻率。Swappiness可以具有0到100之間的值。較低的值將使內核盡可能避免交換,而較高的值將使內核更積極地使用交換空間。
默認的swappiness值為60.您可以通過鍵入以下命令來檢查當前的swappiness值:
cat /proc/sys/vm/swappiness
輸出
60
雖然桌面可以使用60的swappiness值,但對于生產服務器,您可能需要設置較低的值。
例如,要將swappiness值設置為10,請鍵入:
sudo sysctl vm.swappiness=10
要使此參數在重新引導后保持不變,請將以下行附加到該/etc/sysctl.conf文件:
vm.swappiness=10
最佳swappiness值取決于您的系統工作負載以及內存的使用方式。您應該以小增量調整此參數以查找最佳值。
如何刪除交換文件
如果出于任何原因要停用并刪除交換文件,請按照下列步驟操作:
1. 首先,使用以下命令停用交換:
sudo swapoff -v /swapfile
2. 刪除交換文件條目/swapfile swap swap defaults 0 0從/etc/fstab文件。
3. 最后刪除實際的swapfile文件:
sudo rm /swapfile
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答