不同于直接通过fdisk创建swap分区,通过创建文件方式生成swap交换分区。
使用fdisk命令创建请参考链接: CentOS 7 扩展磁盘分区.
参考资料
参考链接: Centos7中添加、删除Swap交换分区的方法.
一、当前环境
CentOS 7.9
[root@centos7-18 ~]# df -THhl
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 902M 0 902M 0% /dev
tmpfs tmpfs 917M 0 917M 0% /dev/shm
tmpfs tmpfs 917M 9.2M 908M 2% /run
tmpfs tmpfs 917M 0 917M 0% /sys/fs/cgroup
/dev/sda1 xfs 20G 18G 2.5G 88% /
/dev/sdb1 xfs 10G 1.2G 8.9G 12% /data
tmpfs tmpfs 184M 0 184M 0% /run/user/1000
[root@centos7-18 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 20G 0 disk
└─sda1 8:1 0 20G 0 part /
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 10G 0 part /data
sr0 11:0 1 1024M 0 rom
[root@centos7-18 ~]# fdisk -l
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):4096 字节 / 4096 字节
磁盘标签类型:dos
磁盘标识符:0x0009ee74
设备 Boot Start End Blocks Id System
/dev/sda1 2048 41943039 20970496 83 Linux
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):4096 字节 / 4096 字节
磁盘标签类型:dos
磁盘标识符:0xf4fbaa86
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 20971519 10484736 83 Linux
二、添加swap文件
- 创建swap文件
// 一定要确保/tmp所属分区有足够空间
dd if=/dev/zero of=/tmp/centos-swap bs=1024 count=2048000
- 格式化swap文件
// 一定要确保/tmp所属分区有足够空间
mkswap /tmp/centos-swap
- 修改swap文件属性
// 一定要确保/tmp所属分区有足够空间
chmod 600 /tmp/centos-swap
- 设置swap文件
mkswap -f /tmp/centos-swap
- 激活swap文件
swapon /tmp/centos-swap
三、检查swap
[root@centos7-18 ~]# free -m
total used free shared buff/cache available
Mem: 1833 902 376 9 553 763
Swap: 1999 0 1999
四、启动挂载
vim /etc/fstab
// 在fstab中增加以下内容
/tmp/centos-swap swap swap default 0 0
五、删除swap
- 卸载swap文件
swapoff /tmp/centos-swap
- 删除启动挂载
vim /etc/fstab
// 在fstab中删除以下内容
/tmp/centos-swap swap swap default 0 0
- 删除swap文件
rm -rf /tmp/centos-swap