在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结
在 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 系统的研究总结的更多相关文章
- 在VMware虚拟机中安装Mac OS 操作系统
1. 安装VMware 我这里是安装VMWARE12.exe,其他的版本我不知道是否可以正常运行,最好大家安装12版本的比较好. 2. 安装 Mac OS X Unlocker for VMware ...
- VMWare15 安装 Mac OS 系统
文章目录VMWare15 安装 Mac OS 系统安装环境工具准备准备工作MAC虚拟机设置启动MAC前准备工作安装系统安装VMware Tool注意事项参考链接安装环境WIN10VMware Work ...
- 使用VMware Workstation Pro 12 虚拟机安装Mac OS系统教程 全程图解
导读:使用虚拟机安装Windows.Linux或者Ubuntu系统大家或许看了很多,但如何使用VMware Workstation Pro 12安装Mac OS,的确需要好好研究一番:否则无法下手,因 ...
- vmware10上安装mac os 10.9
来源地址:http://dtbuluo.com/blog/archives/350 序言: 前几天跟朋友开玩笑说,要不我们一起来学习一下swift编程语言吧~我们就抱着玩玩的态度,没有想过要做出什么优 ...
- Windows上安装Mac OS
在windows上开发ios程序,是一件比較痛苦的事情.由于: 开发android程序,使用eclipse.eclipse有windows版同一时候也有mac版,所以mac上开发android程序和w ...
- 虚拟机VirtualBox安装MAC OS 10.12图文教程
VirtualBox虚拟机安装Mac OS 10.12图文教程的准备 1.VirtualBox虚拟机 下载地址:https://www.virtualbox.org/ 特别提醒:推荐官方下载,安装Vi ...
- 系统重装 如何在PC上安装Mac OS,苹果操作系统
[苹果系统 无影精品]<精睿 无影技术Mac OS X 中文优化正式会员版V10.14和V10.16>◆ 系统前沿:==================================== ...
- 2019windows上安装Mac OS 10.14过程详细截图
之前VMware12里面的Mac OS10.10升级后,键盘鼠标就用不了了.试了几次都这样,只能重装VMware14, 安装Mac OS 10.14系统.把步骤截下图,分享一下. 一.材料准备 1.虚 ...
- VMWare14 安装Mac OS系统(图解)
★ 背景 瞅了瞅自己干瘪的钱包,没忍心入手期待已久的 macPro,只好在虚拟机里玩一下 mac好了,等以后钱包傲气的时候再来个真实的. 安装环境: windows10 VMWare14.2 一.准备 ...
随机推荐
- C实现多线程
#include <stdio.h> #include <pthread.h> #include <unistd.h> #include <iostream& ...
- hdu 4081 Qin Shi Huang's National Road System (次小生成树)
Qin Shi Huang's National Road System Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/3 ...
- ie6 ie7 绝对定位 相对定位 层被遮住
relative 上加上z-index有多个,则z-index递减, absolute层显示则不会被其它标签挡住.
- oracle表分区【转】
摘要:在大量业务数据处理的项目中,可以考虑使用分区表来提高应用系统的性能并方便数据管理,本文详细介绍了分区表的使用. 在大型的企业应用或企业级的数据库应用中,要处理的数据量通常可以达到几十 ...
- bzoj 2324: [ZJOI2011]营救皮卡丘
#include<cstdio> #include<iostream> #include<cstring> #include<cmath> #inclu ...
- POJ 3468 区间更新,区间求和(经典)
A Simple Problem with Integers Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 72265 ...
- node开发 npm install -g express-generator@4
Node forever : 1,forever start --uid test start app.js 2,forever start --uid test start -a app.js 3, ...
- Java并发编程(三)后台线程(Daemon Thread)
后台线程,守护线程(Daemon Thread) 所谓的后台线程,就是指这种线程并不属于程序中不可或缺的部分,因此当所有的非后台线程结束时,程序也就终止了,同时会杀死进程中的所有后台线程.通过setD ...
- Hibernate中的组合映射
1.实体bean设计 car: public class Car { private int id; private String name; private Wheel wheel; set... ...
- POJ 1700 F(Contest #3)
Description A group of N people wishes to go across a river with only one boat, which can at most ca ...