Contents

swap交换分区及swap分区的扩容

Contents

Swap分区又称为交换分区,通常是在硬盘中预留一块分区作为swap交换分区,当系统内存出现不足时,系统会将空闲内存的数据复制到swap分区,以释放被这些空闲内存所占用的物理内存;

当系统需要用到之前复制到swap分区的空闲内存数据的时候,可以再次从swap分区读取到内存中,以此缓解由于系统内存空间不足,而导致的问题。

1.查看swap分区

1
2
3
4
[root@master ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1816         233        1297           8         286        1428
Swap:          1023           0        1023

total:表示内存总的大小; used:表已经使用的内存的大小,大小等于total-free-buffers-cache; free:表示空闲内存的大小; shared:表示共享内存的大小; buff/cache:表示buff和cache一共占用的内存大小; available:系统预计还能腾出给新的应用使用的内存大小; Mem:物理内存; Swap:交换分区;

2.创建swap分区

2.1.查看本机磁盘分区情况

1
2
3
4
5
6
7
[root@Frpc ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0   10G  0 disk 
├─sda1        8:1    0  600M  0 part /boot/efi
├─sda2        8:2    0    1G  0 part /boot
└─sda3        8:3    0  8.4G  0 part 
  └─cl-root 253:0    0  8.4G  0 lvm  /

现将sda4的1G空间给创建的swap分区

2.2.创建swap分区

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
[root@master ~]# fdisk /dev/sda
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): 
Using default response p
分区号 (3,4,默认 4):
起始 扇区 (22005760-41943039,默认为 22005760):
将使用默认值 22005760
Last 扇区, +扇区 or +size{K,M,G} (22005760-41943039,默认为 41943039):+1G
分区 3 已设置为 Linux 类型,大小设为 1 GiB

命令(输入 m 获取帮助):w
1
2
3
4
5
6
7
8
[root@master ~]# lsblk
NAME             MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                8:0    0   20G  0 disk 
├─sda1             8:1    0  500M  0 part /boot/efi
├─sda2             8:2    0   10G  0 part /boot
└─sda3             8:3    0  8.4G  0 part 
  └─cl-root 253:0    0  8.4G  0 lvm  /
└─sda4             8:4    0    1G  0 part 

2.3.格式化swap分区

[root@master ~]# mkswap /dev/sda4

正在设置交换空间版本 1,大小 = 1,048,574 KiB

无标签,UUID=07a72017-0095-4fbf-a4d0-20da4e864b02

2.4.启用swap交换空间

1
2
3
4
5
6
7
8
9
[root@master ~]# swapon /dev/sda4
[root@master ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda           8:0    0   10G  0 disk 
├─sda1        8:1    0  600M  0 part /boot/efi
├─sda2        8:2    0    1G  0 part /boot
└─sda3        8:3    0  8.4G  0 part 
  ├─cl-root 253:0    0  7.4G  0 lvm  /
  └─cl-swap 253:1    0    1G  0 lvm  [SWAP]
1
2
3
4
[root@master ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1816         234        1295           8         286        1427
Swap:          1023           0        1023

3.扩容swap分区

这里写的是在vg卷组下扩容swap

3.1.卸载swap分区

[root@master ~]# swapoff /dev/mapper/cl-swap

3.2.扩容swap分区

[root@master ~]# lvextend -L +10GB /dev/mapper/cl-swap

3.3.格式化swap分区

[root@master ~]# mkswap /dev/mapper/cl-swap

3.4.重新挂载

[root@master ~]# swapon /dev/mapper/cl-swap

3.5.查看swap分区信息

[root@master ~]# swapon -s

注意:交换分区大小的设置建议值:

内存小于 4GB 时, 推荐不少于 2GB 的 swap 空间

内存 4GB~16GB, 推荐不少于 4GB 的 swap 空间

内存 16GB~64GB, 推荐不少于 8GB 的 swap 空间

内存 64GB~256GB,推荐不少于 16GB 的 swap 空间