更多技术性文章请关注 合伙呀

在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结


一、资料来源:
    网上一共找到两个方法,一个是视频上的教程,一个是网页资料。

二、视频资料方法内容:
1.install qemu
sudo apt-get install qemu
2,creating a blank img
qemu-img create x.img 20G
3,setting up Mac Installation
qemu-system-x86_64 -hda pathtoimg -vga std -m 2048 -soundhw ac97 -cdrom pathtoiso -boot d
4,restart
qemu-system-x86_64 -boot c -vga std -m 2048 -hda imgpath
总结:经过多次镜像制作与替换尝试,最终发现需要iPC系统才能看到安装界面(黑苹果系统)。此方法安装的系统会出现无限重启的问题而安装失败,并且系统即使安装成功也无法升级系统版本。


三、网页资料内容
网址1:http://www.vpsee.com/2014/06/install-and-run-os-x-mavericks-with-kvm-under-linux/
网址2:http://www.contrib.andrew.cmu.edu/~somlo/OSXKVM/
网址3:http://www.bonashen.com/post/artifice/running-mac-os-x-as-a-qemu-kvm-guest

这种方式比较复杂,据说能实现版本升级且使用正版系统。

步骤:
1, Linux 发行版自带的 kvm/qemu 都不支持 OS X 作为 guest 系统,所以需要自己编译 kvm, kvm-kmod, qemu 加上 OS X 的支持。
2,在 Mac 上用脚本生成一个可启动的 Mavericks ISO 文件。
3,在 Mac 上编译 smc_read.c 这个文件并运行得到 SMC。
4,制作Chameleon 系统的启动器(引导文件)。
5,启动代码:
qemu-system-x86_64 -enable-kvm -m 2048 -cpu core2duo \
-smp 2 \
-vga std \
-device ahci,id=ide \
-usbdevice keyboard -usbdevice mouse \
-device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \
-kernel /home/tang/Desktop/chamele/usr/standalone/i386/boot \
-smbios type=2 \
-device ide-drive,bus=ide.2,drive=MacHDD \
-drive id=MacHDD,if=none,cache=none,file=/home/tang/x.img \
-vnc 0.0.0.0:1 \
-device ide-drive,bus=ide.0,drive=MacDVD \
-drive id=MacDVD,if=none,snapshot=on,file=/home/tang/Volumes.iso -boot once=d

总结:
步骤1下载很慢,下载之后也会出现找不到的问题。
步骤2在制作工程中会出现很多路径问题。
步骤3可能是失败的原因之一,要获得苹果电脑的SMC序号,用教程中的c语言代码编译,最后获得的结果是:urhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc,不确定这个是不是需要的序列号。
步骤4下载了变色龙引导文件。
步骤5运行不过去,-smbios type=2 会出现问题,如果去掉这句,系统会启动不了。

 
最终总结:

方法1的系统不能升级,不符合我们的要求。方法2的失败以及进行不下去有三个原因:1,尝试此方法需要下载安装:git、’Development Tools’、kvm.git 、kvm-kmod.git、kvm、 zlib 、zlib-devel、 glib2-devel 、pixman-devel、chameleon等。2,SMC序号不确定是否正确。3,-smbios type=2执行不过去。