How to run Windows 10 on ARM in QEMU with Hypervisor.framework patches on Apple Silicon Mac · GitHub
私はUbuntu使いたい人なので、これを見ながらUbuntu Serverをインストールしてみました。
まずは、記事通りにWindowsを動かせる状態にしましょう。
そのあと、qemu-imgで空のqcow2ファイルを作成します。作成の仕方は省略。
Ubuntu Armをダウンロードしましょう。
で、次のような感じで実行。
./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=/Users/kaias1jp/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=/Users/kaias1jp/Downloads/pflash1.img,format=raw,if=pflash \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ /Users/kaias1jp/Ubuntu.qcow2 \ -cdrom /Users/kaias1jp/Downloads/ubuntu-20.10-live-server-arm64.iso \ -boot order=d
多分、UEFIでこけます。
しばらく経つとUEFIのシェルに入ります。
「exit」で抜けるとUEFIの設定画面が出ます。
「Boot Manager」を選ぶとこんな感じ。本当は、一番上に表示されているのがUbuntuじゃないし、下の方にディスクが2つさらに表示されて選べるようになっています。
で、一番下のディスクを選んでEnter。
ディスクも選べるのでインストールしましょう。終わったら一度リブートを選んでリブートします。その時点ではインストールディスクが選ばれていますのでまたインストール開始状態になります。一度qemuを閉じて、以下のような感じでisoを指定しないで実行。
./qemu-system-aarch64 \ -monitor stdio \ -M virt,highmem=off \ -accel hvf \ -cpu cortex-a72 \ -smp 4 \ -m 4096 \ -drive file=/Users/kaias1jp/Downloads/pflash0.img,format=raw,if=pflash,readonly=on \ -drive file=/Users/kaias1jp/Downloads/pflash1.img,format=raw,if=pflash \ -device ramfb \ -device qemu-xhci \ -device usb-kbd \ -device usb-tablet \ -device intel-hda \ -device hda-duplex \ -nic user,model=virtio \ /Users/kaias1jp/Ubuntu.qcow2
多分、またUEFIで選ぶ必要があるので、今度も一番下のディスクを選択。
まあ、こんな感じでインストールしたディスクから起動されます。
なんかわからないけどネットワークは繋がっています。まあ、試してみてください。