修改 swap 机制使系统使用 swap 创建的虚拟内存
首先,可以使用指令查看当前 swap 使用量:
free -sh
当前如果还没有 swap total(总量)值,可以根据教程 Linux 扩展(增加) swap 交换分区 创建 swap,此时再次查看内存,可以看到 swap total(总量) 已有值。
之后 swap 使用量为 0,有可能是 swap 的工作机制造成的。
通过
cat /proc/sys/vm/swappines
查看 swap 的使用情况(默认为 0),0 表示尽量使用内存,100 表示尽量 swap 磁盘。
修改 /etc/sysctl.conf
文件,将 vm.swappiness = 0
改为 vm.swappiness = 100
,保存配置内容。
执行 sysctl -p
使配置及时生效,此时再次查看 cat /proc/sys/vm/swappines
值已经修改。
但改完之后,很长时间都没有效果。直到启动了一个比较占内存的 elastic search,终于 swap used(已使用)有了数值变化:
total used free shared buffers cached
Mem: 7.8G 7.7G 132M 30M 27M 257M
-/+ buffers/cache: 7.4G 417M
Swap: 3.9G 694M 3.2G