Skip to main content
本节提供使用 Qualcomm Linux 构建系统创建虚拟机(VM)镜像的步骤。客户机 VM 的 rootfs 和客户机 VM 内核与主机相同。 Qualcomm Linux 支持带或不带 KVM 的虚拟机监视器。目前,Qualcomm Linux 仅支持 QEMU 作为 VM 监视器。 该步骤提供以下内容:
  • 设置 KVM 的命令。
  • 使用 QEMU 启动客户机 VM 的命令。

设置开发机器

要设置开发机器,请按照以下步骤操作:
  1. 要设置构建,请参阅构建 Qualcomm Linux。
    所有 Qualcomm Linux 发行版的 DISTRO_FEATURES 中默认启用 kvm。无需单独的 KVM 发行版配置。KVM 硬件加速在 MACHINE_FEATURES 中包含 kvm 的机器上可用,目前为:iq-9075-evk 和 iq-8275-evk。在其他机器上,QEMU 在没有 KVM 加速的情况下运行。
  2. 在构建目录的 conf/local.conf 中将 virtualization 追加到 DISTRO_FEATURES。
  3. 构建 qcom-console-image 或 qcom-multimedia-image:

启动客户机 VM

本节介绍如何在 Qualcomm Linux 机器上使用 QEMU 启动客户机 VM,包括使用和不使用基于内核的虚拟机(KVM)加速两种方式。 先决条件
  • 机器上有可用的 QEMU。
  • 客户机 VM 使用主机根文件系统镜像。
  • 客户机 VM 内核镜像位于 /boot/Image。
  1. 将主机根文件系统镜像复制到设备,并将其用作客户机 VM 的根文件系统。 注意 如果为 qcs9100-ride-sx 平台构建了 qcom-console-image,则客户机 VM 的根文件系统镜像位于:<build dir>/tmp/deploy/images/qcs9100-ride-sx/qcom-console-image-qcs9100-ride-sx.rootfs.qcomflash/rootfs.img。
  2. 启动客户机 VM。
    • 在不使用 KVM 加速的情况下启动客户机 VM: 运行以下命令,使用不带 KVM 加速的 QEMU 启动客户机 VM:
    • 使用 KVM 启动客户机 VM:
      • DISTRO_FEATURES 中默认启用 KVM。机器的 MACHINE_FEATURES 中必须包含 kvm(例如 iq-9075-evk、iq-8275-evk)。
      • 机器上必须存在 /dev/kvm 设备节点。
      • 验证 KVM 是否可用:
      • 运行以下命令,在 QEMU 中使用 KVM 加速启动客户机 VM。
    注意
    • rootfs.img 文件位于当前工作目录中。要使用其他位置,请相应更新 -drive 选项。例如:-drive file=/mydir/rootfs.img,if=virtio,format=raw
    • 客户机 VM 内核通过 -kernel /boot/Image 选项提供。
有关更多信息,请参阅启用虚拟化。

后续步骤

  • 有关 Docker 容器支持,请参阅运行 Docker 容器。
  • 有关 Kubernetes 启用,请参阅使用 Qualcomm Linux 设置 Kubernetes。 所有 Qualcomm Linux 发行版的 DISTRO_FEATURES 中默认启用 kvm。无需单独的 KVM 发行版配置。KVM 硬件加速在 MACHINE_FEATURES 中包含 kvm 的机器上可用,目前为:iq-9075-evk 和 iq-8275-evk。在其他机器上,QEMU 在没有 KVM 加速的情况下运行。