Documentation pour configurer une simple machine virtuelle macOS dans QEMU, accélérée par KVM.
Par @foxletfox, et l'aide de beaucoup d'autres. Trouvez cela utile? Vous pouvez faire un don sur Coinbase ou PayPal!.
Nouveau sur macOS et KVM? Vérifiez les FAQ.
Vous aurez besoin d'un système Linux avec qemu (3.1 ou version ultérieure), python3 , pip et les modules KVM activés. Un Mac n'est pas requis. Quelques exemples pour différentes distributions:
sudo apt-get install qemu-system qemu-utils python3 python3-pip # for Ubuntu, Debian, Mint, and PopOS.
sudo pacman -S qemu python python-pip python-wheel # for Arch.
sudo xbps-install -Su qemu python3 python3-pip # for Void Linux.
sudo zypper in qemu-tools qemu-kvm qemu-x86 qemu-audio-pa python3-pip # for openSUSE Tumbleweed
sudo dnf install qemu qemu-img python3 python3-pip # for Fedora
sudo emerge -a qemu python:3.4 pip # for Gentoo
Exécutez jumpstart.sh pour télécharger les médias d'installation pour macOS (Internet requis). L'installation par défaut utilise Catalina, mais vous pouvez choisir la version à obtenir en ajoutant l'un ou l'autre --high-sierra , --mojave ou --catalina . Par exemple:
./jumpstart.sh --mojave
Remarque: vous pouvez ignorer cela si vous avez déjà téléchargé
BaseSystem.img. Si vous avezBaseSystem.dmg, vous devrez le convertir avec l'outildmg2img.
Créez un disque dur vide à l'aide de qemu-img , en modifiant le nom et la taille en préférence:
qemu-img create -f qcow2 MyDisk.qcow2 64G
et ajoutez-le à la fin de basic.sh :
-drive id=SystemDisk,if=none,file=MyDisk.qcow2
-device ide-hd,bus=sata.4,drive=SystemDisk
Remarque: Si vous utilisez un système sans tête (comme sur les fournisseurs de cloud), vous aurez besoin
-nographicet-vnc :0 -k en-uspour le support VNC.
Ensuite, exécutez basic.sh pour démarrer la machine et installer macOS. N'oubliez pas d'abord de partitionner dans Disk Utility!
sudo ./make.sh --add .MyDisk.qcow2 comme stockage dans les propriétés de l'entrée nouvellement ajoutée pour VM. Si vous utilisez un système basé sur le cloud / sans tête, vous pouvez utiliser headless.sh pour configurer une instance VNC rapide. Les paramètres sont définis à travers des variables comme le montre l'exemple suivant. VNC commencera sur le port 5900 par défaut.
HEADLESS=1 MEM=1G CPUS=2 SYSTEM_DISK=MyDisk.qcow2 ./headless.sh
Vous avez terminé!
Pour affiner le système et améliorer les performances, consultez le dossier docs pour plus d'informations sur l'ajout de la mémoire, la configuration de la mise en réseau pontée, l'ajout de matériel de passthrough (pour les GPU), de modification de la résolution d'écran et d'activer les fonctionnalités sonores.