Linux调整swap空间使用的优先级

本文介绍如何在Linux系统中调整Swap分区使用策略,包括查看当前swappiness值、临时修改及永久修改swappiness值的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux中Swap(交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,系统会把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。

  如果内存够大,应当告诉 linux 不必太多的使用 SWAP 分区, 可以通过修改 swappiness 的数值。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
  在ubuntu里面,默认设置swappiness这个值等于60。

1.查看当前swappiness值
 $ cat /proc/sys/vm/swappiness
2.修改swappiness值为10(临时修改,重启后即还原为默认值)
 $ sudo sysctl vm.swappiness=10

3.永久修改swappiness默认值(重启生效)
$ sudo gedit /etc/sysctl.conf
在文档的最后加上:
  vm.swappiness=10
保存重启,搞定收工!

### 查看和管理Linux交换空间使用情况 #### 使用`free`命令查看交换空间 为了快速获取系统的内存以及交换空间的概览,可以利用 `free` 命令。此命令会显示总物理内存、已用内存、空闲内存量及交换分区的信息。 ```bash $ free -h ``` 该选项 `-h` 表示以人类可读的方式展示数据大小单位[^1]。 #### 利用`swapon`命令检查启用状态 对于更详细的有关当前激活的交换文件或分区的状态报告,则应采用 `swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 7.8G 0B -2 ``` 上述输出列出了名称(`NAME`)、类型(`TYPE`, 如partition或file)、尺寸(`SIZE`)、占用量(`USED`) 及优先级 (`PRIO`) 的信息。 #### 添加新的Swap文件 当需要增加额外的交换区域时,可以通过创建一个新的swap文件来实现这一点: ```bash # 创建一个指定大小的新文件作为交换区 sudo fallocate -l 2G /swapfile # 设置适当权限保护新建立的交换文件 sudo chmod 600 /swapfile # 将其标记为可用作交换存储 sudo mkswap /swapfile # 启动这个新增加的交换设备 sudo swapon /swapfile ``` 完成以上操作之后就可以通过前面提到的方法验证是否成功启用了新的交换空间。 #### 修改Swap参数 有时可能希望调整某些与交换行为相关的内核参数,比如降低系统倾向于把页面移到交换中的倾向度(vm.swappiness)。这可以在运行期间即时更改,也可以永久保存到配置文件里以便重启后仍然有效。 临时修改: ```bash echo 10 | sudo tee /proc/sys/vm/swappiness ``` 持久化设置则需编辑 `/etc/sysctl.conf` 文件并加入如下行: ```bash vm.swappiness=10 ``` 最后应用这些改动: ```bash sudo sysctl -p ``` 这里数值越低意味着操作系统越不愿意将进程的数据移至磁盘上的交换空间去;而较高的值则表示更加积极地使用交换功能[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值