qemu裝的是5.0版本,系統是紅旗7.3(centos 7.3)
准備幾個文件,一個是對應的系統鏡像文件,一個是EFI文件。
EFI文件主要是用來做引導的,具體參考這個

新建一個虛擬機的硬盤
qemu-img create centos-aarch64.img
啟動
qemu-system-aarch64 -m 5G -cpu cortex-a72 -smp 4 -M virt -bios /home/QEMU_EFI.fd -nographic -drive if=none,file=/home/CentOS-7-aarch64-Everything-1804.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=centos-aarch64.img,format=raw,id=hd0 -device virtio-blk-device,drive=hd0
隨后進入安裝界面,走安裝流程即可。
安裝完成后,會自動進入登錄,輸入賬戶名密碼即可。
啟動后,並沒有網絡

可以poweroff關機。
再次啟動虛擬機,執行的命令如下:
qemu-system-aarch64 -m 5G -cpu cortex-a72 -smp 4 -boot order=cd -M virt -bios /home/wang/qemu_test/QEMU_EFI.fd -nographic -drive if=none,file=centos-arm64.img,format=raw,id=hd0 -device virtio-blk-device,drive=hd0
等半天發現進入這個頁面

再等一下,到這里

一度以為這個就是安裝的有問題,其實並不是…
參考這篇文章操作 https://blog.csdn.net/WMX843230304WMX/article/details/102628133
shell那輸入 exit 並回車

選擇 Boot Maintenance Manager 回車,進入

選擇Boot From File

選擇第一個,回車

選擇EFI,回車

選擇centos回車

選擇 grubaa64.efi 或者 shimaa64-centos.efi 都可以進入系統
這里兩個只是引導方式不一樣,shimaa64-centos.efi走的是bios模式,grubaa64.efi走的是uefi模式
參考 https://www.cnblogs.com/dream397/p/12613326.html 和 https://www.zhihu.com/question/21672895
選擇后,進入這個界面,直接選擇進入系統即可

吐槽
這個過程實在太曲折,中間還嘗試了使用virt-install創建虛擬機,失敗;
后面又想嘗試用vir-manager去啟動虛擬機,失敗;
升級了libvirtd,再重新試,依然沒有成功…
准備放棄的時候,看到了 https://blog.csdn.net/WMX843230304WMX/article/details/102628133 ,嘗試一下居然成功了……
前后耗時兩周多,才最終進入到這個系統(安裝只花了一周左右)。
注意
目前似乎並沒有啟動kvm加速,虛擬機最終也只能跑滿一個CPU,如圖
后續需要在虛擬機上跑 docker,打包鏡像,這種情況似乎資源完全不夠用。
vcpu和物理機CPU綁定
可以參考 https://www.cnblogs.com/hukey/p/6401195.html 和
https://cloud.tencent.com/developer/article/1039241
其實沒多大影響,主要的使用場景是有多個虛擬機的時候,可以把虛擬機1綁定到其中一個CPU,虛擬機2綁定到另外一個CPU。
