这个帖子只用来解决特定问题,是楼主这两天辛苦的结晶,如果你遇到了跟我差不多的情形,你就可以尝试这个解决方案。

特定情景:
1、不管你的机器支不支持 UEFI ,反正你现在是用传统 BISO + MBR 模式启动的;
2、你的硬盘上装了包括 Win, Mac 和 Linux 在内的多个系统;
3、Mac 所在分区不是主分区,导致你无法使用常规模式来引导;
4、你不想更改硬盘分区和重装系统。

5、你目前使用 Linux 在一个 boot 分区上安装 grub2 来实现多系统引导,
6、你头疼的是这个 grub2 可以正常引导 Linux 和 Windows 但不能引导 OS X 。

解决方案:
用 grub2 启动 clover.iso 来启动 OS X 。

以下步骤均在 Linux 下操作。

1、下载最新版 Clover EFI bootloader ISO ,在远景论坛下载或者去 sf.net 都可以:
http://sourceforge.net/projects/cloverefiboot/files/Bootable_ISO/
目前最新版是 CloverISO-2636.tar.lzma

2、把它解压缩,里面有两个 ISO 文件,一个是 X64 的,一个是 IA32 的。一般我们用 X64 的。
把这个 ISO 改名为 clover.iso ,复制到你的启动分区 /boot 下。

3、看你的 /boot 目录下有没有 memdisk ,如果没有,你要安装 syslinux 。
用你的 linux 的安装系统(apt-get, yum, pacman, zypper...)安装 syslinux,
安装后,到 /usr/lib/syslinux 目录下,找到 memdisk ,把它复制到 /boot 目录下。

4、修改 /boot/grub/grub.cfg ,把 OS X 的条目内容改为:

set root='(hd0, 1)'
linux16 /memdisk iso ram
initrd16 /clover.iso

然后就可以解决了。

这样当你在 grub2 菜单中选择启动 OS X 的时候,它会先启动 clover ,然后用 clover 来启动 OS X 所在分区。速度很快。
远景论坛U盘版里的变色龙wowpc.iso在我的机器上没法正常启动OSX分区。

在这个解决方案中,起关键作用的是那个 memdisk ,有了它,你可以启动任意 iso 。比方说 WinPE、Linux的安装盘,变色龙的ISO,之类的,只要把它们直接放到 /boot 下,然后在 grub2 里面加载即可。

原贴地址:

http://www.strongbear.cn/?post=579

[转载]用 grub2 启动 clover.iso 来启动 OS X的更多相关文章

  1. VMWARE在UEFI下启动PE.ISO

    1.编辑虚拟机设置→选项→高级→通过EFI而非BIOS引导勾选. 2.虚拟机→电源→打开电源时进入固件,进入之后修改光驱为第一引导. 3.挂载PE.ISO,启动时虚拟机顶部出现Press any ke ...

  2. linux更改启动级别后,无法启动的问题解决

    装好之后,配置好IP,启动后也能上网了,然后我修改了系统的启动级别(默认为3,我改为了5),意思是让他能够启动桌面. 我是这么设置的: 1.vi命令打开/etc/inittab文件,可以看到如下描述 ...

  3. 深入理解Activity启动流程(三)–Activity启动的详细流程2

    本文原创作者:Cloud Chou. 欢迎转载,请注明出处和本文链接 本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 深入理解Activity启动流程(一)--A ...

  4. 深入理解Activity启动流程(二)–Activity启动相关类的类图

    本文原创作者:Cloud Chou. 欢迎转载,请注明出处和本文链接 本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究. 在介绍Activity的详细启动流程之前,先 ...

  5. WinCE C#程序,控制启动时仅仅能启动一个程序,使用相互排斥量来实现,该实现方法測试通过

    </pre><pre code_snippet_id="430174" snippet_file_name="blog_20140718_5_46349 ...

  6. 启动hadoop,没有启动namenode进程。log4j:ERROR setFile(null,true) call faild.

    启动hadoop,没有启动namenode进程.log4j:ERROR setFile(null,true) call faild.   解决办法: cd /home/hadoop/hadoop-en ...

  7. 你所不知道的SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧

    目前SQL Server数据库作为微软一款优秀的RDBMS,其本身启动的时候是很少出问题的,我们在平时用的时候,很少关注起启动过程,或者很少了解其底层运行过程,大部分的过程只关注其内部的表.存储过程. ...

  8. Android开发常见问题系列之一:eclipse中adb.exe启动失败或者无法启动

    这种情况下大多数是因为存在kadb.exe在执行,或者adb.exe端口被占用. 1,检查是否存在kadb.exe程序正在执行 打开任务管理器,打开详细信息,按照字母顺序找到kadb.exe,结束进程 ...

  9. 【项目启动】 tomcat启动,项目无法启动,无法正常访问/项目可以启动,报错:java.lang.ClassNotFoundException: ContextLoaderListener

    使用maven搭建项目(这个错误和是不是使用maven搭建项目没有关系),然后部署到tomcat中运行. 出现问题1: tomcat跑起来了,但是启动时间很短,没有报错,项目不能正常访问 项目启动时间 ...

随机推荐

  1. MS SQL 监控错误日志的告警信息

    SQL Server的错误消息(Error Message)按照消息的严重级别一共划分25个等级,级别越高,表示严重性也越高.但是如果你统计sys.messages,你会发现,实际上只有16(SQL ...

  2. javascript - 封装原生js实现ajax

    1 /* * ajax方法 */ var Ajax = function() { var that = this; //创建异步请求对象方法 that.createXHR = function() { ...

  3. python数据库操作对主机批量管理

    import paramiko import MySQLdb conn = MySQLdb.connect(host=',db='host') cur = conn.cursor(cursorclas ...

  4. Spring AOP支持的AspectJ切入点语法大全

    原文出处:http://jinnianshilongnian.iteye.com/blog/1420691 Spring AOP支持的AspectJ切入点指示符 切入点指示符用来指示切入点表达式目的, ...

  5. sql中毫秒数与格式化时间的转换

    使用MYSQL自带的函数FROM_UNIXTIME(unix_timestamp,format). 如: SELECT FROM_UNIXTIME(1461201575895/1000,"% ...

  6. [WPF系列]从基础起步学习系列计划

    引言 WPF技术已经算不什么新技术,一搜一大把关于WPF基础甚至高级的内容.之前工作中一直使用winform所以一直没有深入学习WPF,这次因项目中使用了WPF技术来实现比较酷的展示界面.我在这里只是 ...

  7. 极客DIY:打造你的专属黑客U盘

    简介 由于“Bad USB漏洞”的存在,USB闪存驱动器也成了常见的攻击目标.Bad-USB让黑客可以重新编程微控器作为一个“人机界面装置”(HID)或键盘,然后在目标机器上执行自定义键盘敲击.这种情 ...

  8. Fiery Youth

    青春和时间是一对好兄弟,让人留恋的时光总是那么快偷偷溜走了.学习java不能确定改变生活和现状,至少是迈出了进步的决定,而不是停滞不前.既然这样,那就动起来吧!看了刘树勇老师的演讲,就得出一个结论:千 ...

  9. 第18章 集合框架(2)-Set接口

    第18章 集合框架(2)-Set接口 Set是Collection子接口,模拟了数学上的集的概念 Set集合存储特点 1.不允许元素重复 2.不会记录元素的先后添加顺序 Set只包含从Collecti ...

  10. Git的Patch功能

    转自:http://www.cnblogs.com/y041039/articles/2411600.html UNIX世界的软件开发大多都是协作式的,因此,Patch(补丁)是一个相当重要的东西,因 ...