Gereksinimler
Kurulum Hazırlıkları
Kurulum
Beklentileri Doğru Belirlemek
Böyle bir sistem çeşitli amaçlar için kullanılabilir (örneğin yazılım oluşturma, test etme, reversing) ve bu repodaki bazı ince ayarlarla birlikte ihtiyacınız olan tek şey bu olabilir. Ancak böyle bir sistem grafik hızlandırma, düzgün çalışan ses çıkışları, USB 3 işlevselliği ve benzeri şeylerden yoksundur. Bunları etkinleştirmek için notlarımıza bir göz atın.
Kurulum Sonrası
Kaynak: GitHub - kholia/OSX-KVM: Run macOS on QEMU/KVM.
- Güncel bir Linux dağıtımı, örneğin: Ubuntu 22.04 LTS 64-bit veya daha günceli.
- QEMU >= 6.2.0
- Intel VT-x / AMD SVM desteği olan bir işlemci. (
grep -e vmx -e svm /proc/cpuinfo) - SSE4.1 desteği olan bir işlemci. MacOS Sierra ve daha günceli için gereklidir.
- AVX2 desteği olan bir işlemci. MacOS Mojave ve daha günceli için gereklidir.
Kurulum Hazırlıkları
- QEMU ve diğer paketlerin kurulumu.
Bu aşamanın Linux dağıtımınıza uyarlanması gerekebilir.Kod:sudo apt-get install qemu uml-utilities virt-manager git \ wget libguestfs-tools p7zip-full make dmg2img tesseract-ocr \ tesseract-ocr-eng genisoimage -y
- QEMU sisteminize bu repository'i klonlayın. Bu repodaki dosyalar aşağıdaki aşamalarda kullanılır.
Repo güncellemeleri aşağıdaki kod ile alınabilir.Kod:cd ~ git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git cd OSX-KVM
Bu repo ağırlıklı olarak rebase tabanlı iş akışlarını kullanır.Kod:git pull --rebase
- KVM, host makinede çalışabilmek için aşağıdaki tweak'e ihtiyaç duyabilir:
Bu değişikliği kalıcı yapmak için de aşağıdaki komutu kullanabilirsiniz:Kod:sudo modprobe kvm; echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
Kod:sudo cp kvm.conf /etc/modprobe.d/kvm.conf # Sadece Intel için sudo cp kvm_amd.conf /etc/modprobe.d/kvm.conf # Sadece AMD için
kvmvelibvirtgruplarına kullanıcı ekleyin(gerekli olabilir).
Not: Bu komutları uyguladıktan sonra yeniden giriş yapın.Kod:sudo usermod -aG kvm $(whoami) sudo usermod -aG libvirt $(whoami) sudo usermod -aG input $(whoami)
- macOS yükleyicisini getirelim.
Burada istediğiniz macOS sürümünü seçebilirsiniz. Bu aşamayı tamamladıktan sonra şu anki klasörünüzdeKod:./fetch-macOS-v2.pyBaseSystem.dmgdosyasına sahip olmanız gerekiyor.
DİKKAT:Big Surve daha güncel sürümlerde, macOS kurulum sihirbazı yavaş çalışıyorsa, kurulumuÜlke Seçimekranı veya benzer kısımlarda bekletin. İlk macOS kurulum sihirbazı sonunda başarılı olacaktır.
Örnek:
Not: Modern NVIDIA ekran kartları High Sierra destekliyor olsa da daha güncel sürümlerde desteği bulunmamakta.Kod:$ ./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) Choose a product to download (1-6): 6
- İndirilen
BaseSystem.dmgdosyasınıBaseSystem.imgdosyasına çevirin.
Kod:dmg2img -i BaseSystem.dmg BaseSystem.img
- MacOS'u yükleyeceğiniz sanal HDD imajını oluşturun. Eğer disk imajının adını
mac_hdd_ng.img'dan başka bir şeye değiştirirseniz, önyükleme scriptlerini de değiştirdiğiniz ad ile güncellemeniz gerekmekte.
NOT: En iyi sonuçlar için bu sanal HDD imaj dosyasını hızlı bir SSD/NVMe diskte oluşturun.Kod:qemu-img create -f qcow2 mac_hdd_ng.img 256G - Artık macOS'u yüklemek için hazırsınız

Kurulum
- CLI yöntemi (birincil). Kurulum işlemini başlatmak için sadece
OpenCore-Boot.shscript'ini çalıştırın.
Not: Bu script tüm güncel macOS sürümleri için çalışır.Kod:./OpenCore-Boot.sh - macOS VM'ye bağlı sanal diski bölümlemek ve biçimlendirmek için macOS yükleyicisindeki
Disk İzlencesiaracını kullanın. Modern macOS sürümleri içinAPFS'yi (varsayılan) kullanın. - Devam edin ve macOS'u yükleyin

- (İsteğe Bağlı) macOS VM diskini libvirt ile kullanın. (virt-manager / virsh stuff).
macOS-libvirt-Catalina.xmldosyasını düzenleyin ve birçok dosya yollarını değiştirin (CHANGEMEyazılarını aratın). Aşağıdaki komut genellikle bunu halleder.
Kod:sed "s/CHANGEME/$USER/g" macOS-libvirt-Catalina.xml > macOS.xml virt-xml-validate macOS.xml- Aşağıdaki komutu kullanarak bir VM oluşturun.
Kod:virsh --connect qemu:///system define macOS.xml - Eğer gerekirse, libvirt-qemu kullanıcısına gerekli izinleri verin,
Kod:sudo setfacl -m u:libvirt-qemu:rx /home/$USER sudo setfacl -R -m u:libvirt-qemu:rx /home/$USER/OSX-KVM virt-manager'i çalıştırın vemacOSVM'i başlatın.
- boot-macOS-headless.sh script'ini kullanın.
Kod:./boot-macOS-headless.sh
Beklentileri Doğru Belirlemek
Böyle bir sistem çeşitli amaçlar için kullanılabilir (örneğin yazılım oluşturma, test etme, reversing) ve bu repodaki bazı ince ayarlarla birlikte ihtiyacınız olan tek şey bu olabilir. Ancak böyle bir sistem grafik hızlandırma, düzgün çalışan ses çıkışları, USB 3 işlevselliği ve benzeri şeylerden yoksundur. Bunları etkinleştirmek için notlarımıza bir göz atın.
Kurulum Sonrası
- VM'nize SSH, VNC vb. yoluyla uzaktan erişim için VM'nizde ağ oluşturma, giden ve ayrıca gelen ağ ayarlarının nasıl yapılacağına ilişkin ağ oluşturma notlarına bakın.
- Ekran kartlarını ve diğer aygıtları doğrudan geçirmek için notlara bakın.
- Farklı bir çözünürlüğe mi ihtiyacınız var? Bu repoda bulunan notlara göz atın.
- iMessage'da sorun mu yaşıyorsunuz? Bu repoda bulunan notlara göz atın.
- Şiddetle tavsiye edilen macOS tweakleri - GitHub - sickcodes/osx-optimizer: OSX Optimizer
Kaynak: GitHub - kholia/OSX-KVM: Run macOS on QEMU/KVM.