此README.md
記錄了創建Virtual Hackintosh
系統的過程。
注意:此儲存庫中包含的所有 blob 和資源都是可重新派生的(包含所有指令!)。
正在尋找這些東西的商業支援?我可以透過電子郵件與我進行聊天,僅提供商業支援選項。注意:專案發起人可以存取Private OSX-KVM
儲存庫並獲得直接支援。
還在為Content Caching
煩惱嗎?我們可以提供協助。
使用Proxmox
和 macOS?請參閱尼克的部落格。
是的,我們現在支援離線 macOS 安裝 - 請參閱此文件?
這個項目總是需要您的幫助、時間和注意力。我正在尋求有關以下工作項目的幫助(拉請求!):
有關在流行雲端提供者(Hetzner、GCP、AWS)上執行 macOS 的文件。請參閱Is This Legal?
部分和相關參考文獻。
記錄(分享)您如何使用此項目來建立+測試開源專案/完成您的工作。
記錄如何使用該專案進行 XNU 內核調試和開發。
記錄啟動一堆無頭 macOS 虛擬機器(建置農場)的過程。
記錄使用 munki 將軟體部署到此類build farm
情況。
開箱即用或更輕鬆地啟用 VNC + SSH 支援。
魯棒性的改進總是受歡迎的!
(不是)瘋狂的想法 - 透過 OpenCV 自動安裝 macOS。
現代 Linux 發行版。例如 Ubuntu 24.04 LTS 64 位元或更高版本。
QEMU >= 8.2.2
需要支援 Intel VT-x / AMD SVM 的 CPU ( grep -e vmx -e svm /proc/cpuinfo
)
>= macOS Sierra 需要支援 SSE4.1 的 CPU
>= macOS Ventura 需要支援 AVX2 的 CPU
注意:眾所周知,較舊的 AMD CPU 存在問題,但現代 AMD Ryzen 處理器運作得很好(即使對於 macOS Sonoma)。
安裝 QEMU 和其他軟體包。
sudo apt-get install qemu-system uml-utilities virt-manager git
wget libguestfs-tools p7zip-full make dmg2img tesseract-ocr
tesseract-ocr-eng genisoimage vim net-tools screen -y
此步驟可能需要針對您的 Linux 發行版進行調整。
在您的 QEMU 系統上複製此儲存庫。以下步驟將使用此儲存庫中的檔案。
cd ~
git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git
cd OSX-KVM
可以透過以下命令拉取儲存庫更新:
git pull --rebase
此儲存庫大量使用基於變基的工作流程。
KVM 可能需要在主機上進行以下調整才能運作。
sudo modprobe kvm; echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
若要使此變更永久生效,您可以使用下列命令。
sudo cp kvm.conf /etc/modprobe.d/kvm.conf # for intel boxes only
sudo cp kvm_amd.conf /etc/modprobe.d/kvm.conf # for amd boxes only
將使用者加入kvm
和libvirt
群組(可能需要)。
sudo usermod -aG kvm $(whoami)
sudo usermod -aG libvirt $(whoami)
sudo usermod -aG input $(whoami)
注意:執行該指令後需重新登入。
取得 macOS 安裝程式。
./fetch-macOS-v2.py
您可以在此處選擇所需的 macOS 版本。執行此步驟後,目前資料夾中應該會有BaseSystem.dmg
檔案。
注意:如果速度緩慢,請讓>= Big Sur
設定在Country Selection
畫面和其他類似位置停留一段時間。初始 macOS 設定精靈最終會成功。
範例運行:
$ ./fetch-macOS-v2.py
1. High Sierra (10.13)
2. Mojave (10.14)
3. Catalina (10.15)
4. Big Sur (11.7)
5. Monterey (12.6)
6. Ventura (13) - RECOMMENDED
7. Sonoma (14)
8. Sequoia (15)
Choose a product to download (1-8): 6
注意:HighSierra 支援現代 NVIDIA GPU,但更高版本的 macOS 不支援。
將下載的BaseSystem.dmg
檔案轉換為BaseSystem.img
檔案。
dmg2img -i BaseSystem.dmg BaseSystem.img
建立將安裝 macOS 的虛擬 HDD 映像。如果將磁碟映像的名稱從mac_hdd_ng.img
變更為其他名稱,則需要更新開機腳本以指向新的映像名稱。
qemu-img create -f qcow2 mac_hdd_ng.img 256G
注意:在快速 SSD/NVMe 磁碟上建立此 HDD 映像檔以獲得最佳效果。
現在您已準備好安裝 macOS
CLI 方法(主要)。只需執行OpenCore-Boot.sh
腳本即可開始安裝程序。
./OpenCore-Boot.sh
注意:此相同的腳本適用於所有最新的 macOS 版本。
使用 macOS 安裝程式中的Disk Utility
工具對附加到 macOS VM 的虛擬磁碟進行分割和格式化。對於現代 macOS 版本,使用APFS
(預設)。
繼續,安裝 macOS 嗎?
(選用)將此 macOS VM 磁碟與 libvirt(virt-manager / virsh 內容)結合使用。
編輯macOS-libvirt-Catalina.xml
檔案並更改各種檔案路徑(在該檔案中搜尋CHANGEME
字串)。以下命令通常可以解決問題。
sed "s/CHANGEME/$USER/g" macOS-libvirt-Catalina.xml > macOS.xml
virt-xml-validate macOS.xml
透過執行以下命令建立虛擬機器。
virsh --connect qemu:///system define macOS.xml
如果需要,請向 libvirt-qemu 使用者授予必要的權限,
sudo setfacl -m u:libvirt-qemu:rx /home/$USER
sudo setfacl -R -m u:libvirt-qemu:rx /home/$USER/OSX-KVM
啟動virt-manager
並啟動macOS
虛擬機器。
使用提供的 boot-macOS-headless.sh 腳本。
./boot-macOS-headless.sh
設定Virtual Hackintosh
系統幹得好!這樣的系統可用於多種目的(例如軟體建置、測試、逆向工作),它可能就是您所需要的,以及此儲存庫中記錄的一些調整。
然而,這樣的系統缺乏圖形加速、可靠的聲音子系統、USB 3 功能和其他類似的東西。若要啟用這些功能,請查看我們的註解。我們希望恢復圍繞該領域的測試和文檔工作。如果您有能力資助該領域的工作,請與我們聯絡。
擁有「超越本機蘋果硬體」的性能是可能的,但它確實需要工作、耐心和一點運氣(也許?)。
請參閱網路說明,了解如何在虛擬機器中設定網路、出站和入站網絡,以便透過 SSH、VNC 等遠端存取虛擬機器。
若要直通 GPU 和其他設備,請參閱這些說明。
需要不同的解析度嗎?查看此存儲庫中包含的註釋。
iMessage 有問題嗎?查看此存儲庫中包含的註釋。
強烈建議 macOS 調整 - https://github.com/sickcodes/osx-optimizer
「秘密」Apple OSK 字串在 Internet 上隨處可見。它也包含在此處提供的公開法庭文件中。我不是律師,但蘋果將 OSK 字串視為商業秘密的嘗試似乎沒有成功。由於這些原因,OSK 字串免費包含在該儲存庫中。
請查看 Dortania 的 OpenCore 安裝指南中的「駭客攻擊的合法性」文件部分。
Gabriel Somlo 對於在 QEMU/KVM 下運行 macOS 所涉及的法律問題也有一些想法。
您可能還會發現這篇「宣布推出適用於 macOS 的 Amazon EC2 Mac 執行個體」文章很有趣。
注意:您有責任理解並接受(或不接受)Apple EULA。
注意:這不是法律建議,因此請自行做出適當的評估,如果您有任何疑問,請與您的律師討論(文本來源:Dortania)
我的目標是以一種簡單、可重複的方式實現基於 macOS 的教育任務、構建+測試、內核調試、逆向和 macOS 安全研究,而無需對 Apple 的封閉生態系統進行「投資」(過多)。
這些Virtual Hackintosh
系統無意取代真正的實體 macOS 系統。
就我個人而言,這個儲存庫是我「退出」Apple 生態系統的一種方式。它幫助我測試和比較了Canon CanoScan LiDE 120
掃描器和Brother HL-2250DN
雷射印表機的互通性。這些設備現在可以在現代版本的 Ubuntu 上正常工作(自由軟體是的)。另外,很久以前,我不得不徹底擦除我的(當時)全新的MacBook Pro (Retina, 15-inch, Late 2013)
並在其上安裝 Xubuntu - 因為OS X
核心不斷崩潰!
背景故事:我前世是加拿大的(貧窮)學生,蘋果讓我破解蘋果鑰匙圈的工作變得比需要的困難得多。這就是我對 Hackintosh 系統感興趣的原因。