在Windows中使用QEMU搭建Arm虚拟机
AI-摘要
None GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
在Windows中使用QEMU搭建Arm虚拟机
Agimoesu安装准备
- 安装 qemu: QEMU 根据网页提示,进入对应的系统(x86_64的Windows选择W64目录),进入目录后下载最新版本即可
- 安装 tap-windows: tap-windows
进入网页后搜索tap-windows,选择下载,目前可以下载
tap-windows-9.24.2-I601-Win10.exe
- EFI 文件: QEMU_EFI.fd 可以使用上述链接中的固件,也可以自行下载
- ARM系统: 本次使用 openEuler 22.03 LTS SP4
创建虚拟网卡
- tap-windows 安装完成后,网络连接里会出现一个
TAP-Winodws-Adapter V9
的本地连接网卡;
- 将这个网卡改名,推荐改为tap0,改名可以通过F2直接改名,也可以通过右键菜单中的重命名修改
共享物理网卡
- 右击物理网卡(一般名称为以太网);
- 切换到“共享”标签页;
- 勾选“允许其它网络通过此计算机的 Internet 连接来连接”;
- “家庭网络连接”项选择新增加的网卡:tap0;
- 勾选“允许其它网络用户控制或禁用共享的 Internet 连接”;
- 点击“确定”按钮;
创建虚拟机
创建虚拟机磁盘
在准备安装的虚拟机目录打开cmd窗口输入(自行调整磁盘大小)
1
qemu-img create -f qcow2 E:\Vmware\Qemu\openEuler-22.03-disk.img 30G
如果此时不存在qemu-img,需要将qemu的安装目录设置为环境变量,或者使用指定程序运行
1
'E:\Program\qemu\qemu-img' create -f qcow2 E:\Vmware\Qemu\openEuler-22.03-disk.img 30G
准备EFI固件文件
使用 qemu-system-aarch64 命令安装操作系统
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25qemu-system-aarch64.exe -m 8192 -cpu cortex-a72 -smp 4,cores=4,threads=1,sockets=1 -M virt -bios E:\Vmware\Qemu\QEMU_EFI-202407.fd -net nic -net tap,ifname=tap0 -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -drive if=none,file=E:\Vmware\Qemu\openEuler-22.03-LTS-SP4-aarch64-dvd.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=E:\Vmware\Qemu\openEuler-22.03-disk.img,id=hd0 -device virtio-blk-device,drive=hd0
-m 8192 表示分配给虚拟机的内存最大8192MB,可以直接使用 -m 8G
-cpu cortex-a72 指定CPU类型,还可以选择cortex-a53、cortex-a57等
-smp 4,cores=4,threads=1,sockets=1 指定虚拟机最大使用的CPU核心数等
-M virt 指定虚拟机类型为virt,具体支持的类型可以使用 qemu-system-aarch64 -M help 查看
-bios E:\Vmware\Qemu\QEMU_EFI-202407.fd 指定UEFI固件文件
-net tap,ifname=tap0 启用网络功能(ifname=tap0中的tap0,修改为前面步骤中自己修改后的网卡名称)
-device nec-usb-xhci -device usb-kbd -device usb-mouse 启用USB鼠标等设备
-device VGA 启用VGA视图,对于图形化的Linux这条很重要!
-drive if=none,file=E:\Vmware\Qemu\openEuler-22.03-LTS-SP4-aarch64-dvd.iso,id=cdrom,media=cdrom 指定光驱使用镜像文件
-device virtio-scsi-device -device scsi-cd,drive=cdrom 指定光驱硬件类型
-drive if=none,file=E:\Vmware\Qemu\openEuler-22.03-disk.img 指定硬盘镜像文件然后在弹出的窗口中安装虚拟机
安装完成后,再次启动虚拟机
1
2
3无需再次指定iso文件启动
qemu-system-aarch64 -m 8192 -cpu cortex-a72 -smp 4,cores=4,threads=1,sockets=1 -M virt -bios E:\Vmware\Qemu\QEMU_EFI-202407.fd -net nic -net tap,ifname=tap0 -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -drive if=none,file=,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=E:\Vmware\Qemu\openEuler-22.03-disk.img,id=hd0 -device virtio-blk-device,drive=hd0
可以将以上命令写入bat文件启动
- 启动后可配置ssh,通过其他工具连接
问题
重启 QEMU 虚拟机后,可能会出现无法连接外网
此问题是 Windows 网络共享的问题,在宿主机种右键物理网卡,点击“属性”按钮,在弹出的界面中选择“共享”选项,先取消共享,点击确定后,再次选择共享即可。
评论
匿名评论隐私政策