CentOS设置虚拟内存

2024-03-12 11:26:33 浏览数 (2)

一、停用虚拟内存

1.查看当前虚拟内存分区路径,一般位于/etc/fstab

2.停止正在使用swap分区

代码语言:javascript复制
swapoff  /dev/mapper/cl-swap

3.删除swap分区文件

代码语言:javascript复制
rm -rf   /dev/mapper/cl-swap

4.进入/etc/fstab注释掉fstab文件里开机自动挂载配置,内容如下:

代码语言:javascript复制
/dev/mapper/cl-swap      swap     swap     defaults     0     0

二、开启虚拟内存

1.创建swap交换文件,添加swap分区(执行完会有些卡,请等待)

代码语言:javascript复制
dd  if=/dev/zero  of=/var/swapfile  bs=1024  count=4194304 

注:

bs=1024:设置数据的单位,即同时读入/输出的块字节大小为1024(kb)。

count = 4194304:单位为b,表示虚拟内存大小为4G。

2.将交换文件格式化并转换为swap分区(提示不安全权限不用管,已经激活了)

代码语言:javascript复制
mkswap  /var/swapfile

3.挂载并激活分区

代码语言:javascript复制
swapon   /var/swapfile

4.修改fstab配置,设置开机自动挂载该分区

代码语言:javascript复制
echo  "/var/swapfile swap swap defaults 0 0" >>  /etc/fstab

三、设置虚拟内存的使用策略

注:vm.swappiness 是一个用于动态调整Linux内核虚拟内存管理参数的命令。其中 vm.swappiness 参数控制了操作系统在使用物理内存和交换空间(Swap)之间的倾向性。

当 vm.swappiness 设置为0时,系统尽可能避免使用交换空间,只有在物理内存不足时才会使用。

当 vm.swappiness 设置为10时,Linux内核在处理内存和交换空间时会相对保守,只有在适度需要时才开始使用交换空间,优先保持应用程序在物理内存中的驻留,以减少磁盘I/O并提高性能。

当 vm.swappiness 设置为100时,系统积极地将 inactive(非活动的)内存页换出到交换空间,以尽量保持所有内存都用作缓存。

1.查看vm.swappiness当前数值

代码语言:javascript复制
cat /proc/sys/vm/swappiness

2.修改swappiness值(设置完立即生效,不需要重启系统)

代码语言:javascript复制
sysctl vm.swappiness=10

3.设置永久有效,重启系统后仍然有效

代码语言:javascript复制
echo "vm.swappiness=10"  >>  /etc/sysctl.conf

0 人点赞