一、介绍
swap分区是磁盘上的一块空间。当系统物理内存吃紧时,Linux会将内存中一些很长时间没有什么操作的程序存储到swap分区上,这样系统就能释放更多物理内存,从而提升系统性能。而当系统需要访问swap上存储的内容时,只需重新将swap上存储的内容加载到内存中即可。
二、查看当前的swap分区
命令:free,显示当前内存使用情况
参数解释:
- -m:以M为单位显示;
- -g:以G为单位显示;
- -t:以总和的形式显示内存的使用信息;
- -h:以可读性更强形式显示;
- -s:间隔多少秒查看一次内存;
[root@localhost ~]# free -tm #查看内存使用情况
total used free shared buff/cache available
Mem: 972 568 80 29 322 232
Swap: 2047 224 1823 #交换分区内存使用情况
Total: 3020 793 1904
输出字段解释:
- total:内存总数;
- used:已经使用的内存数;
- free:空闲的内存数;
- shared:当前已经废弃不用;
- buffers Buffer:缓存内存数;
- cached Page:缓存内存数。
三、创建swap分区
1、swap分区大小配置多少合适
物理内存(MB) 不需要休眠 需要休眠 最大值
256 256 512 512
512 512 1024 1024
1024 1024 2048 2048
物理内存(GB) 不需要休眠 需要休眠 最大值
1 1 2 2
2 1 3 4
3 2 5 6
4 2 6 8
5 2 7 10
6 2 8 12
8 3 11 16
12 3 15 24
16 4 20 32
24 5 29 48
32 6 38 64
64 8 72 128
128 11 139 256
请注意:
2、准备分区
[root@localhost ~]# fdisk /dev/sdc #使用fdisk命令创建分区
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x72d4665e 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n #创建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended Select (default p): p #创建主分区
分区号 (1-4,默认 1):1 #设置分区号序号为1
起始 扇区 (2048-10485759,默认为 2048): #起始扇区默认回车
将使用默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):+1G #结束扇区大小1G
分区 1 已设置为 Linux 类型,大小设为 1 GiB
命令(输入 m 获取帮助):w #保存并退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# partprobe /dev/sdc #刷新磁盘信息
3、格式化swap分区
命令:mkswap,建立交换分区
参数解释:
- -c:建立交换区前,先检查是否有损坏的区块;
- -f:强制执行;
[root@localhost ~]# mkswap /dev/sdc1 #建立交换分区
正在设置交换空间版本 1,大小 = 1048572 KiB
无标签,UUID=265bef2f-4f7b-4e9a-9594-6d0cc1c3dfbe
4、挂载swap分区
命令:swapon,激活swap交换分区
- -s:显示交换分区使用情况;
[root@localhost ~]# swapon /dev/sdc1 #激活交换分区
[root@localhost ~]#
[root@localhost ~]# swapon -s /dev/sdc1 #显示交换分区使用情况
文件名 类型 大小 已用 权限
/dev/dm-1 partition 2097148 229376 -2
/dev/sdc1 partition 1048572 0 -3
[root@localhost ~]#
命令:swapoff,关闭swap交换分区
- -a:关闭配置文件“/etc/fstab”中所有的交换分区。
[root@localhost ~]# swapoff /dev/sdc1 #关闭交换分区
[root@localhost ~]#
[root@localhost ~]# swapon -s #查看交换分区情况
文件名 类型 大小 已用 权限
/dev/dm-1 partition 2097148 229116 -2
[root@localhost ~]#