【起航计划ObjC 002】印第安老斑鸠ObjC的幻想 ---- Ubuntu下安装并使用MAC虚拟机
本文介绍如何在Ubuntu下安装Mac OS X Mavericks系统。具体如下:
1)安装前准备工作
下载Mac OS X Mavericks系统,地址:http://pan.baidu.com/s/1dDDzXbb 。
需要下载的文件有:HackBoot_Mav.iso、OSXMavericks2.part1.rar 、OSXMavericks2.part2.rar 、OSXMavericks2.part3.rar。然后将压缩包解压备用。解压后的结果如下:

然后还需要下载去Virtualbox官网下载:Virtualbox、Oracle_VM_VirtualBox_Extension_Pack-4.3.14-95030.vbox-extpack。地址:https://www.virtualbox.org/wiki/Downloads
找linux系统中对应的发行版,对应的系统位数(32位或64位)的安装包下载安装即可。比如下载了virtualbox-4.3_4.3.14-95030~Ubuntu~raring_amd64.deb文件包。可以使用如下命令安装:
- $ sudo dpkg -i virtualbox-4.3_4.3.14-95030~Ubuntu~raring_amd64.deb
或者直接点击安装包,ubuntu会使用软件中心进行安装。
安装好virtualbox之后,可以右键点击Oracle_VM_VirtualBox_Extension_Pack-4.3.14-95030.vbox-extpack,选择Open With VirtualBox,然后virtualbox就会自行进行安装。
2)在Virtualbox中新建虚拟电脑

选择next,进入下一步:

继续选择next,如下:

点击create。

点击create。

点击next。

点击next。

点击create。完成创建过程。
3)设置系统的配置
在virtualbox的设置中,选择System。如下:

将上图中用红色标记的地方的勾选去掉。去掉后如下:

点击上图中的Disaplay选择。进行如下设置:

点击上图中的Storage选项。如下:

点击上图中的红色框住的按钮,选择Add CD/DVD Device,如下:

点击上图中的choose disk按钮。选择之前下载的HackBoot_Mav.iso文件。选择好后,如下:

点击ok按钮,保存上述设置。然后启动刚才新建的Mac OS X Mavericks虚拟机。在引导盘的引导下,会进入如下界面:

在虚拟机菜单 CD / DVD Drive -> Choose a virtual CD/DVD disk file 选择 OSXMavericks2.iso 文件。
按键 F5刷新后, 图标标签变为 OS X Base System,回车开始安装系统。

启动过程可能停在这里一分钟。

选择安装语言。

安装系统开始时,找不到任何有效的硬盘 , 使用菜单 实用工具 ->磁盘工具 格式化虚拟硬盘。

左边点选硬盘, 选择 "抹掉", 名称 Name 录入 "Mavericks", 然后点击 Erase 抹掉。

格式化完毕, 关闭磁盘工具后, 点选 Mavericks 磁盘, 点击 安装。

安装系统需要 30 分钟以上,耐心等待。

安装系统后, 需要重新启动, 虚拟机选 Close 及 Power Off 关闭虚拟机。

关闭 Mac OS X Mavericks 虚拟机后, 在设置的 Storage -> Storage Type Controller SATA 属性 退出 OSXMavericks2.iso。

点击下面的那个删除按钮,就会弹出上图所示的对话框,点击remove即可。
然后CD / DVD Drive 的光盘图标 Add CD/DVD Drive 选择 HackBoot_Mav.iso 文件。类似上篇时介绍的那样。添加好后如下图:

启动Mac OS X Mavericks虚拟机。在引导盘的引导下,会进入如下界面:

在虚拟机菜单 CD / DVD Drive -> Choose a virtual CD/DVD disk file 选择 OSXMavericks2.iso 文件。
按键 F5刷新后, OSX Boot 图标标签变为 OS X Base System(绿灯亮),回车再次进入安装系统。

启动过程可能停在这里一分钟:

再次进入安装系统,这次选实用工具菜单 -> 终端:

进入终端, 安装内核扩展,依次输入命令:
- umount /Volumes/Mavericks
- hdiutil attach /dev/disk0s2 -mountpoint /Volumes/mnt
- cp -rp /Backup/Kexts/ElliottForceLegacyRTC.kext /Volumes/mnt/System/Library/Extensions
- cp -rp /Backup/Kexts/FakeSMC.kext /Volumes/mnt/System/Library/Extensions
- cp -rp /Backup/Kexts/NullCPUPowerManagement.kext /Volumes/mnt/System/Library/Extensions
- chmod -R 0755 /Volumes/mnt/System/Library/Extensions/ElliottForceLegacyRTC.kext
- chmod -R 0755 /Volumes/mnt/System/Library/Extensions/FakeSMC.kext
- chmod -R 0755 /Volumes/mnt/System/Library/Extensions/NullCPUPowerManagement.kext
- chown -R root:wheel /Volumes/mnt/System/Library/Extensions/ElliottForceLegacyRTC.kext
- chown -R root:wheel /Volumes/mnt/System/Library/Extensions/FakeSMC.kext
- chown -R root:wheel /Volumes/mnt/System/Library/Extensions/NullCPUPowerManagement.kext
- hdiutil detach /Volumes/mnt

安装内核扩展后, 退出终端后, 必须等待虚拟机的硬盘指示灯熄灭, Power Off 关闭虚拟机:

关闭 Mac OS X Mavericks 虚拟机后, 在设置的 Storage -> Storage Type Controller SATA 属性 CD / DVD Drive 的光盘图标 Add CD/DVD Drive 选择 HackBoot_Mav.iso

删除上图中的OSXMavericks2.iso,添加HackBoot_Mav.iso。效果如下:

在 HackBoot_Mav.iso 的启动引导下, 如下 OSX Boot 页面出现后 , 使用右键选择启动 Mavericks (绿灯亮),回车开始启动系统:

启动 Mac OS X Mavericks 虚拟机文件后, 进入 Mac OS X 设置国家 :

输入用户名称和用户初始密码:

完成其他安装步骤后,不要启动 iCloud 也不要注册, 并成功进入 Mac OS X 系统:

在苹果菜单 -> 系统偏好设置(System Preferences) -> "安全性与私隐" 里面选择 “任何来源” (用于安装 MultiBeast):

使用 Mac OS X Mavericks 的 Safari, 下载 MultiBeast 6.1 : http://pan.baidu.com/s/1sjCUOGH。自动解压后的文件是在 下载 文件夹里面, 双击 MultiBeast 启动安装:

点选 Build 及最后点击右下角的 Install 开始安装:

等待几分钟后,安装完毕后, 关机。

关机及关闭 Mac OS X Mavericks 虚拟机后, 打开 VirtualBOX 设置虚拟机, 在 Storage -> Controller SATA 属性退出 HackBoot_Mav.iso 文件。退出后的结果如下所示:

在虚拟机设置的 系统 -> 主板 勾选 "启用 Enable EFI":

启动虚拟电脑, 会直接启动 Mac OS X Mavericks 虚拟硬盘, 以后并不需要 Hackboot_Mav.iso 光盘文件的引导:

最终的效果如下图:

【起航计划ObjC 002】印第安老斑鸠ObjC的幻想 ---- Ubuntu下安装并使用MAC虚拟机的更多相关文章
- 【起航计划ObjC 003】印第安老斑鸠ObjC的幻想 ---- ObjC经典问题
1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #im ...
- 【起航计划ObjC 001】印第安老斑鸠ObjC的幻想 ---- Ubuntu下安装并使用Obj-C
如何在最新版本的 Ubuntu下(14.10)来安装.编译Objective-C? Ubuntu已经有了对Objective-C的编译器(gobjc)的安装,因此安装gobjc的步骤可省,如果你用的U ...
- Ubuntu下安装Wine&WineQQ+Phpstorm+wps+svn+vim(计划任的使用)+flashplayer+curl扩展
一.安装Wine 1.添加PPA sudo add-apt-repository ppa:ubuntu-wine/ppa 2.更新列表 sudo apt-get update 3.安装Wine sud ...
- 【起航计划 002】2015 起航计划 Android APIDemo的魔鬼步伐 01
本文链接:[起航计划 002]2015 起航计划 Android APIDemo的魔鬼步伐 01 参考链接:http://blog.csdn.net/column/details/mapdigitap ...
- Ubuntu下的计划任务 -- cron的基本知识
下面不完全: 参考:http://blog.csdn.net/cuker919/article/details/6336457 cron是一个Linux下的后台进程,用来定期的执行一些任务.因为我用的 ...
- 【起航计划 037】2015 起航计划 Android APIDemo的魔鬼步伐 36 App->Service->Remote Service Binding AIDL实现不同进程间调用服务接口 kill 进程
本例和下个例子Remote Service Controller 涉及到的文件有RemoteService.java ,IRemoteService.aidl, IRemoteServiceCallb ...
- 【起航计划 036】2015 起航计划 Android APIDemo的魔鬼步伐 35 App->Service->Messenger Service Messenger实现进程间通信
前面LocalService 主要是提供同一Application中组件来使用,如果希望支持不同应用或进程使用Service.可以通过Messenger.使用Messgener可以用来支持进程间通信而 ...
- 【起航计划 035】2015 起航计划 Android APIDemo的魔鬼步伐 34 App->Service->Local Service Controller
Local Service Controller 是将LocalService当作“Started”Service来使用,相对于”Bound” Service 来说,这种模式用法要简单得多,Local ...
- 【起航计划 034】2015 起航计划 Android APIDemo的魔鬼步伐 33 App->Service->Local Service Binding 绑定服务 ServiceConnection Binder
本例和下列Local Service Controller 的Activity代码都定义在LocalServiceActivities.Java 中,作为LocalServiceActivities ...
随机推荐
- 一些很有意思的JS现象
关于JS对象的 . 和 [] []除了属性名可以比 .天马行空以外(比如我们要添加一个为'33-abc'的属性,一定得用[])),还有一个实际操作中的区别 Object.is的作用和两个奇特的现象 还 ...
- python学习之路---day20--面向对象--多继承和super() 函数
一:python多继承 python多继承中,当一个类继承了多个父类时候,这个类拥有多个父类的所欲非私有的属性 l例子: class A: pass class B(A): pass class C( ...
- python学习,day2:python字符串和二进制之间的互换
在python3中,byte二进制和striing字符串之间不能直接操作,需要进行编码和解码才行.下面是个例子 msg = '我爱北京天安门' print(msg) print(msg.encode( ...
- 洛谷 P4036 [JSOI2008]火星人(splay+字符串hash)
题面 洛谷 题解 首先,我们知道求最长公共前缀可以用二分答案+hash来求 因为有修改操作, 考虑将整个字符串的hash值放入splay中 接着就是splay的基本操作了 Code #include& ...
- C# 获取控制面板软件信息
一般情况下要知道的注册表位置 Software\Microsoft\Windows\CurrentVersion\Uninstall 要知道的根目录集合 List<RegistryKey> ...
- SPOJ - COT2 离线路径统计
题意:求\(u\)到\(v\)的最短路径的不同权值种类个数 树上莫队试水题,这一篇是上篇的弱化部分,但可测试以下结论的正确性 设\(S(u,v)\):\(u-v\)最短路径所覆盖的点集 \(S(u,v ...
- CodeChef - NWAYS 组合数 朱世杰恒等式
这道题目数据有坑,白浪费一个小时! 题意:求\(\sum_{i=1}^n\sum_{j=1}^n{|i-j|+k \choose k}\) 知识点: 朱世杰恒等式,\(\sum_{i=r}^n{i \ ...
- java的Spring学习2- junit
1.maven依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...
- Notepad++ 代码格式化插件
UniversalIndentGUI 是一个代码格式化工具合集,基于很多开源的代码格式化项目.有NPP的插件版也有独立的程序,支持常见代码格式. 支持的代码格式: C, C++, C#, Cobol, ...
- laravel的一些语法
5.1的一些语法 检索表中的所有行 $users = DB::table('users')->get();因为查询出来的是对象,所以可以直接选择DB::table('users')->ge ...