[转]MacBook Pro上装三系统 OS X、Ubuntu、Win 7

原文在这里  http://www.pblog.lpcastle.com/2010/07/triple_boot_macbook_ubuntu_win7/

前言

趁着快毕业买了最新MacBook Pro,然后装了三系统。装Ubuntu的原因是很多实验都是在Ubuntu下做的,以后可能还要继续整理那些东西。装Windows 7的原因是考虑到接下来的半年可能有时间玩些游戏,并且也想看看最新的Windows 7到底有多好。最终,经过长达10个小时左右的N次失败的实践,最终成功把三系统(Mac OSX,Ubuntu 10.4,Windows 7)装了进去,发现新版的这两个系统都很不错。现在上来把过程总结一下,希望能对别人有所帮助。

不过注意,以下经历都是在以上版本的基础上进行的,其余版本请查看其余的攻略,并自负后果。另,整这个东西比较麻烦,很有可能丢掉Win或者Ubu的引导而不能访问里面的数据。

三系统的引导原理及注意事项(引自Rainux’s Journal)

背景

理论上,所有基于 Intel CPU 的 Mac 计算机(包括 MacBook,Mac Mini 等)在安装过 Mac OS X 10.4.6 或更高版本的 combo update 和 firmware update 后都应该可以安装运行 GNU/Linux 和 Windows 2000 以上版本,但是有一些限制。

众所周知 PC 使用 BIOS 作为硬件 firmware 和操作系统的中间层,并且使用 MBR 分区表作为硬盘分区方案。而 Intel Mac 与普通 PC 最大的区别就是使用了 BIOS 的下一代替代品 EFI 和 GPT 分区方案。EFI 和 GPT 都分别向后兼容于 BIOS 和 MBR 分区表,所以可以支持基于 BIOS 和 MBR 的操作系统,例如 GNU/Linux 和 Windows。

简单地说,GPT 通过包含一份 MBR 分区表来兼容 MBR 分区方案(参考 Wikipedia 上的 GPT 页面)。GPT 的内容可以被同步到 MBR 分区表中,所以当硬盘使用 GPT 分区方案时,GPT 里的分区可以通过 MBR 分区表被访问到——这是在 Intel Mac 上安装基于 MBR 分区表方案的操作系统的关键。但是 MBR 分区表只能包含最多 4 个主分区(扩展分区相当于一个主分区,可以在其上划分多个逻辑分区),而 GPT 没有扩展分区和逻辑分区的概念,现有的工具在同步 GPT 到 MBR 分区表时也不会做额外的转换,所以实际上只能同步 GPT 上的前 4 个分区到 MBR 分区表中。而 Intel Mac 上运行 Windows 有一个奇怪的限制,Windows 必须被安装到 MBR 分区表中的最后一个分区上,否则会在启动时提示找不到 %SystemRoot%\system32 目录下的某文件

虽然 Mac OS X 附带的 Disk Utility 可以对 GPT 分区方案的硬盘进行分区,但是不够稳定,不建议使用。GNU Parted 是我的选择,它对 GPT 分区方案支持比较好。另外还需要 rEFIt 中的Partitioning Tool 来同步 GPT 和 MBR 分区表,同时我也使用 rEFIt 作为多系统引导管理器,相对于目前的 GRUB2 来说,它更成熟并且非常容易使用,还拥有很漂亮的图形界面。

GNU/Linux 内核支持 GPT,因此启动之后可以访问 GPT 上的所有分区。但是 GRUB 不支持 GPT,所以 GRUB 和 GNU/Linux 内核必须被安装到一个 MBR 分区表里的分区上。Windows 完全不支持 GPT,所以始终只能访问 MBR 分区表上的 4 个分区。

双系统的特殊情况

在典型的双系统情况下,你可能只有三个分区,Mac OS X 占用两个,Windows 占用一个。使用 rEFIt 同步 GPT 和 MBR 分区表后,工作很正常。然而如果你在 Mac OS X 里创建了另外一个分区,导致同步 GPT 和 MBR 后 Windows 安装分区不再是 MBR 分区表中最后一个分区,此时 Windows 就会像上文中提到那样无法启动。解决方法很简单,使用不支持 GPT 的分区工具将这个新创建的分区在 MBR 分区表中删掉即可。注意,仅仅是在 MBR 分区表中删掉,在 Mac OS X 里通过 GPT 你仍然可以访问它。

不支持 GPT 的分区工具包括 Linux 里的 fdisk,Windows 的 compmgmt.msc 里的磁盘管理,以及各种 Windows 下第三方工具的较老版本,例如 Paragon Partition Manager 7.0。

根据以上的介绍,有两个事项需要注意:MBR最多支持4个分区,Windows必须被装在最后一个分区。所以,怎么分区就成了主要问题。参照很多资料,分区方案基本上都是如下:

  • /dev/sda1 -> EFI
  • /dev/sda2 -> Mac OS X
  • /dev/sda3 -> intended for Linux
  • /dev/sda4 -> Windows
  • /dev/sda5 -> Linux Swap

然后问题就是怎么进行以上的分区,以及按照什么顺序安装。

准备的工具

rEFIt的光盘,Mac OSX的随机光盘,Ubuntu 10.4的自刻光盘,Windows 7的系统光盘。

安装成功的步骤

  1. 最新的Mac OSX下安装rEFIt。
  2. 在Mac OSX下利用磁盘工具分出一个大的新磁盘,作为Ubuntu和Windows用的。
  3. 把Ubuntu的光盘插入后重启系统,然后rEFIt会自动识别Ubuntu的启动光盘(不能识别就利用rEFIt继续重启一次),最终进入Ubuntu的体验系统。然后利用Ubuntu下自带的分区工具(很赞的,以后可以放弃番茄花园光盘里自带的PQ了)把系统分成以上几个区. 这时候可以直接把/dev/sda4格式化成NTFS文件系统,而/dev/sda3的话,我把他格成了ext2.(另注:不是很清楚能否跳过2直接用Ubuntu下的分区工具来搞定以上分区,也许可行。)
  4. 分区成功后重启,进入rEFIt 同步 GPT 和 MBR。
  5. 把Windows 7插入光驱后重启,rEFIt一般能识别这个光盘,然后把Windows 7安装在/dev/sda4下。过程会经过两三次重启,最后可以插入OSX的系统盘安装BootCamp的各种驱动,然后再启动的话就可以进入已经整备好的Win 7了。
  6. 最后插入Ubuntu的光盘,重启,利用rEFIt开始Ubuntu的安装,成功后重启,就会出现由rEFIt表示的三个系统。
  7. 以为万事大吉的时候,进入rEFIt中的Win或者Ubu,发现接下来的页面是Grub的引导页面!然后查rEFIt的文档,发现了下面的话(引自rEFIt主页):

If you have both Windows and Linux installed on the same internal disk, and choosing Windows in the rEFIt boot menu boots Linux, the likely cause is that your Linux system installed its boot loader (GRUB, LILO, etc.) in the Master Boot Record (MBR) instead of the partition boot record (PBR). Due to the way rEFIt works, choosing either of the operating systems in the rEFIt menu starts the Linux boot loader installed in the MBR. In the best case that boot loader then presents you with another menu where you can choose between Windows and Linux, and in the worst case it just loads Linux without giving you a chance to get into Windows.

也就是说因为Linux的把应该装在PBR的引导装到了MBR上去了。同时我这算是运气好的,最终还能利用Grub进入下面的两个系统。

To fix this problem, you need to install GRUB / LILO in the boot sector of your Linux partition instead, then remove it from the MBR. I’m not aware of a ready-made tool that can safely do that removal. Please ask for help on a Linux forum if needed.

如果想解决这个问题,必须重新把Linux的引导改道PBR上,但是没有这样的工具,而且修改起来也比较麻烦。

最后重启,按住Alt/Option后会发现BootCamp的默认引导,然后按下去就是Grub的驱动,也可以由此继续进入Ubu或者Win。也就是现在成了一下的引导格局

(Boot(Mac_BootCamp(Mac_rEFIt|Ubuntu_rEFIt(Ubuntu_Grub|Windows7_Grub)

|Windows7_rEFIt(Ubuntu_Grub|Windows7_Grub)))

|Windows_BootCamp(Ubuntu_Grub|Windows7_Grub)))

也就是说有了两套进入Win或者Ubu的方法。一种是开机按Option然后由Grub引导。一种是开机直接进入rEFIt,然后选择Ubu或者Win的图标后再由Grub引导一次。

后来考虑到自己的主用系统是Mac,偶尔进入Windows或者Ubuntu,索性就把rEFIt的引导删除了(如何删除参见rEFIt主页),留下了BootCamp和Grub的那一套引导。

(Boot(Mac_BootCamp|Windows_BootCamp(Ubuntu_Grub|Windows7_Grub))

网上的几个攻略

参照某人的备忘,发现Paragon ext是收费软件,所以当时没能在Mac下给Linux画出空间来。

参照Rainux’s Journal的步骤安装完Linux后安装了Windows,最后发现Linux的引导丢失。

以及Google上广为流传的“ 教你在macbook pro上装三系统”,在等linux开始拷贝文件的时候强制切断电源那一步,可以利用linux自带的分区工具进行的。

其余失败过的步骤

包括分区的失败,颠倒顺序的失败等,用番茄花园的失败等。

参考网页

http://forum.ubuntu.org.cn/viewtopic.php?f=77&t=261921

http://wiki.onmac.net/index.php/Triple_Boot_via_BootCamp

http://wiki.onmac.net/index.php/How_To_Backup_your_Mac

http://wiki.onmac.net/index.php/Triple_Boot_via_BootCamp_Ubuntu

http://rainux.org/intel-mac-multi-boot-macosx-gnu-linux-windows-xp-theory-and-practice

http://wiki.debian.org/MacBook

http://it.21cn.com/notebook/bbpc/2010/03/14/7403044.shtml

---------------------------

另外,害怕折腾的同学,推荐做法是,由于win7比较吃资源,所以将其用bootCamp装成双系统,而且你不是那么地爱ubuntu的特效的话,就用虚拟机吧.

---------------------------

我的win7下,插上耳机或音响没声音,但笔记本自己的喇叭能正常工作,是驱动问题,按照下图一一做吧:

 在设备管理器下,选择cirrus logic cs 4206A,更新驱动程序

转载于:https://www.cnblogs.com/zhouyinhui/archive/2010/08/29/1811891.html

[转]MacBook Pro上装三系统 OS X、Ubuntu、Win 7相关推荐

  1. Macbook Pro / Air 最简单的安装Mac+Win双系统,无需光盘,无需U盘!

    OSX版本 >= 10.14:  https://rudon.blog.csdn.net/article/details/104592930 OSX版本  <  10.14:  本文 (如 ...

  2. Macbook Pro笔记本双系统MacOS和Windows切换默认启动

    一.开机切换 开机时,按住option键不要动,等待Macbook Pro出现以下界面,选择你想开机的系统即可. (BootCamp就是Windows) 二.默认切换,这里分两种情况 1)默认MacO ...

  3. macbook pro 安装双系统 win10 教程

    朋友买了台macbook pro 但是他不喜欢os操纵系统(相信有太多人不习惯os的cao),于是把电脑抱过来要我给他整一个win10,这下子有点慌,我装过很多windows系统,但是从来没弄过mac ...

  4. 双系统基础上装三系统教程

    我电脑本来有win7家庭普通版和Ubuntu16.04两个系统,不知道为啥,win7家庭普通版这个系统突然就不能播放视频和玩游戏了,一弄就蓝屏,一开始以为是显卡坏了,于是禁用独显,然后使用集显看视频, ...

  5. Macbook Pro上装Linux的牢骚

    原来带出去开会的一台Mac(Macbook pro,Mid 2012)硬盘坏了,买了一块新硬盘,开始是准备装Ubuntu. 结果不管是Ubuntu启动盘还是USB(而几乎其他版本的Macbook pr ...

  6. 在MacBook Pro上装Mac和Linux双系统

    之前因为各种很多学习需要的软件只能在Windows上面使用,在MacBook上装了Win7双系统,现在感觉SSD里的Win10够用了,下了狠心,一口气卸掉了Win7,又因为各种原因要装Linux,于是 ...

  7. macbook pro安装双系统

    在mac下安装双系统,一台电脑顶两台使用.刚才看到了一个安装双系统的方法.转过来供大家学习一下.其实也容易操作的. 1.正常进入MacOS(以下简称mac),在桌面上点击前往→实用工具: 2.进入&q ...

  8. 初识MacBook pro 2016--安装系统(恢复系统)

    本文重点在底部>>>>>> Mac重装系统是很简单的,首先先记录一下官网的说明: ---------------------华丽的分割线-------------- ...

  9. Macbook Pro / Air 最简单的安装Mac+Win双系统,无需光盘,无需U盘! - for OSX 10.14 +

    OSX版本 >= 10.14:  本文 OSX版本  <  10.14:  https://blog.csdn.net/qq285744011/article/details/822188 ...

最新文章

  1. 点云深度学习研究现状与趋势
  2. 029# Adempiere采购模组-从采购申请创建采购订单
  3. 《斗罗大陆》引入阿里云云原生数据库 PolarDB 游戏体验更流畅
  4. 如何把js变量传递给html页面,如何将js变量从一个html文件传递给另一个?
  5. for遍历list scala_面试官问:List 如何一边遍历,一边删除?
  6. mysql 更新索引_MySQL索引优化
  7. Rational 中 DataPool 的介绍与实际应用
  8. 视频压缩的I帧,P帧和B帧。
  9. 家用nas的过去现在和未来--2008n年
  10. java设计模式-终结者者模式
  11. Ardunio开发实例-BME280传感器
  12. ios 越狱后常见的源添加
  13. 读《茶树冷胁迫的全局基因表达谱》
  14. arch linux简体中文,Locale (简体中文)
  15. MSP430系列单片机实用C语言程序设计 张晞pdf
  16. 2020年末的一些职业规划思考
  17. 帮您解决开发SPI4W常见问题
  18. oracle date类型字段,Oracle Date类型
  19. linkedList手写
  20. jsessionid用途

热门文章

  1. 夸克浏览器怎么安装脚本_还你清爽流畅!这五款手机浏览器!黑马强推
  2. python随机数种子通俗_随机数种子random.seed()理解
  3. 经典的 Fork 炸弹解析
  4. 【设计模式】C++单例模式
  5. 数据库原理学习笔记(一)关系完整性以及数据库完整性
  6. 嵌入式Linux操作系统学习规划 (转)
  7. socket通信中的几个重要结构体定义
  8. 怎样调整vim分屏窗口的宽度和高度?
  9. php server 域名,php 关于如何获取域名或者IP地址的$_SERVER['']
  10. 有机晶体数据库_技术专栏:一篇文章搞懂晶体学信息文件CIF及其获取方法