在 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执行不过去。

在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结的更多相关文章

  1. 在VMware虚拟机中安装Mac OS 操作系统

    1. 安装VMware 我这里是安装VMWARE12.exe,其他的版本我不知道是否可以正常运行,最好大家安装12版本的比较好. 2. 安装 Mac OS X Unlocker for VMware ...

  2. VMWare15 安装 Mac OS 系统

    文章目录VMWare15 安装 Mac OS 系统安装环境工具准备准备工作MAC虚拟机设置启动MAC前准备工作安装系统安装VMware Tool注意事项参考链接安装环境WIN10VMware Work ...

  3. 使用VMware Workstation Pro 12 虚拟机安装Mac OS系统教程 全程图解

    导读:使用虚拟机安装Windows.Linux或者Ubuntu系统大家或许看了很多,但如何使用VMware Workstation Pro 12安装Mac OS,的确需要好好研究一番:否则无法下手,因 ...

  4. vmware10上安装mac os 10.9

    来源地址:http://dtbuluo.com/blog/archives/350 序言: 前几天跟朋友开玩笑说,要不我们一起来学习一下swift编程语言吧~我们就抱着玩玩的态度,没有想过要做出什么优 ...

  5. Windows上安装Mac OS

    在windows上开发ios程序,是一件比較痛苦的事情.由于: 开发android程序,使用eclipse.eclipse有windows版同一时候也有mac版,所以mac上开发android程序和w ...

  6. 虚拟机VirtualBox安装MAC OS 10.12图文教程

    VirtualBox虚拟机安装Mac OS 10.12图文教程的准备 1.VirtualBox虚拟机 下载地址:https://www.virtualbox.org/ 特别提醒:推荐官方下载,安装Vi ...

  7. 系统重装 如何在PC上安装Mac OS,苹果操作系统

    [苹果系统 无影精品]<精睿 无影技术Mac OS X 中文优化正式会员版V10.14和V10.16>◆ 系统前沿:==================================== ...

  8. 2019windows上安装Mac OS 10.14过程详细截图

    之前VMware12里面的Mac OS10.10升级后,键盘鼠标就用不了了.试了几次都这样,只能重装VMware14, 安装Mac OS 10.14系统.把步骤截下图,分享一下. 一.材料准备 1.虚 ...

  9. VMWare14 安装Mac OS系统(图解)

    ★ 背景 瞅了瞅自己干瘪的钱包,没忍心入手期待已久的 macPro,只好在虚拟机里玩一下 mac好了,等以后钱包傲气的时候再来个真实的. 安装环境: windows10 VMWare14.2 一.准备 ...

随机推荐

  1. Java script基础

    Java script基础 Js的每个语句后面都要有分号. <script  type="text/java script">所有JS内容</script> ...

  2. 《Pro AngularJS》学习小结-02

    上一篇的项目只有一个单独的模板页面,加入了相应的controller,filter,使得页面上的数据能够动态的变化.现在我们开始建立并整合多个模板,加入购物车模块和结账checkout模块. 一.在页 ...

  3. Linux 远程桌面控制

    我现在知道有两种方式: 1.直接使用Gnome桌面的远程控制功能.在服务器端登录到gnome桌面,然后在系统菜单中打开远程桌面配置,勾选允许远程即可.这种方式客户端和服务器的两种操作将保持同步,也就是 ...

  4. 关于spring 事物传播性的研究

    spring的一大特色就是数据库事务管理方便,我们在代码中编写代码时,看不到事务的使用,关键是spring 使用了AOP进行事务拦截.   这篇文章主要介绍spring的事务传播性.   1.为什么要 ...

  5. redhat enterprixe 5.0 web 服务配置与管理

    一.Web服务及工作原理 Web服务的实现采用客户/服务器模型.客户机运行Web客户程序(浏览器),作用是解释和显示Web页面,相应用户的输入请求,并且通过http协议将用户请求传递给Web服务器.W ...

  6. Mysqldump参数大全

    Mysqldump参数大全(参数来源于mysql5.5.19源码)   参数 参数说明 --all-databases  , -A 导出全部数据库. mysqldump  -uroot -p --al ...

  7. Assert断言测试

    assert编写代码时,我们总是会做出一些假设,断言就是用于在代码中捕捉这些假设,可以将断言看作是异常处理的一种高级形式.断言表示为一些布尔表达式,程序员相信在程序中的某个特定点该表达式值为真.可以在 ...

  8. web开发-服务器Controller到前端中的数据传递

    一, ajax方式 (一)controller中 1. 定义AjaxResponse类 成员有: status , message, data.  其中 status是成功或失败状态, message ...

  9. 北邮新生排位赛1解题报告a-c

    <div class="page-header" style="padding-bottom: 9px; margin: 20px 0px 30px; border ...

  10. 精华 ionic入门之色彩、图标、边距和界面组件:列表

    目录:色彩.图标和边距色彩图标内边距界面组件:列表列表:.list成员容器:.item.item: 嵌入文本.item : 嵌入图标.item : 嵌入头像.item : 嵌入缩略图.item : 嵌 ...