Run MacOS in Linux with Qemu on secondary GPU
Posted: Tue Jul 15, 2025 10:16 am
How to run MacOS in Linux on secondary GPU using Qemu as emulator and native GPU passed to emulated VM:

Join our telegram group if you wana chat or have specific questions:
https://t.me/+h2K5CX5jEZA0MWJk
PC test hardware is:
CPU - Ryzen 5950 16 core 32T
Ram - 128GB Ram Kingston 4x32GB 3400Mhz CL16
MB - Asus PRIME X570-PRO
PSU - 850W Seasonic
Radeon 560 connected to native linux OS and Radeon 7950 gpu`s passed to the MacOS.

Asus PRIME X570-PRO support 2 x PCIe 4.0 x16 (x16 or dual x8) runing native Devuan (Debian with no SystemD) linux!
You can install qemu on almost any linux distro here in this example i use Devuan linux and qemu 7.2.

Here how lspci -nnk command looks on my PC make sure you put your secondary GPU into vfio mode:
Qemu conig:
Radeon 7950 GPU is 2012 GPU can work in MACOS monterey very good.
To download ready to use Qemu virtual hdd file "mac_hdd_ng.img" enter our telegram group:
https://t.me/+h2K5CX5jEZA0MWJk
Video demonstration of MacOS Monterey running in Qemu.
youtu.be/QVDMa7MuiGg

Join our telegram group if you wana chat or have specific questions:
https://t.me/+h2K5CX5jEZA0MWJk
PC test hardware is:
CPU - Ryzen 5950 16 core 32T
Ram - 128GB Ram Kingston 4x32GB 3400Mhz CL16
MB - Asus PRIME X570-PRO
PSU - 850W Seasonic
Radeon 560 connected to native linux OS and Radeon 7950 gpu`s passed to the MacOS.
Asus PRIME X570-PRO support 2 x PCIe 4.0 x16 (x16 or dual x8) runing native Devuan (Debian with no SystemD) linux!
You can install qemu on almost any linux distro here in this example i use Devuan linux and qemu 7.2.
Here how lspci -nnk command looks on my PC make sure you put your secondary GPU into vfio mode:
Code: Select all
09:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] [1002:679a]
Subsystem: Gigabyte Technology Co., Ltd Tahiti PRO [Radeon HD 7950/8950 OEM / R9 280] [1458:254c]
Kernel driver in use: vfio-pci
Kernel modules: radeon, amdgpu
09:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti HDMI Audio [Radeon HD 7870 XT / 7950/7970] [1002:aaa0]
Subsystem: Gigabyte Technology Co., Ltd Tahiti HDMI Audio [Radeon HD 7870 XT / 7950/7970] [1458:aaa0]
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intel
0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Baffin [Radeon RX 550 640SP / RX 560/560X] [1002:67ff] (rev cf)
Subsystem: Micro-Star International Co., Ltd. [MSI] Baffin [Radeon RX 550 640SP / RX 560/560X] [1462:8a91]
Kernel driver in use: amdgpu
Kernel modules: amdgpu
0a:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X] [1002:aae0]
Subsystem: Micro-Star International Co., Ltd. [MSI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X] [1462:aae0]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
Code: Select all
qemu-system-x86_64 \
-enable-kvm \
-machine q35,accel=kvm \
-cpu Haswell,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+bmi1,+bmi2,+xsave,+xsaveopt,check \
-smp sockets=1,cores=4 \
-m 16380 \
-smbios type=2 \
-drive if=pflash,format=raw,readonly=on,file=OVMF_CODE.fd \
-drive if=pflash,format=raw,file=OVMF_VARS-1920x1080.fd \
-device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \
-global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off \
-device ich9-ahci,id=sata \
-drive id=MacHDD,if=none,file=mac_hdd.img,format=qcow2 \
-device ide-hd,bus=sata.1,drive=MacHDD \
-vga none \
-netdev user,id=net0,hostfwd=tcp::2222-:22 -device virtio-net-pci,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \
-device nec-usb-xhci,id=xhci \
-device usb-host,vendorid=0x248a,productid=0x00da,bus=xhci.0,port=1 \
-device usb-host,vendorid=0x046d,productid=0xc52f,bus=xhci.0,port=2 \
-device usb-host,vendorid=0x04ca,productid=0x007d,bus=xhci.0,port=3 \
-device usb-host,vendorid=0x1058,productid=0x0730,bus=xhci.0,port=4 \
-device nec-usb-xhci,id=xhci1 \
-device usb-host,vendorid=0x0b05,productid=0x17cb,bus=xhci1.0,port=1 \
-device pcie-root-port,id=pcie1,slot=1,chassis=1 \
-device vfio-pci,host=0c:00.0,bus=pcie1,addr=0x0,multifunction=on,x-no-kvm-intx=on,x-vga=on \
-device vfio-pci,host=0c:00.1,bus=pcie1,addr=0x1
To download ready to use Qemu virtual hdd file "mac_hdd_ng.img" enter our telegram group:
https://t.me/+h2K5CX5jEZA0MWJk
Video demonstration of MacOS Monterey running in Qemu.
youtu.be/QVDMa7MuiGg