这里介绍一下在 MacOS M1 Chip 的设备上,如何使用qemu 运行ubuntu;不论是基于学习还是测试的目的,这篇文章都会很有用。
第一步就是安装qemu
, 使用 homebrew
安装qemu是很简单的事情:
1$ brew install qemu
安装完成后,检查下可执行文件是否已经正确安装:
1$ whereis qemu-system-aarch64
2qemu-system-aarch64: /opt/homebrew/bin//qemu-system-aarch64
3
4$ qemu-system-aarch64 --version
5QEMU emulator version 7.2.0
6Copyright (c) 2003-2022 Fabrice Bellard and the QEMU Project developers
如果使用qemu安装ubuntu,需要下载ubuntu的iso文件,m1 chip的设备,需要下载的ARM版本的文件:传送门
下载一个预先定制的镜像文件,作为qemu启动的BIOS,用来支持m1 chip 的设备。
解压到qemu的工作目录:
1$ tar xvf QEMU_EFI-cb438b9-edk2-stable202011-with-extra-resolutions.tar.gz
2x ./QEMU_EFI.fd
3x ./QEMU_VARS.fd
1$ qemu-img create -f qcow2 ubuntu.qcow2 50G
文件是按需分配的,一开始只会占用很少的空间,随着使用会逐渐增大。
1qemu-system-aarch64 \
2 -machine virt,highmem=off \
3 -accel hvf \
4 -cpu host \
5 -smp 4 \
6 -m 3G \
7 -bios QEMU_EFI.fd \
8 -device virtio-gpu-pci \
9 -display default,show-cursor=on \
10 -device qemu-xhci \
11 -device usb-kbd \
12 -device usb-tablet \
13 -device intel-hda \
14 -device hda-duplex \
15 -hda ./ubuntu.qcow2 -cdrom ubuntu-22.04.2-live-server-arm64.iso
执行完此命令会弹出一个安装Ubuntu的桌面,常规安装即可。
1qemu-system-aarch64 \
2 -machine virt,highmem=off \
3 -accel hvf \
4 -cpu host \
5 -smp 4 \
6 -m 3G \
7 -bios QEMU_EFI.fd \
8 -device virtio-gpu-pci \
9 -display default,show-cursor=on \
10 -device qemu-xhci \
11 -device usb-kbd \
12 -device usb-tablet \
13 -device intel-hda \
14 -device hda-duplex \
15 -hda ./ubuntu.qcow2
这里可以使用预设的账号密码登录,安装SSH-Server
1nohup qemu-system-aarch64 \
2 -machine virt,highmem=off \
3 -accel hvf \
4 -cpu host \
5 -smp 4 \
6 -m 3G \
7 -bios QEMU_EFI.fd \
8 -device virtio-gpu-pci \
9 -display none \
10 -device qemu-xhci \
11 -device usb-kbd \
12 -device usb-tablet \
13 -device intel-hda \
14 -device hda-duplex \
15 -hda ./ubuntu.qcow2 \
16 -net user,hostfwd=tcp::2222-:22 -net nic > /dev/null 2>&1 &
如此启动后,即可以无桌面使用SSH访问本机的2222端口。