Linux cache 和 swap 空间管理(内存缓存和交换分区)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

释放cache 缓存空间

查看当前/proc/sys/vm/drop_caches的值,默认为0 运行 sync 命令,确保文档系统的完整性

sync

如果仅仅想释放pagecache,那么执行

echo 1 > /proc/sys/vm/drop_caches

如果想释放dentries和inodes,则执行

echo 2 > /proc/sys/vm/drop_caches

如果想释放pagecache, dentries以及inodes,那么执行

echo 3 >/proc/sys/vm/drop_caches

利用swapoff和swapon刷新swap缓存

1.清理缓存

sync
echo 3 > /proc/sys/vm/drop_caches
  1. free -m 检查决定空闲内存是大于swap的 3.关闭swap

    date && swapoff -a &&

这一步可能需要一定的时间 4.打开swap

swapon -a

注意:请选择业务低峰期进行操作

阿里云ECS 添加swap

开启 SWAP 1、创建用于交换分区的文件:

dd if=/dev/zero of=/mnt/swap bs=1M  count=1024

注:block_size、number_of_block 大小可以自定义,比如 bs=1M count=1024 代表设置 1G 大小 SWAP 分区。

2、设置交换分区文件:

mkswap /mnt/swap

3、立即启用交换分区文件

swapon /mnt/swap

/etc/rc.local

 /etc/rc.local 中有 swapoff -a 需要修改为 swapon -a

4、设置开机时自启用 SWAP 分区:

需要修改文件 /etc/fstab 中的 SWAP 行,添加

/mnt/swap swap swap defaults 0 0
  1. 修改 swpapiness 参数 /proc/sys/vm/swappiness
sudo  echo 5 > /proc/sys/vm/swappiness
# 内存剩余5% 使用swap

/etc/sysctl.conf

vm.swappiness=5

转载于:https://my.oschina.net/attacker/blog/701461

你可能感兴趣的:(Linux cache 和 swap 空间管理(内存缓存和交换分区))