交換空間是 RAM 內存已滿時使用的硬盤的一部分。交換空間能夠是專用交換分區或交換文件。當 Linux 系統耗盡物理內存時,非活動頁面將從 RAM 移動到交換空間。Swappiness 是一個 Linux 內核屬性,用於設置將頁面從物理內存交換到交換空間以及從頁面緩存中刪除頁面之間的平衡。它基本上定義了系統使用交換空間的頻率。本文介紹如何更改 Linux 系統上的 swappiness 值。 |
檢查 Swappiness 值html
要檢查系統上的當前 swappiness 值,請使用如下 cat 命令:linux
cat /proc/sys/vm/swappiness
大多數 Linux 發行版上的默認 swappiness 值爲 60 :數據庫
60緩存
雖然 60 的 swappiness 值適合大多數用戶,但在某些狀況下,您可能須要設置較低的值。服務器
您能夠用來肯定 swappiness 值的另外一個命令是 sysctl :app
sysctl vm.swappiness vm.swappiness = 60
改變 Swappiness 值編輯器
Swappiness 能夠具備 0 到 100 之間的值。值 0 指示內核積極地避免儘量長時間地交換。值 100 將積極地將進程交換出物理內存。性能
較低的值將使內核儘量避免交換,而較高的值意味着內核將嘗試更積極地使用交換空間。htm
訪問交換內存比直接訪問物理內存要慢得多。 swappiness 參數的較低值極可能會提升總體系統性能。對於常規桌面安裝,建議值爲 10 。對於大多數數據庫服務器,建議使用 swappiness 值0或1。進程
最佳 swappiness 值取決於您的系統工做負載和 RAM 內存的大小。您應該以小增量調整此參數以查找最佳值。
例如,要在運行時將 swappiness 值設置爲 10 ,請以 root 或 sudo 用戶身份鍵入如下命令:
sudo sysctl vm.swappiness=10
要使 swappiness 參數在從新啓動後保持不變,請使用文本編輯器打開文件 /etc/sysctl.conf :
sudo nano /etc/sysctl.conf
找到 vm.swappiness 參數並更改其值。若是此參數不存在,請將如下行附加到該文件 /etc/sysctl.conf 中
vm.swappiness=10
結論
咱們已經向您展現瞭如何更改 swappiness 參數的值。