systcl.conf中忽略了Swappiness设置

我的Ubuntu 12.04 x64在戴尔XPS 15上配备8GB内存一直非常低迷。

经过一番搜索后,我发现了关于swappiness的post。 我注意到我的系统上的swappiness报告为0,这意味着交换应该只在内存全部使用时开始,但实际上与swappiness为60时的行为大致相同。

我使用以下方法将swappiness设置为10:

echo 10 > /proc/sys/vm/swappiness 

并使用以下命令更新/etc/sysctl.conf

 vm.swappiness = 10 

重新启动后,我注意到swappiness再次报告为0,性能相同。 我运行echo 10 > /proc/sys/vm/swappiness ,性能显着提高。

我再次重新启动并检查swappiness,再次报告为0。 我执行了sudo sysctl -p ,可以看到sysctl.conf的值生效。

看起来/etc/sysctl.conf中的值在启动时被忽略。

我有一个Ubuntu 12.04 32位笔记本,我也应用了相同的配置。 在笔记本电脑上,更改会按预期生效,并在重新启动后保留。

有人遇到过这种问题吗? 我该如何解决?

试试这个:

启动终端仿真器并运行

 cd /etc/sysctl.d/ echo "vm.swappiness = 10" | sudo tee 60-memory-management.conf sudo chmod 644 60-memory-management.conf 

重新启动并检查新值是否正在使用:

 cat /proc/sys/vm/swappiness` 

我只是在我的/etc/rc.local中打了下面的内容

 sysctl -w vm.swappiness=1 #Discourage swapping. 

基本上,您可以运行此命令: sudo sysctl -w vm.swappiness=1随时更改swappiness .. cat / proc / sys / vm / swappiness在此之后给出1。