文章目录
- 03 KVM虚拟机镜像制作
- 3.1 概述
- 3.2 制作镜像
- 3.2.1 使用root用户安装qemu-img软件包
- 3.2.2 使用qemu-img工具的创建镜像文件
- 3.3 修改镜像磁盘空间大小
- 3.3.1 查询当前虚拟机镜像磁盘空间大小
- 3.3.2 修改镜像磁盘空间大小
- 3.3.3 查询修改后的镜像磁盘空间大小
03 KVM虚拟机镜像制作
3.1 概述
虚拟机镜像是一个文件,包含了已经完成安装并且可启动操作系统的虚拟磁盘。虚拟机镜像具有不同格式,常见的有raw格式和qcow2格式。qcow2格式镜像相比raw格式,具有占用更小的空间,支持快照、Copy-On-Write、AES加密、zlib压缩等特性,但性能略逊于raw格式镜像。镜像文件的制作借助于qemu-img工具,本节以qcow2格式镜像文件为例,介绍虚拟机镜像制作过程。
3.2 制作镜像
制作qcow2格式镜像文件的操作步骤如下:
3.2.1 使用root用户安装qemu-img软件包
# dnf install -y qemu-img
示例命令如下:
[root@superman-21 ~]# dnf install -y qemu-img
Last metadata expiration check: 1 day, 1:41:53 ago on 2023年02月04日 星期六 20时50分36秒.
Dependencies resolved.
============================================================================================================================
Package Architecture Version Repository Size
============================================================================================================================
Installing:
qemu-img x86_64 10:6.2.0-60.oe2203 update 2.4 M
Transaction Summary
============================================================================================================================
Install 1 Package
Total download size: 2.4 M
Installed size: 8.7 M
Downloading Packages:
qemu-img-6.2.0-60.oe2203.x86_64.rpm 4.1 MB/s | 2.4 MB 00:00
----------------------------------------------------------------------------------------------------------------------------
Total 4.1 MB/s | 2.4 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : qemu-img-10:6.2.0-60.oe2203.x86_64 1/1
Verifying : qemu-img-10:6.2.0-60.oe2203.x86_64 1/1
Installed:
qemu-img-10:6.2.0-60.oe2203.x86_64
Complete!
[root@superman-21 ~]#
3.2.2 使用qemu-img工具的创建镜像文件
使用qemu-img工具的create命令,创建镜像文件,命令格式为:
# qemu-img create -f <imgFormat> -o <fileOption> <fileName> <diskSize>
其中,各参数含义如下:
- imgFormat:镜像格式,取值为raw, qcow2等。
- fileOption:文件选项,用于设置镜像文件的特性,如指定后端镜像文件,压缩,加密等特性。
- fileName:文件名称。
- diskSize:磁盘大小,用于指定块磁盘设备的大小,支持的单位有K、M、G、T,分别代表KiB、MiB、GiB、TiB。
示例命令如下:
创建一个磁盘设备大小为4GB、格式为qcow2的镜像文件openEuler-imge.qcow2,命令和回显如下:
[root@superman-21 ~]# qemu-img create -f qcow2 openEuler-image.qcow2 4G
Formatting 'openEuler-image.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=4294967296 lazy_refcounts=off refcount_bits=16 cache=writeback
[root@superman-21 ~]#
3.3 修改镜像磁盘空间大小
当虚拟机需要更大的磁盘空间时,可以使用qemu-img工具,修改虚拟机镜像磁盘空间的大小,修改方法如下。
3.3.1 查询当前虚拟机镜像磁盘空间大小
# qemu-img info <imgFiLeName>
示例命令如下:
查询openEuler-image.qcow2镜像磁盘空间大小的命令和回显如下,说明该镜像磁盘空间大小为4GiB。
[root@superman-21 ~]# qemu-img info openEuler-image.qcow2
image: openEuler-image.qcow2
file format: qcow2
virtual size: 4 GiB (4294967296 bytes)
disk size: 196 KiB
cluster_size: 65536
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: false
refcount bits: 16
corrupt: false
extended l2: false
[root@superman-21 ~]#
3.3.2 修改镜像磁盘空间大小
命令如下,其中_imgFiLeName_为镜像名称,“+”和“-”分别表示需要增加或减小的镜像磁盘空间大小,单位为K、M、G、T,代表KiB、MiB、GiB、TiB。
# qemu-img resize <imgFiLeName> [+|-]<size>
示例命令如下:
将上述openEuler-image.qcow2镜像磁盘空间大小扩展到10GiB,即在原来4GiB基础上增加6GiB,命令和回显如下:
[root@superman-21 ~]# qemu-img resize openEuler-image.qcow2 +6G
Image resized.
[root@superman-21 ~]#
3.3.3 查询修改后的镜像磁盘空间大小
查询修改后的镜像磁盘空间大小,确认是否修改成功,命令如下:
# qemu-img info <imgFiLeName>
示例命令如下:
上述openEuler-image.qcow2镜像磁盘空间已扩展到10GiB,命令和回显如下:
[root@superman-21 ~]# qemu-img info openEuler-image.qcow2
image: openEuler-image.qcow2
file format: qcow2
virtual size: 10 GiB (10737418240 bytes)
disk size: 200 KiB
cluster_size: 65536
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: false
refcount bits: 16
corrupt: false
extended l2: false
[root@superman-21 ~]#
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!