开发者
资源
文档评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

部署核心组件

为构建一个安全的虚拟化环境,支持TEE的隔离执行和安全启动,需要部署相关软件,本小节主要描述如何源码编译安装libvirt、QEMU、Host Kernel、edk2等组件。

编译环境信息

openEuler 24.03 LTS-SP3

下载编译依赖:

sudo yum install ninja-build libcap-ng-devel libattr-devel glib2-devel numactl-devel libslirp-devel liburing-devel meson.noarch ncurses-devel openssl-devel elfutils-libelf-devel dwarves gnutls-devel yajl-devel libtirpc-devel python3-docutils libxml2-devel rpcgen libpciaccess-devel meson
sudo yum groupinstall "Development Tools"

Yum源安装libvirt

  1. 安装openEuler 24.03 LTS SP3源的libvirt。

    安装版本号大于等于27的libvirt软件包。

    yum install libvirt

  2. 如果需要启用libvirt中透传dtb dump参数,需要修改libvirt配置使QEMU启动用户与当前OS用户一致。
    1. 查看当前用户。
      whoami 

    2. 打开“/etc/libvirt/qemu.conf”文件。
      vim /etc/libvirt/qemu.conf
    3. “i”进入编辑模式,将user、group配置项修改为“root”。

    4. “Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
    5. 查看libvirtd状态。
      systemctl status libvirtd
      如果libvirtd状态为inactive则执行如下命令启动libvirtd,否则需跳过此步骤,直接执行2.f
      systemctl start libvirtd

    6. 重新加载libvirtd配置。
      systemctl reload libvirtd

Yum源安装qemu

  1. 执行以下命令查看openEuler 24.03 LTS SP3源QEMU版本号,安装版本号大于等于71的QEMU。
    yum list | grep qemu 

  2. 执行以下命令安装openEuler 24.03 LTS SP3源的QEMU。
    yum install -y  qemu liburing-devel telnet

    安装完成之后的QEMU默认路径为“/usr/libexec/qemu-kvm”

Yum源安装host kernel

  1. 查看openEuler 24.03 LTS SP3源中可用的kernel版本。
    yum list --showduplicates kernel

  2. 安装版本号大于等于6.6.0-145.0.3.134.oe2403sp3的kernel。
    yum install kernel-6.6.0-145.0.3.134.oe2403sp3.aarch64

  3. 执行reboot命令重启,并选中新安装的内核使之生效。

部署EDK2

  1. 下载EDK2源码。
    git clone https://gitee.com/confidential_computing/edk2-tianocore.git -b stable/202505
  2. 编译。
    cd edk2-tianocore/
    git submodule update --init --recursive
    source edksetup.sh
    make -j -C BaseTools
    build -b RELEASE -a AARCH64 -t GCC5 -D CC_MEASUREMENT_ENABLE=TRUE -p ArmVirtPkg/ArmVirtQemu.dsc

    生成fd的目录:Build/ArmVirtQemu-AARCH64/RELEASE_GCC5/FV/QEMU_EFI.fd

  3. 将QEMU_EFI.fd文件大小对齐到64MB。
    fallocate -l $((64 * 1024 * 1024)) /usr/share/edk2/aarch64/QEMU_EFI.fd