在sysctl.conf中更改swappiness对我来说不起作用
我正在使用12.04 LTS并且可以sudo sysctl将swappiness设置为10,但是向sysctl.conf添加vm.swappiness = 10对我来说不起作用 – 重启后,swappiness仍然报告60(默认)
我希望能够减少到我的SSD的交换,但除了每个会话手动之外无法找到一种方法。 修改sysctl.conf似乎最适用 – 有人可以建议我需要检查/更改以使其对我有用吗?
我通常做的是在/etc/sysctl.d/
创建自定义规则,而不是编辑主sysctl
文件。 将目录更改为sysctl.d
并创建您的文件:
cd /etc/sysctl.d/ sudo touch 60-my-swappiness.conf
然后运行您喜欢的文本编辑器:
sudo nano 60-my-swappiness.conf
在文件顶部输入您的值,例如, vm.swappiness = 10
(swappiness和值之间必须有空格 ,如图所示)。
正如它在/etc/sysctl.d/
中的自述 /etc/sysctl.d/
所建议的那样,运行
sudo service procps start
让系统读取新值然后重新启动。
我们在my-swappiness.conf
开始时使用60
的原因是,您的自定义规则会覆盖目录中的任何其他规则。
检查您是否具有正确的swappiness
cat /proc/sys/vm/swappiness 10
这对我有用,但如果您需要更详细的信息, Ubuntu指南中有关于交换和swappiness的更多指导。
-
查看swappiness设置的当前值:
sudo cat /proc/sys/vm/swappiness
(这里应该给60个数字) -
将值更改为较小的数字
sudo sysctl -w vm.swappiness=5
-
再次检查该值。
sudo cat /proc/sys/vm/swappiness
(现在,它应该在这里给出值5) -
gksu gedit /etc/sysctl.conf
将以下行粘贴到打开的文本文件上:
vm.swappiness = 5
(当它应该读取vm.swappiness = 10
时你有vm.swappiness = 10
)
-
重启。
-
再次检查设置以确认已进行的更改:
sudo cat /proc/sys/vm/swappiness
(现在,它应该在这里给出一个数字5)