Linux系统调优04-swap交换分区

Linux系统调优04-swap交换分区

1.原理

1.1在内存不足的情况下会使用SWAP交换分区
2.2交换分区原理:
  • 防止内存使用消耗殆尽的机制。
  • 当Linux系统发现物理内存使用量不足时,就会选择内存中较长时间内没有被访问和更新的内存数据,将这些内存数据临时写入SWAP中,并释放物理内存中相应的空间,提供给系统中当前运行的程序使用。
  • 当某个程序要使用SWAP中的数据时,系统会再次从SWAP中读取之前保存的数据并写回物理内存中

在这里插入图片描述

2. 如何定义使用SWAP 交换分区

2.1./proc/sys/vm/swappiness文件:配置何时使用swap分区

swappiness文件可以设置范围0-100,当设置不同值时,SWAP策略的差异性就会出现

2.2.查看swappiness值

第一种方法:

  • cat /proc/sys/vm/swappiness

#大多数Linux发行版默认swappiness值为60

第二种方法:

  • sysctl vm.swappiness

在这里插入图片描述

在这里插入图片描述
linux的基本默认设置为60,也就是说,你的内存在使用到100-60=40%的时候,就开始出现有交换分区的使用。大家知道,内存的速度会比磁盘快很多,这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能。

举例: 某笔记本电脑有 16 GB 的内存和 8 GB 的交换空间。如果我在内核参数中使用 60 swappiness,那么在使用大约 6 GB (16G*40% == 6.4G)的内存后,我的机器开始使用交换,这不必要地使我的应用程序变慢。

3.改变swappiness值

3.1.临时更改swappiness值

临时调整的方法如下,我们调成10:

方法1;
[root@mydb ~]# sysctl vm.swappiness=10
vm.swappiness = 10
 
方法2:
[root@mydb ~]# echo 10 > /proc/sys/vm/swappiness

新值会立即使用,无需重新启动。 这只是临时调整的方法,重启后会回到默认设置的

3.2.永久更改swappiness值

要想永久调整的话,需要在/etc/sysctl.conf修改,加上:

[root@mydb ~]# vim /etc/sysctl.conf
 

#加上
vm.swappiness=10

在这里插入图片描述
激活设置

[root@mydb ~]# sysctl -p

在这里插入图片描述

4.在 Linux 中清除SWAP

语法:

swapoff -a && swapon -a

命令的解释:

  • swapon命令用于激活Linux系统中交换空间,Linux系统的内存管理必须使用交换区来建立虚拟内存。
  • swapoff命令用于关闭指定的交换空间(包括交换文件和交换分区)。swapoff实际上为swapon的符号连接,可用来关闭系统的交换区。
4.1. swapon命令解释

语法:

swapon (选项) (参数)

选项:

  • -a:将/etc/fstab文件中所有设置为swap的设备,启动为交换区;
  • -h:显示帮助;
  • -p<优先顺序>:指定交换区的优先顺序;
  • -s:显示交换区的使用状况;
  • -V:显示版本信息。
4.2. swapoff命令解释

语法:

swapoff (选项) (参数)

选项:

  • -a:关闭配置文件“/etc/fstab”中所有的交换空间。

原文链接:https://blog.csdn.net/hhd1988/article/details/128020048

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值