---
title: 制作机密虚拟机qcow2镜像
description: "本章节主要介绍如何制作启动机密虚拟机所需的qcow2镜像。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcctrustzone/tee/cVMcont/kunpengtee_16_0045.html
sourcePath: /source/zh/kunpengcctrustzone/tee/cVMcont/kunpengtee_16_0045.html
indexId: c1b983fa371e01e06fcd653b36267a277416790df83ec9b8e02a908d639d260a65
---
# 制作机密虚拟机qcow2镜像

本章节主要介绍如何制作启动机密虚拟机所需的qcow2镜像。

1. 安装依赖。

```
yum install dnf-plugins-core grub2-efi-aa64-modules libguestfs qemu-img virt-install guestfs-tools cloud-utils-growpart nbdkit ncurses-devel openssl-devel elfutils-libelf-devel dwarves
yum groupinstall "Development Tools"
```


2. 通过以下命令拉取脚本文件。

```
git clone https://gitcode.com/openeuler/virtCCA_sdk.git
cd virtCCA_sdk/cvm-image-rewriter/
```


3. 确保libvirtd已安装并启动，具体安装步骤可参见部署libvirt。

```
systemctl start libvirtd
```


4. 启动后查看libvirtd状态，状态为active (running)即为启动成功。

```
systemctl status libvirtd
```


5. 执行create-oe-image.sh脚本文件后在当前脚本目录下生成qcow2镜像和cVM镜像度量基线值文件image_reference_measurement.json。

```
export LIBGUESTFS_BACKEND=direct
sh create-oe-image.sh -v 24.03-LTS-SP3  -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
```


  - 脚本不支持同时指定创建镜像模式和度量模式，单次运行仅支持两种模式二选一。
