Swap分区介绍
Swap分区是什么?Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
Swap分区的作用是什么?它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行。
swap 分区和 swap 文件都是 Linux 系统中用于扩展内存的技术,但它们在实现方式上有所不同。
swap 分区:
swap 分区是在磁盘上分配的特定区域,它被格式化为 swap 文件系统(通常是 Linux Swap)。
swap 分区的大小是固定的,无法动态调整,除非重新分区磁盘。
swap 分区通常位于硬盘或其他存储介质上,而不是系统盘(如 TF 卡或 SSD)。
swap 分区在系统启动时自动激活,不需要手动操作。
swap 分区的大小对系统性能有直接影响,较大的 swap 分区可以提供更多的内存扩展,但也可能增加磁盘 I/O 负担。
swap 文件:
swap 文件是在文件系统中创建的一个普通文件,通常位于根目录或特定的文件夹中。
swap 文件的大小可以根据需要动态调整,这通常比重新分区磁盘要简单。
swap 文件可以位于系统盘上,这意味着它可能会影响系统的读写性能。
swap 文件在系统启动时不会自动激活,需要手动启用。
swap 文件的大小可以根据系统需求进行调整,但是它不能像 swap 分区那样提供大量的内存扩展。
创建Swap分区
查看当前系统是否存在Swap分区
如果不存在返回内容如下:
如果我们Swap分区设置的不合理(太小),并且VPS本身的物理内存也不够用,那么就会出现Linux Swap占用很高,甚至Swap分区全部占满的情况,一般来说,根据Linux内存的大小不同,我们可以按照下面的对应关系设置Swap分区大小:
内存 <= 4g:Swap 至少 4G
内存 4~16G:Swap 至少 8G
内存 16G~64G:Swap 至少 16G
内存 64G~256G:Swap 至少 32G
关闭swap分区,如果没有就不存在这一步骤
创建Swap分区
建立 Swap 的文件系统(格式化为 Swap 分区文件)
启用 Swap 分区
查看交换分区是否成功创建,如果有 Swap 就说明创建成功了
设置开启启动,在 /etc/fstab 文件中加入一行代码
Swap开关设置
查看swap交换分区
开启swap交换分区
关闭swap交换分区
重启swap交换分区
Swap的优先级
优先级的范围
Swap优先级的数值范围是从-1到32767。数值越高,优先级越高。当内核需要使用swap空间时,它会优先使用优先级最高的swap区域。
默认优先级
如果没有为swap区域设置优先级,Linux内核会默认为它分配一个优先级。通常,内核会根据swap分区的设备号来分配一个默认的优先级,通常是0。对于使用mkswap
命令创建的swap文件或分区,如果没有指定优先级,它们通常会获得相同的默认优先级。
设置优先级
可以使用swapon
命令的-p
或--priority
选项来设置swap区域的优先级。以下是设置swap文件优先级的示例:
上述命令将swap文件的优先级设置为1000。
评论区