sysctl.conf 中忽略了 Swappiness 设置在

sysctl.conf 中忽略了 Swappiness 设置在

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 中以使设置持久

相关内容