前言
本篇文章,带你了解通过终端Terminal:了解如何配置swap虚拟内存并管理swap虚拟内存。
什么是swap
swap分区是:物理内存不够用的时候,把硬盘内存中的一部分空间释放出来作为缓存空间,以供当前运行的程序使用。
这些缓存空间一般提供给长时间未使用的程序和进程。
如何创建swap分区
方法很简单,以下步骤均在root用户使用,非root用户,请使用sudo
进行提取权。
创建空文件
首先我们需要用dd
命令创建空文件:
dd if=/dev/zero of=/swapfile bs=#单文件大小 count=#份数
其中:
- #单文件大小:输入输出块的大小
- #份数:输入输出块的份数
比如:
dd if=/dev/zero of=/swapfile bs=1M count=4096
就是创建一个4096M的空文件。
空文件转换为swap文件
我们刚刚创建了空文件(swapfile
),现在把这个空文件转换为swap文件:
mkswap /swapfile
如图:
这样,名叫swapfile
的swap文件就创建好了,且放在根目录下:
启动swap分区
常规挂载方法
启动swap分区很简单:
swapon /swapfile
之后,使用free -m
即可看到挂载的swap分区了。
开机自动挂载
编辑/etc/fstab
文件,加入以下信息:
/swapfile swap swap defaults 0 0
如下:
之后,按esc
然后再按:wq
退出即可。
每次开机后就会自动挂载根目录下的swapfile文件为swap分区了。
调整swap分区
关闭swap分区
首先我们使用swapon -s
命令查看:
图中,swap分区为根目录下swapfille
文件。切勿直接删除这个文件,我们卸载该swap分区:
swapoff /swapfile
如果你当前实际可用内存小于swap已使用的空间,那么系统是不允许你关闭swap分区的嗷。
调整swap优先级
通常,swap的优先级为60(0为最小,100为积极)。你可以使用命令查看:
cat /proc/sys/vm/swappiness
修改swappiness值为10(临时修改,重启后即还原为默认值):
sysctl vm.swappiness=100
永久修改swappiness默认值(重启生效):
vim /etc/sysctl.conf
在文档的最后加上:
vm.swappiness=100
之后,按esc
然后再按:wq
退出即可。(当然,还要重启才生效)。