方法 1(成功)

方法 1(成功)

问题摘要

我正在运行 Windows 11,并使用Scoop 包管理器

scoop install qemu

之后,我尝试启动 QEMU 虚拟机,使用 ARM 64 位 CPU 架构。我想从装有 Ubuntu 22.04 LTS ARM 64 位的 ISO 启动虚拟机。

qemu-system-aarch64 -cpu cortex-a15 -m 4096 -machine virt -drive if=virtio,format=raw,file=ubuntu-22.04.1-live-server-arm64.iso -boot d
  • 使用 ARM Cortex A15 CPU 模拟
  • 为虚拟机分配 4 GB 内存
  • 使用通用virt机器类型
  • 使用 virtio 驱动程序挂载 ISO 文件
  • 指示虚拟机使用 CD-ROM 启动-boot d

预期结果

QEMU 虚拟机从 Ubuntu Server ISO 启动。

实际结果

QEMU 监视窗口出现,但实际上并没有启动 ISO。

在此处输入图片描述

答案1

方法 1(成功)

1.获取EFI文件。

我从我的 WSL Ubuntu 获得了它。

sudo apt-get install qemu-efi
cp /usr/share/qemu-efi-aarch64/QEMU_EFI.fd  ./

2. 下载图片。

下载 QEMU img 而不是从 ISO 文件安装。

下载链接:https://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-arm64.img

主页:https://cloud-images.ubuntu.com

3. 启动。

最好在启动前复制一份 img 进行备份:

cp ubuntu-22.04-server-cloudimg-arm64.img ubuntu-arm.img

引导:

qemu-system-aarch64 -M virt -cpu cortex-a72 -nographic \
    -net nic -net user \
    -bios QEMU_EFI.fd -hda ubuntu-arm.img

如果一切正常,您将看到启动消息并最终进入登录屏幕。

方法 2(失败)

我尝试使用 EFI 文件安装 ISO 文件,它启动并显示初始安装屏幕,但最终没有成功。在我按下 Enter 几分钟后,它提示我Failed to start Snap Daemon,可能是因为它无法连接到网络。

qemu-img create -f qcow2 ubuntu-arm.img 16G

qemu-system-aarch64 -M virt -cpu cortex-a72 -nographic \
    -net nic -net user \
    -bios QEMU_EFI.fd -hda ubuntu-arm.img \
    -cdrom ubuntu-22.04.2-live-server-arm64.iso -boot d

答案2

我在ubuntu22.04上成功了,也许可以给你一些参考。

(qemu程序已安装)

  1. 创建一个 qcow2 文件:qemu-img create -f qcow2 ubuntu22-server-arm64.img 50G

  2. 执行以下命令:

    sudo /usr/local/bin/qemu-system-aarch64 -nographic \
    -m 8G -cpu cortex-a72 \
    -machine virt -smp 4 \
    -bios /usr/share/qemu-efi-aarch64/QEMU_EFI.fd \
    -device virtio-gpu-pci \
    -netdev user,id=net0 -device virtio-net-device,netdev=net0 \
    -device nec-usb-xhci,id=xhci,addr=0x1b \
    -device usb-tablet,id=tablet,bus=xhci.0,port=1 \
    -device usb-kbd,id=keyboard,bus=xhci.0,port=2 \
    -hda ubuntu22-server-arm64.img \
    -drive file=ubuntu-22.04.2-live-server-arm64.iso,if=none,id=cdrom,cache=writeback \
    -device virtio-blk,drive=cdrom,bootindex=0 \
    -vnc 0.0.0.0:60
    
  3. 通过VNCViewer访问127.0.0.1:5960,命令行上也会出现一些信息提示,等待一段时间后,命令行会显示如下错误信息,不用理会,继续等待一段时间,VNC窗口就会出现安装界面。

    [ TIME ] Timed out waiting for device /dev/ttyAMA0.
    [DEPEND] Dependency failed for Subi…ler for Ubuntu Server ttyAMA0.
    [FAILED] Failed to start Snap Daemon.
    
  4. 设置镜像地址后,安装可能会崩溃并自动重启。请忽略错误信息并继续等待。

  5. 在重新安装界面弹出的提示框中,选择“选择继续再次尝试安装”,继续安装。

相关内容