本文介绍如何在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文件包。可以使用如下命令安装:

  1. $ 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(绿灯亮),回车再次进入安装系统。

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

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

进入终端, 安装内核扩展,依次输入命令:

  1. umount /Volumes/Mavericks
  2. hdiutil attach /dev/disk0s2 -mountpoint /Volumes/mnt
  3. cp -rp /Backup/Kexts/ElliottForceLegacyRTC.kext /Volumes/mnt/System/Library/Extensions
  4. cp -rp /Backup/Kexts/FakeSMC.kext /Volumes/mnt/System/Library/Extensions
  5. cp -rp /Backup/Kexts/NullCPUPowerManagement.kext /Volumes/mnt/System/Library/Extensions
  6. chmod -R 0755 /Volumes/mnt/System/Library/Extensions/ElliottForceLegacyRTC.kext
  7. chmod -R 0755 /Volumes/mnt/System/Library/Extensions/FakeSMC.kext
  8. chmod -R 0755 /Volumes/mnt/System/Library/Extensions/NullCPUPowerManagement.kext
  9. chown -R root:wheel /Volumes/mnt/System/Library/Extensions/ElliottForceLegacyRTC.kext
  10. chown -R root:wheel /Volumes/mnt/System/Library/Extensions/FakeSMC.kext
  11. chown -R root:wheel /Volumes/mnt/System/Library/Extensions/NullCPUPowerManagement.kext
  12. 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虚拟机的更多相关文章

  1. 【起航计划ObjC 003】印第安老斑鸠ObjC的幻想 ---- ObjC经典问题

    1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #im ...

  2. 【起航计划ObjC 001】印第安老斑鸠ObjC的幻想 ---- Ubuntu下安装并使用Obj-C

    如何在最新版本的 Ubuntu下(14.10)来安装.编译Objective-C? Ubuntu已经有了对Objective-C的编译器(gobjc)的安装,因此安装gobjc的步骤可省,如果你用的U ...

  3. 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 ...

  4. 【起航计划 002】2015 起航计划 Android APIDemo的魔鬼步伐 01

    本文链接:[起航计划 002]2015 起航计划 Android APIDemo的魔鬼步伐 01 参考链接:http://blog.csdn.net/column/details/mapdigitap ...

  5. Ubuntu下的计划任务 -- cron的基本知识

    下面不完全: 参考:http://blog.csdn.net/cuker919/article/details/6336457 cron是一个Linux下的后台进程,用来定期的执行一些任务.因为我用的 ...

  6. 【起航计划 037】2015 起航计划 Android APIDemo的魔鬼步伐 36 App->Service->Remote Service Binding AIDL实现不同进程间调用服务接口 kill 进程

    本例和下个例子Remote Service Controller 涉及到的文件有RemoteService.java ,IRemoteService.aidl, IRemoteServiceCallb ...

  7. 【起航计划 036】2015 起航计划 Android APIDemo的魔鬼步伐 35 App->Service->Messenger Service Messenger实现进程间通信

    前面LocalService 主要是提供同一Application中组件来使用,如果希望支持不同应用或进程使用Service.可以通过Messenger.使用Messgener可以用来支持进程间通信而 ...

  8. 【起航计划 035】2015 起航计划 Android APIDemo的魔鬼步伐 34 App->Service->Local Service Controller

    Local Service Controller 是将LocalService当作“Started”Service来使用,相对于”Bound” Service 来说,这种模式用法要简单得多,Local ...

  9. 【起航计划 034】2015 起航计划 Android APIDemo的魔鬼步伐 33 App->Service->Local Service Binding 绑定服务 ServiceConnection Binder

    本例和下列Local Service Controller 的Activity代码都定义在LocalServiceActivities.Java 中,作为LocalServiceActivities ...

随机推荐

  1. Qt 学习之路 2(52):使用拖放

    Qt 学习之路 2(52):使用拖放 豆子 2013年5月21日 Qt 学习之路 2 17条评论 拖放(Drag and Drop),通常会简称为 DnD,是现代软件开发中必不可少的一项技术.它提供了 ...

  2. php 替换 oracle 数据字段中“看不见”换行符号

    工作需要,把oracle中的数据导出csv,导出代码如下:<?php$file_name = "申請書承認(予定休出).csv";header("Content-D ...

  3. stopPropagation / stopImmediatePropagation

      stopPropagation()只会阻止冒泡或者是捕获. stopImmediatePropagation()会阻止该元素的其他事件发生,但是stopPropagation就不会阻止其他事件的发 ...

  4. SSH 项目建立过程

    1. 加入 Spring 1). 加入 jar 包 2). 配置 web.xml 文件 <context-param> <param-name>contextConfigLoc ...

  5. get 与 post 区别

    Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP ...

  6. 完全原生javascript简约日历插件,js、html

    效果图: 效果如图所示,尽管看上去并不是很美观,但是,基本上的功能还是已经完成了,码了一天多的时间,权当做复习一下js吧. 整个做下来差不多码了500多行代码~其实只是很多的样式也包括了在其中了,虽然 ...

  7. GreenPlum 大数据平台--远程访问-->gpadmin客户端

    一,客户端连接 01,配置文件说明 在master节点的$MASTER_DATA_DIRECTORY(这个是配置的环境变量:/greenplum/data/master/gpseg-1)/pg_hba ...

  8. 牛客网Java刷题知识点之OSI七层参考模型 和 TCP/IP五层参考模型

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

  9. 基于前端js模板替换的多语言方案思考

    最近在做将一个系统多语言化的项目,系统使用的是ASP.NET,直接使用了一种已有的方案:在页面渲染时采用正则表达式替换{XXX:001 确定}格式的标记.但是这个方式增加了服务端的字符串处理,对页面性 ...

  10. java将list分为指定大小的新集合

    上代码: import java.util.ArrayList; import java.util.List; public class JayCommonUtil { /** * 按指定大小,分隔集 ...