How to run MAC OS VM under KVM /qemu

From vpsget wiki
Revision as of 11:38, 13 August 2020 by Ndi (talk | contribs)
Jump to: navigation, search

//DRAFT We will show how to runMAC OS Virtual Machine under KVM /native qemu / This is only in educational purposes.

First of all you need to build your qemu from sources. Even if you have qemu/libvirt already installed our custom build should not conflict with it.

Check qemu module:

lsmod | grep kvm

if not listed add:

modprobe kvm

If you installing on environment that already using qemu/libvirt yo uneed to know where is qemu located in order to do not affect it:

whereis qemu
qemu: /usr/share/qemu

OK go to /opt and download qemu sources:

git clone git://git.qemu-project.org/qemu.git
cd qemu
git submodule init
git submodule update --recursive
git submodule status --recursive
git checkout stable-4.2  #or check what stable version exist at this time

Make sure you enabled APPLESMC in Makefile. Add if not exists the next records in Makefile :

# Makefile for QEMU. 
CONFIG_NE2000_ISA=y
CONFIG_HPET=y
CONFIG_APPLESMC=y

You may also check all APPLE related settings like with search:

grep "APPLE" -r .

Install gcc if not exists:

yum install gcc

..And dev tools if not installed:

yum groupinstall "Development Tools" 

Add depencies:

yum install glib2-devel  glibc-utils zlib zlib-devel pixman-devel


OK next configure to build qemu to custom binary

./configure --prefix=/usr/bin/qemundi 
 # no need: Not sure it need but I've created the target build dir: 
 # mkdir /usr/bin/qemundi
make

Next make install:

make install

OK your custom qemu build shoiuld be located at /usr/bin/qemundi/.. Check version:

/usr/bin/qemundi/bin/qemu-system-x86_64 --version
 QEMU emulator version 4.2.50 (v4.2.0-2711-g29e0855c5a-dirty)
 Copyright (c) 2003-2020 Fabrice Bellard and the QEMU Project developers

Next we will prepare MAC OS.

cd /opt
git clone https://github.com/kholia/OSX-KVM.git
cd OSX-KVM

Refer to the git README for actual steps https://github.com/kholia/OSX-KVM However we will show our way here.

fetch installer:

./fetch-macOS.py
#if you got error like /usr/bin/env no such file or directory most likely you have only python3 installed then try: 
# python3 fetch-macOS.py 
# or install python2


  1. mkdir build
  2. cd build
  3. ../configure
  4. make