swappiness 设置为 0 并且我无法更改它。
我尝试过更改 swappiness 设置/etc/sysctl.conf
-/etc/sysfs.conf
重启后两者都会被忽略(Ubuntu 12.04):
$ sudo gedit /etc/sysctl.conf
vm.swappiness=60
$ sudo gedit /etc/sysfs.conf
vm.swappiness=60
/etc/sysctl.d/60-my-swappiness.conf
vm.swappiness=60
$ sudo cat /proc/sys/vm/swappiness
0
$ rgrep swappiness /etc/sysctl.*
/etc/sysctl.conf:# swappiness
/etc/sysctl.conf:vm.swappiness=60
/etc/sysctl.conf~:# swappiness
/etc/sysctl.conf~:vm.swappiness = 60
/etc/sysctl.d/60-my-swappiness.conf:vm.swappiness = 60
$ sudo sysctl -p
vm.swappiness = 60
$ sudo cat /proc/sys/vm/swappiness
60
重启后,swappiness 再次设置为零:
$ sudo cat /proc/sys/vm/swappiness
0
为什么我的设置/etc/sysctl.conf
在重启后无法加载?
procps 有问题吗?
我应该检查什么?
我在 askubuntu 和其他网站上寻找答案,但没有找到答案。
我看到了这个,但没有答案: systcl.conf 中忽略了 Swappiness 设置在
我该如何解决这个问题?
答案1
请先使用以下方法验证:
cat /proc/sys/vm/swappiness
此输出目前为您提供了正确的交换率。(可能是 0,也可能是 60)
如果要更改此设置,请执行以下操作:
gksudo leafpad /etc/sysctl.conf
我使用 leafpad 作为编辑器,但你可以用 gedit 来更改它(它有一个错误)滚动到此文件底部并添加 # 改变 swappiness
vm.swappiness=(在这里输入你想要的数字,例如 60 或 10(粗体表示特别指出)
保存修改后的文件并彻底重启
使用我上面给出的命令(cat ....)再次验证您的交换性
对于 1Gb 或以上的 RAM,我使用值 10;对于少于 1Gb 的 RAM,我使用值 5(个人经验)。只有对于服务器或类似的东西,才需要值 60。
祝你好运 !
答案2
我遇到了同样的问题,所以我添加了
sysctl -p
添加到我的 /etc/rc.local 文件中,现在我的 swappiness 值在重启后与 /etc/sysctl.conf 中的值相匹配。这可能反映了默认安装中某些配置不太正确,但这是一个简单的修复方法。
答案3
语法错误
如果我没记错的话,你有
vm.swappiness=60
当你应该有线
vm.swappiness = 60
在 /etc/sysctl.conf 中以使设置持久