制作机密虚拟机qcow2镜像
本章节主要介绍如何制作启动机密虚拟机所需的qcow2镜像。
- 安装依赖。
yum install dnf-plugins-core grub2-efi-aa64-modules libguestfs-tools qemu-img virt-install guestfs-tools cloud-utils-growpart nbdkit ncurses-devel openssl-devel elfutils-libelf-devel dwarves yum groupinstall "Development Tools"
- 通过以下命令拉取脚本文件。
git clone https://gitee.com/openeuler/virtCCA_sdk.git cd virtCCA_sdk/cvm-image-rewriter/
- 确保libvirtd已安装并启动,具体安装步骤可参见部署libvirt。
systemctl start libvirtd
- 启动后查看libvirtd状态,状态为active (running)即为启动成功。
systemctl status libvirtd

- 执行create-oe-image.sh脚本文件后在当前脚本目录下生成qcow2镜像和cVM镜像度量基线值文件image_reference_measurement.json。
export LIBGUESTFS_BACKEND=direct sh create-oe-image.sh -v 24.03-LTS-SP2 -s 10
其中create-oe-image.sh脚本支持两种模式,创建镜像模式和度量模式,对应的参数说明可参见表1。
表1 两种模式下的参数说明 脚本模式
参数名称
参数说明
创建镜像模式
-v
指定版本号。
-p
设置镜像root密码。
-s
- 扩容镜像空间,该参数为可选参数,默认为40GB。
- 扩容空间时默认使用“/var/tmp”文件夹。
-o
指定镜像输出路径,该参数为可选参数,若不设置则默认为当前脚本路径。
-f
强制重新运行脚本并清理已下载的文件,该参数为可选参数。
-k
编译安装KAE驱动。该参数为可选参数。
度量模式
-i
度量一个指定的镜像,度量完成后在脚本当前目录下生成cVM镜像度量基线值文件image_reference_measurement.json。
- 创建镜像模式中若脚本报错空间不足,可执行以下命令更换空间充足的文件夹。
export TMPDIR=/home/xxx

- 脚本不支持同时指定创建镜像模式和度量模式,单次运行仅支持两种模式二选一。
父主题: 软件编译