大致可行的方法有两种:
第一种,重新编译内核、编译qemu、编译kvm、kvm-mod,加上OS X的支持。
详情:http://www.tuicool.com/articles/JBzANrU
在使用此种方法编译kvm时,报错,无法安装,文件内容都与作者标识的不一致。才疏学浅,未能成功。。。
第二种,GitHub上有OSX-KVM项目,相对来说较为简单,本次采用此种方法。
具体请参考:https://github.com/kholia/OSX-KVM
本文所需文件:
在Mac下制作的Install_macOS_Sierra_OS_X_10.12.iso
引导文件enoch_rev2839_boot
创建的磁盘mac_hdd.img
qemu配置文件OSX_KVM.xml
链接:http://pan.baidu.com/s/1qYbe12W 密码:6znh
物理机系统说明:
作者在以下系统中测试过:
Ubuntu 15.10 running on i5-6500 CPU.
Ubuntu 16.10 running on i7-3960X CPU.
Fedora 24 running on i5-6500 + i7-6600U CPU.
QEMU版本:2.4.1, 2.5, 2.6.1, and 2.8.
AMD CPU有问题。AMD FX-8350 可以工作,但是Phenom II X3 720不工作
需要开启 Intel VT-x/AMD-v虚拟化技术
本次使用环境:
Ubuntu Server 16.04 LTS
QEMU:2.5.0
sudo apt-get install qemu uml-utilities virt-manager
sudo apt-get install bridge-utils
root@fin75:~# vim /etc/network/interface
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
auto br0
iface br0 inet static
address 10.207.0.75
network 10.207.0.0
netmask 255.255.255.0
broadcast 10.207.0.255
gateway 10.207.0.1
dns-nameservers 223.5.5.5
bridge_ports eno1
bridge_stp off
bridge_fd 0
bridge_maxwait 0
post-up ip link set br0 address 78:2b:cb:0f:9d:6d
root@fin75:~# reboot
注意:virbr0是安装kvm时系统建立的,为NAT网络专用,跟我们要使用的桥接完全不同
按照官方文档直接重启服务会失败,重启物理机就可以了。
参考:https://help.ubuntu.com/community/KVM/Networking
qemu-img create -f qcow2 /u01/mac_hdd.img 200G
安装方法可以使用boot-macOS.sh/boot.sh,或者使用macOS-libvirt.xml
本次使用libvirt文件的方式
#只需修改这几处即可。
#引导文件位置
/u01/boot/enoch_rev2839_boot
#磁盘文件位置
virsh define /somepath/OSX-KVM/macOS-libvirt.xml
#定义后,在/etc/libvirt/qemu/目录下会有macOS-libvirt.xml文件,以后修改后只需重新定义此文件即可
在virt-manager中启动OSX
步骤:
选择磁盘工具
格式化KVM磁盘
退出磁盘工具,打开终端
输入命令,拷贝安装文件:
cp -av /Extra /Volumes/KVMDisk
退出终端,启动安装即可!
解决办法:开启ignore_msrs
echo 1 > /sys/module/kvm/parameters/ignore_msrs
开机执行
vim /etc/rc.local
echo 1 > /sys/module/kvm/parameters/ignore_msrs
internal error: process exited while connecting to monitor: 2017-04-05 T06:\25:53.648209Z qemu-system-x86_64: -drive id=MacDVD,if=none,snapshot=on,file=/opt/Install_macOS_Sierra_OS_X_10.12.iso: Could not open ‘/opt/Install_macOS_Sierra_OS_X_10.12.iso’: Permission denied
kvm需要selinux装载安全模块,默认的Ubuntu server没有安装selinux
sudo apt-get install selinux
#设置selinux=permissive
reboot
sudo apt install font-manager
sudo apt install fonts-arphic-ukai
sudo apt install ttf-wqy-zenhei xfonts-wqy ttf-wqy-microhei
sudo apt install fonts-cwtex-fs
sudo apt install ttf-hanazono
sudo apt install ttf-mscorefonts-installer
需要将显示协议由Spice
服务器更改为VNC
服务器,并且将键映射改为:en-us
,不然会出现键盘无法使用的情况
需要将显卡由QXL
改为Cirrus
,不然kvm安装windows系统时会卡在Starting Windows画面
http://serverfault.com/questions/776406/windows-7-setup-hangs-at-starting-windows-using-proxmox-4-2
需要将NIC网卡由rtl8139
更改为e1000
,不然会出现断网的情况
https://github.com/kholia/OSX-KVM
http://www.tuicool.com/articles/JBzANrU
http://www.jianshu.com/p/e95c458d78bd
https://blog.ostanin.org/2014/02/11/playing-with-mac-os-x-on-kvm/
http://www.cnblogs.com/huntaiji/p/3918941.html