文件扩展Swap空间
问题
- 使用dd命令创建一个大小为2048MB的交换文件,放在/opt/swap.db
- 将swap.db文件格式化成Swap文件系统
- 启用swap.db文件,查看Swap空间大小
- 停用swap.db文件,查看Swap空间大小
方案
Swap空间来源于硬盘空间,这个思路不变。我们可以换种方式,来扩展Swap空间。就是可以创建一个大的文件,文件占用的是磁盘空间,再将这个文件格式化使用。这个方式是可行的,但难点在于文件怎么生成呢?我们可以用dd这条命令。
例如 dd if=/dev/zero of=/opt/swap.db bs=1M count=2048 ,相关说明如下:
dd:为命令字。
if:读取数据的来源是哪,而/dev/zero是一个特殊的设备它可以产生无限的数据,常用来与dd命令搭配使用。
of:将数据写入到哪里去,可以是其他设备,也可以是指定路径下的一个文件名。
bs:每次读取和写入数据的大小为1M。
count:为读取和写入的次数为2048次。
步骤
实现此案例需要按照如下步骤进行。
步骤一:使用dd命令创建一个大小为2048MB的交换文件,放在/opt/swap.db
命令操作如下所示:
[root@localhost ~]# dd if=/dev/zero of=/opt/swap.db bs=1M count=2048
记录了2048+0 的读入
记录了2048+0 的写出
2147483648字节(2.1 GB)已复制,95.5419 秒,22.5 MB/秒
[root@localhost ~]# ls -lh /opt/swap.db
-rw-r–r--. 1 root root 2.0G 2月 27 21:24 /opt/swap.db
步骤二:将swap.db文件格式化成Swap文件系统
命令操作如下所示:
[root@localhost ~]# mkswap /opt/swap.db //将文件格式化为Swap文件系统
mkswap: /opt/swap.db: warning: don’t erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=4dc743fd-86a6-477b-a3fc-a811f41dbd43
[root@localhost ~]#
步骤三:启用swap.db文件,查看Swap空间大小
命令操作如下所示:
[root@localhost ~]# swapon /opt/swap.db //启用swap.db文件
[root@localhost ~]# swapon -s
Filename Type Size Used Priority
/dev/sda5 partition 8388600 0 -1
/opt/swap.db file 2097144 0 -2
[root@localhost ~]#
步骤四:停用swap.db文件,查看Swap空间大小
命令操作如下所示:
[root@localhost ~]# swapoff /opt/swap.db //停用swap.db文件
[root@localhost ~]# swapon -s
Filename Type Size Used Priority
/dev/sda5 partition 8388600 0 -1
[root@localhost ~]#