如何给Linux开启swap虚拟内存

一、开启虚拟内存:
  • 查看系统内存资源
    free -h

  • 创建swap分区,这里我开的是32G,根据实际情况而定
    dd if=/dev/zero of=/opt/swapdata bs=1024 count=33554432

参数说明
dev/zero:是Linux的一种特殊字符设备(输入设备),可以用来创建一个指定长度用于初始化的空文件,如临时交换文件,该设备无穷尽地提供0,可以提供任何你需要的数目。
 of=/opt/swapdata:swap分区存储目录和文件名称
bs=1024:单位数据块(block)同时读入/输出的块字节大小为1024 个字节即1KB,bs(即block size)。
count = 33554432表示的是32G,即虚拟内存的总大小,单位是KB

  • 将交换文件swapdata格式化为swap分区文件
    mkswap /opt/swapdata

  • 修改swap分区文件权限
    chmod -R 0600 /opt/swapdata

  • 挂载并激活分区
    swapon /opt/swapdata

  • 使用vim编辑器编辑配置文件/etc/fstab,设置开机自动挂载该swap分区
    在文件内追加以下内容(如果文件是被锁的只读状态,使用chattr -i /etc/fstab 解锁,修改后记得加锁回去chattr +i /etc/fstab)
    /opt/swapdata swap swap defaults 0 0

  • 配置swap分区的使用机制
    命令: sysctl vm.swappiness=10

可以通过swappiness值进行管理,swappiness表示系统对Swap分区的依赖程度,
范围是0~100,数值越大,依赖程度越高,也就是越高越会使用Swap分区。
例如该值配置为50,表示当物理内存的使用比例达到50%时,虚拟内存开始工作,
这个比例值一般不宜配置过高,一般使用10,尽量优先使用物理内存。

(对于具有足够内存和 CPU 的系统,将 swappiness 参数设置为0可能会提高系统性能,因为它可以尽可能地避免使用交换分区。
但是,请注意,如果系统内存不足,这可能会导致系统崩溃或者导致进程被杀死。)   
  • 如需永久配置:
    echo "vm.swappiness = 10" >> /etc/sysctl.conf
二、关闭虚拟内存:

关闭并删除swap分区虚拟内存
①关闭swap分区
swapoff /opt/swapdata

②删除swap分区文件
rm -rf /opt/swapdata

③删除fstab文件里追加的swap分区开机自动挂载配置内容,即把加进去的这段内容删除掉
/opt/swapdata swap swap defaults 0 0

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值