快轉到主要內容

在電腦上修改iOS版.utm資料夾的qcow2虛擬磁碟

· 民國113年甲辰年
·
切換繁體/簡體
分類   智慧型手機 iOS玩機與越獄
標籤   UTM QEMU
目錄

因為想在iPad上測試UTM虛擬機跑Windows 11的效能,所以我有了在電腦先裝好系統,再傳到iPad開機的想法。

為什麼呢?因為iOS版QEMU不確定性太高,且速度太慢,所以用執行起來比較順的電腦版QEMU來跑會比較舒服些。這就是說,先在電腦製作裝好系統的qcow2映像檔,再讓iPad開機。

這完全是有可能的,因為UTM背後是使用QMEU的.qcow2格式儲存,完全能夠在任一電腦上用QEMU開機。

那麼,要編輯UTM的虛擬機組態,有沒有需要在電腦也裝UTM呢?其實沒必要,QEMU是跨平台軟體。再加上UTM只有Mac版,但我不想用Mac,使用Linux足以跑QMEU。

1. 準備電腦上的QEMU
#

Linux需要設定虛擬化技術與KVM模組,方能將QEMU效能最大化。參見Ubuntu安裝Virt Manager

2. 取得UTM的虛擬機檔案
#

  1. 安裝UTM APP。我需要使用JIT所以用側載IPA的方式安裝。

  2. 開啟iOS的UTM APP,建立x86_64架構的Windows虛擬機,開機映像檔選無,CPU型號選qemu64,核心全給滿,RAM 4GB以上,顯示卡選virtio-vga。(為什麼不裝ARM64版的Windows?啊我的電腦就是x86啊!)

  3. 在Linux安裝ifuse,這個程式功能等同iTunes的「APP檔案共享」。將iOS裝置的磁碟掛載到Linux,存取UTM的資料夾:

sudo mkdir /run/media/$USER/com.utmapp.UTM
  1. 用tree指令可知,剛剛在iOS裝置建立的.utm檔,其實是一個資料夾,下面有虛擬機的設定檔和虛擬磁碟。等會要取代efivars和qcow2檔案。(順帶一提,Mac版UTM資料路徑位於/Library/Containers/com.utmapp.UTM/Data/Documents/

  2. 開啟Virt Manager,參考這篇安裝Windows 11系統。這裡選用Tiny11 x86_64的ISO,不啟用TPM 2.0。

  3. 虛擬機開機,在裡面裝完系統更新、virtio-win驅動、Windows Activation Scripts啟動金鑰,關機。

  4. Virt Manager建立的qcow2檔案位於/var/lib/libvirt/images/,EFI檔案位於/var/lib/libvirt/qemu/nvram/,把這兩個檔案複製到iOS裝置,取代原有的檔案

sudo cp /var/lib/libvirt/images/Tiny11.qcow2 /run/media/$USER/com.utmapp.UTM/Tiny11.utm/Data/5A8E9202-4AC4-466D-8764-CFF8D14F2D62.qcow2

sudo cp /var/lib/libvirt/qemu/nvram/Tiny11_VARS.fd /run/media/$USER/com.utmapp.UTM/Tiny11.utm/Data/efi_vars.fd
  1. 取消掛載
sudo fusermount -u /run/media/$USER/com.utmapp.UTM

相關文章

iOS版UTM JIT V.S. UTM SE,啟用JIT加速的虛擬機前後速度比較
分類   智慧型手機 iOS玩機與越獄
標籤   UTM IOS IPad
iOS版UTM安裝Alpine Linux虛擬機,跑Docker容器、與iOS共享資料夾
分類   智慧型手機 iOS玩機與越獄
標籤   ISH Shell UTM Alpine Linux Docker
SideJITServer,在iOS 18以上裝置啟用JIT加速,支援Linux、Windows、macOS
分類   智慧型手機 iOS玩機與越獄
標籤   Checkm8 IOS

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。