1. 程式人生 > >CentOS7/RHEL7如何修改swappiness值?

CentOS7/RHEL7如何修改swappiness值?

swappiness centos7

示例:修改swappiness值為0

永久配置方法:

sysctl -w vm.swappiness=0

echo vm.swappiness = 0 >> /etc/sysctl.conf


臨時配置方法:

sysctl -w vm.swappiness=0

手動更改/sys/fs/cgroup/memory下子目錄對應的memory.swappiness


臨時配置後可能出現的故障描述:

物理內存還比較充足,vm.swappiness已經設置為0,但系統還是用了swap分區

故障原因

根因是虛擬機machine.slice和系統system.slicesuser.slices使用了swap空間。


直接原因

通過sysctl -w設置vm.swappiness並不能改變cgroupmachine.slicesystem.slicesuser.slices裏面對應的memory.swappiness值,這些值繼承/sys/fs/cgroup/memoryvm.swappiness的值,當創建子目錄後,再創建子目錄,此時vm.swappiness的值繼承於父目錄裏對應的vm.swappiness值,因此,在系統運行時,只改變/sys/fs/cgroup/memory這個根目錄的值,並不影響已創建子目錄的vm.swappiness配置,所以如果需要更改,就要手動操作


總結

正常情況下,如果在

sysctl.conf中配置了vm.swappiness的值,重啟之後,所有配置都是新值,但如果手動動態更改,就需要手動更改/sys/fs/cgroup/memory下子目錄對應的memory.swappiness值。


本文出自 “敏而好學” 博客,謝絕轉載!

CentOS7/RHEL7如何修改swappiness值?