linux Swap管理


简介

当物理内存不足时,拿出部分硬盘空间当SWAP分区(虚拟成内存)使用,从而解决内存容量不足的情况

SWAP意思是交换,顾名思义,当某进程向OS请求内存发现不足时,OS会把内存中暂时不用的数据交换出去,放在SWAP分区中,这个过程称为SWAP OUT。
当某进程又需要这些数据且OS发现还有空闲物理内存时,又会把SWAP分区中的数据交换回物理内存中,这个过程称为SWAP IN

注:条件允许,能不用swap就不用,毕竟磁盘IO和内存读取不是一个数量级,几乎所有数据库对swap都不怎么待见,无论MySQL、Oracal、MongoDB抑或HBase

操作

/etc/sysctl.conf 里面可以控制使用
vm.swappiness = 0

控制换出运行时内存的相对权重,参数值大小对如何使用swap分区有很大联系。值越大,表示越积极使用swap分区,越小表示越积极使用物理内存

查看当前配置 cat /proc/sys/vm/swappiness

检查

swapon -s

创建

4G 大小
dd if=/dev/zero of=/swapfile bs=1024 count=4194304

  • 参数说明

if=文件名:输入文件名,缺省为标准输入。即指定源文件
of=文件名:输出文件名,缺省为标准输出。即指定目的文件
bs=bytes:同时设置读入/输出的块大小为bytes个字节
count=blocks:仅拷贝blocks个块,块大小等于bs指定的字节数

格式化

mkswap /swapfile

打开激活

swapon /swapfile

永久生效还需修改 /etc/fstab 文件
添加: /swapfile swap swap defaults 0 0

下一次系统启动时,新的swap文件自动开启

free 命令检查swap

更改权限
chown root:root /swapfile
chmod 0600 /swapfile

删除

swapoff /swapfile 卸载swap文件
修改/etc/fstab文件 从配置总删除
rm -rf /swapfile 删除文件


文章作者: 江湖义气
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 江湖义气 !
  目录