Swap分区又称为交换分区,通常是在硬盘中预留一块分区作为swap交换分区,当系统内存出现不足时,系统会将空闲内存的数据复制到swap分区,以释放被这些空闲内存所占用的物理内存;当系统需要用到之前复制到swap分区的空闲内存数据的时候,可以再次从swap分区读取到内存中,以此缓解由于系统内存空间不足,而导致的问题。
查看swap分区的使用情况
在linux系统中,通常使用free -m
来查看内存和swap分区的使用情况。
[root@localhost ~]# free -m
total used free shared buff/cache available
Mem: 985 318 269 7 397 491
Swap: 2047 0 2047
其中上述各字段的意义如下:
- total:表示内存总的大小;
- used:表已经使用的内存的大小,大小等于total-free-buffers-cache;
- free:表示空闲内存的大小;
- shared:表示共享内存的大小
- buff/cache:表示buff和cache一共占用的内存大小;
- available:系统预计还能腾出给新的应用使用的内存大小;
- Mem:物理内存;
- Swap:交换分区;
创建swap分区
swap分区的创建与其他文件系统不一样,其使用单独的创建命令mkswap [options] [device]
。
在使用fdisk -l
划分了swap分区(类别为82)后,需要使用mkswap命令对该分区进行格式化创建,否则该分区依旧是无法启动为swap。
[root@localhost ~]# mkswap /dev/sdb2
正在设置交换空间版本 1,大小 = 1048572 KiB
无标签,UUID=2e793994-0d48-4365-ab5f-af94a97cc33b
mkswap使用-L选项可以在格式化swap分区时指定分区磁盘文件的卷标。
[root@localhost ~]# mkswap -L swap /dev/sdb2
mkswap: /dev/sdb2: warning: wiping old swap signature.
正在设置交换空间版本 1,大小 = 1048572 KiB
LABEL=swap, UUID=fdb0186c-bcf1-4058-9b94-b58379b17616
同理-U选项可以指定对应分区磁盘文件的UUID。
1、swap是Linux下的虚拟内存,设置适当的swap可增加服务器稳定性
2、建议swap容量在真实内存容量的1.5倍左右,若您的服务器内存大于4GB,可设1-2GB的固定值
3、swap文件默认保存在/www/swap,设置前请确保磁盘空间够用
4、若您不需要swap,请将容量设为0
5、OVZ虚拟架构机器不可用此功能