ubuntu20.04 x86_64架构环境上使用QEMU搭建aarch64虚拟机
- 一 安装依赖项
- 二 下载 QEMU_EFI.fd 及 iso
- 三 创建虚拟硬盘
- 四 创建虚拟机
- 五 安装及验证
一 安装依赖项
sudo apt-get -y install qemusudo apt-get -y install bridge-utilssudo apt-get -y install vnc4serversudo apt-get -y install qemu-kvmsudo apt install -y qemu-system-armsudo apt-get -y install libvirt0sudo apt-get -y install libvirt-daemonsudo apt-get -y install libvirt-daemon-system
qemu
:QEMU是一个用于创建和模拟虚拟机的开源软件。它支持多种硬件体系结构,包括x86、ARM等。bridge-utils
:这个包提供了管理Linux桥接网络的命令行工具。vnc4server
:VNC是一种远程桌面协议,vnc4server是一个简单的VNC服务器,允许用户通过VNC协议远程访问他们的桌面环境。qemu-kvm
:这个包包含了用于在虚拟机中运行内核的QEMU的KVM模块。KVM是Linux内核的一部分,允许在虚拟机中直接运行宿主机上的操作系统。qemu-system-arm
:这个包提供了运行ARM体系结构的虚拟机的QEMU二进制文件。libvirt0
:libvirt是一个用于管理虚拟化平台的开源库,libvirt0是对libvirt库的基本支持。libvirt-daemon
:这个包包含了libvirt库的守护进程,它负责管理和控制虚拟机的生命周期。libvirt-daemon-system
:这个包提供了libvirt守护进程的系统级配置文件和服务。
二 下载 QEMU_EFI.fd 及 iso
#打开终端mkdir armcd armwget http://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/QEMU_EFI.fdwget https://cdimage.ubuntu.com/ubuntu-legacy-server/releases/20.04/release/ubuntu-20.04.1-legacy-server-arm64.iso
三 创建虚拟硬盘
qemu-img create ubuntuimg.img 40G
四 创建虚拟机
qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 2 -M virt -bios ./QEMU_EFI.fd -nographic -drive if=none,file=./ubuntu-20.04.1-legacy-server-arm64.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=ubuntuimg.img,id=hd0 -device virtio-blk-device,drive=hd0
命令解释:
-m megs # 设定虚拟机的RAM大小,单位MB。
-cpu model # 设定CPU模型,如cortex-a57、cortex-a9等。
-smp n # 设定模拟的SMP架构中CPU的个数。
-M machine # 指定要模拟的主机类型
-bios file #设置bios启动文件-nographic #禁用图形界面支持
五 安装及验证
根据自己的需求自行安装;(配置名字,设置账号密码等)
uname -a#显示Linux ubuntuaem 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
后续:退出启动的指令:
qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 2 -M virt -bios ./QEMU_EFI.fd -nographic -device virtio-scsi-device -drive if=none,file=./ubuntuimg.img,format=raw,index=0,id=hd0 -device virtio-blk-device,drive=hd0