当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 10 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 0:15 

注册: 2010-04-23 18:25
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
Macbook实现OS X+Ubuntu 10.04+XP无损安装法
作者:socractes

先交代下背景:07年末08年初小白, 型号标识符Macbook3,1.升级至最新固件和OS X 10.6.2,安装方法参考了官方的help:Intel CPU-based Macintosh Generic Installation,https://help.ubuntu.com/community/MactelSupportTeam/AppleIntelInstallation,所以理论上适合于所有主流苹果电脑,但官方XP三系统安装法有缺陷,经过改进后,本方法可以实现三分区启动,并可以无损还原为单一mac分区,不用重装OS X.

作为一个讲说版,下面将以一个基本流程为例,从中加以说明为什么这么做,方便大家了解每个操作步骤的原因.

1.原生态单一OS X默认分区Macintosh HD,格式 Mac OS 扩展(日志式),也就是Hfs+,BOOTCAMP给XP分区,格式FAT32.

*使用BOOTCAMP分区是为了最后能抹去XP还原为单分区Hfs+.

2.使用磁盘工具,依次点击:整个硬盘->分区栏->Macintosh HD->”+”符号,将Macintosh HD分出一个区来装ubuntu,调整合适大小,命名ubuntu,格式 Mac OS 扩展(日志式),->应用.

*因为OS X不识别ext4,所以只能先格式化为Hfs+.
*硬盘所有分区命令必须在OS X下完成,因为OS X能实现GPT-MBR混合格式的分区表同步,但XP和Ubuntu下的分区命令只改变MBR分区表,这会造成无法引导启动OS X.(这个原理是网上一致口吻,其实我也没试过,反正破坏性实验不干,期待小白)
*经过实践,只要分区表不被破坏,是可以使用XP盘或ubuntu盘格式化成NTFS或ext4的,这点与网上说法不一致.

3.安装rEFIt-0.14,安装时别忘了选择自定义安装,勾上rEFIt File System Drivers,加载Linux格式的识别,完成后打开终端,输入:
代码:
cd /efi/refit
./enable.sh

激活rEFIt,安装完后多了/应用程序/实用工具/Partition Inspector,可用来检查GPT-MBR的一致性.

引用:
以下是我的分区表:
*** Report for internal hard disk ***

Current GPT partition table:
# Start LBA End LBA Type
1 40 409639 EFI System (FAT) #/sda1 EFI固件
2 409640 452805055 Mac OS X HFS+ #/sda2 OS X
3 453067200 535177175 Mac OS X HFS+ #/sad3 将来格式化装ubuntu
4 537282560 625141759 Basic Data #/sda4 装XP

Current MBR partition table:
# A Start LBA End LBA Type
1 1 409639 ee EFI Protective
2 409640 452805055 af Mac OS X HFS+
3 453067200 535177175 af Mac OS X HFS+
4 537282560 625141759 0b FAT32 (CHS)


*注意每个磁盘的结束数和下一磁盘的开始数不同,说明中间有空闲区.

4.确认分区表一致,装入XP安装盘,重启电脑,可看见rEFIt引导画面,选光盘安装,直至完成.

*XP安装过程会启动几次,rEFIt默认OS X启动,每次要手动选择从win分区启动.
*选择安装盘符C:\BOOTCAMP,FAT32,可以格式化成NTFS.
*因为OS X磁盘工具分区的原因,每个分区间会存在空闲空间,大小不一,原因不明.
*我的ubuntu区和XP BOOTCAMP区之间隔了1.1G,千万不要为了节约,就修改本来分好的C:\大小,去加上这些空闲空间,一定切记不能修改分区表,否则引导出错.

5.插入ubuntu 10.04安装盘,重启电脑,光盘安装.

6.安装过程第4步,选”手动指定分区(高级)”,第5步更改”/dev/sda3 Hfs+”;选择用于:ext4日志文件系统;挂载点:/.


*这一步将为ubuntu准备的/sda3格式化成ext4.
*注意系统会提示没有交换空间,忽略它,因为XP是MBR分区模式,只支持四个分区,这里分别给EFI,OS X,Ubuntu和XP,不能在有多余分区,其实普通应用电脑内存已经足够了,不需要装交换空间.

7.第8步,确认信息,注意有个高级按键,点击,将安装引导程序放在:/dev/sda3,也就是ubuntu的安装区,千万别放到硬盘前端/dev/sda,会破坏EFI引导.

8.安装ubuntu.

9.重启即完成整个安装过程.至此,默认启动电脑,进入rEFIt引导,有OS X(sda2),Ubuntu(sda3),XP(sda4)三个选项;如果按住option键,进入BOOTCAMP引导,有rEFIt(sda2),Windows(sda3)两个选项.


*rEFIt引导ubuntu后,会再次进入GNU GRUB Version 1.98-1 ubuntu 5引导模式,这里有所有系统的启动选项,但只可以启动ubuntu和XP,实践证明启动OS X失败,但这不重要.
*option引导进入Windows,实质是引导到sda3,也就是ubuntu.


无需重装还原单一Macintosh HD分区
1)确保之前只在OS X下用磁盘工具分区,否则会提示分区表错误,无法变更;
2)/sda3 ext4在OS X下无法识别,显示为Untitled,格式化成 Mac OS 扩展(日志式);
3)磁盘工具->整个硬盘->分区->Untitled Mac OS 扩展(日志式)->”-”符号,删除这个分区,将Macintosh HD下拉到底,合并所有空闲空间;
4)BOOTCAMP卸载XP,还原单一Macintosh HD.



一些深入探讨:

一.MAC分区引导模式

*OS X默认固件EFI(sda1)引导,固执地单一导到OS X所在的Macintosh HD(sda2),未发现修改办法;
*BOOTCAMP可以实现两个引导选项,原Macintosh HD(sda2)和Windows(sda3),这里的Windows只是一个符号,实际就是非常固执地指向sda3,所以无论sda3装什么都能引导成功,网上多数OS X+Linux双系统法多基于此,反之,多分区下XP可能不在sda3,早期人们分区导致XP启动出错,多缘于此;
*APPLE固执地以为用户只需要单OS X或者OS X+XP,所以APPLE官方程序固执地没加入任何三个以上引导功能,就好像他们只在safari里装google以为用户都不用bing或yahoo;
*良好实现三系统引导的程序是rEFIt,其实rEFIt并不会破坏原来EFI固件区(sda1),它是装在sda2的,默认EFI启动sda2后,rEFIt激活,可选择导向sda2,sda3,sda4等等,所以rEFIt是理想的macbook引导程序,这种理想是针对APPLE设计的固执而言的.


二.已经BOOTCAMP安装XP后再装ubuntu的可行性

ubuntu官方help里,先BOOTCAMP安装XP后,Macintosh HD分出空间装ubuntu,那么option键下Windows干脆启动ubuntu,rEFIt下XP启动蓝屏死机;
*这是XP根目录下boot.ini造成的,第一次安装XP后boot.ini默认设置 partition(3)(也就是sda3)启动,分区装ubuntu后,变成ubuntu(sda3),XP(sda4),但boot.ini不变,当然XP启动会死机啦.

解决方案:
启动ubuntu 10.04,访问XP分区,这就是新版ubuntu的优势,可以读写NTFS.
打开boot.ini,将启动磁盘改为XP所在的号码,如EFI(sda1),OS X(sda2),Ubuntu(sda3),XP(sda4)的话,则设置成partition(4),如例:

引用:
原来boot.ini:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(3)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect

修改后boot.ini
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(4)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect


重启正常.

三.不使用rEFIt的可行性
其实也是可以的.
安装步骤同上,EFI(sda1),OS X(sda2),Ubuntu(sda3),XP(sda4),但不装rEFIt,按option键可选sda2(Macintosh HD)和sda3(Windows),进入sda3实质是ubuntu,安装ubuntu时已将ubuntu的引导方式GNU GRUB Version 1.98-1 ubuntu 5装在sda3,它支持ubuntu和XP启动.
所以option->Windows,可选择ubuntu或XP.

四.几个要点
*XP只支持MBP,只能最多有四个主分区,mac里EFI和 Macintosh HD就占了俩;
*保证GPT-MBR混合格式的一致性,只能用OS X自带的分区工具;
*格式化不会破坏分区表;
*BOOTCAMP其实就是起分区和引导作用,导向sda2和sda3;
*rEFIt不会破坏原有固件(不想破坏mac原生性是很多人不敢装多系统的原因);
*只要GPT-MBR分区表一致,都可以使用磁盘工具还原成单一 Macintosh HD,无需重装OS X.

五.未知问题
是不是引导程序安装在哪个区,就只能引导后面的磁盘?
*因为 EFI(sda1),OS X(sda2),Ubuntu(sda3),XP(sda4),sda3装了GNU GRUB,可以识别到ubuntu,OS X 32,OS X 64,XP,但只能成功启动ubuntu(sda3)和XP(sda4),启动不了OS X(sda2).
请问这是GNU GRUB本身不支持OS X还是引导程序不支持前面的盘符(sda1,sda2)?

后话:其实EFI引导没那么复杂,上述方法经过我一个周期的测试,从安装到还原再安装成功, 希望能对macbook使用者们有点帮助,也希望能有其他人帮忙完善. :em11


:em06 PS:其实我是小白,潜水www.ubuntu.org.cn超过两年,要不是进某个论坛区下载资料,可能到今天还没注册,够无聊吧.向往很久但以前没胆量装linux,最近特意换硬盘备足功课借10.04发布之际第一次分区装ubuntu,以前只用虚拟机体验了几下,虚拟机开机不超过5次. 试装成功,小有兴奋,特意留字,如有错误请大家指教.


页首
 用户资料  
 
2 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 0:26 
头像

注册: 2008-12-13 19:39
帖子: 13284
地址: 物华天宝人杰地灵
送出感谢: 1
接收感谢: 6
没有苹果机的路过支持下。。。楼主辛苦了。。。打这么多的字,可真不容易啊。 :em06


_________________
行到水穷处,坐看云起时。
海内生明月,天涯共此夕。
--------------------吾本独!


页首
 用户资料  
 
3 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 1:26 

注册: 2010-04-23 18:25
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
wangdu2002 写道:
没有苹果机的路过支持下。。。楼主辛苦了。。。打这么多的字,可真不容易啊。 :em06

:em11 謝楼上鼓励,太兴奋啦,一不小心打了这么多字.
话说ubuntu对老电脑的支持特别好,我的笔记本竟连快截键都无缝支持,都没更新,光CD安装,就发现OS X下调声音和屛幕的键(F1,F2,F11之流),竞可通用,无敌啦! :em04


页首
 用户资料  
 
4 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 1:38 

注册: 2008-10-28 20:18
帖子: 3249
送出感谢: 0 次
接收感谢: 0 次
Linux或者说UBUNTU是支持直接安装在Hfs+分区上的,因此安装UBUNTU时完全没必要格式化为EXT4分区了


页首
 用户资料  
 
5 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 1:45 

注册: 2008-10-28 20:18
帖子: 3249
送出感谢: 0 次
接收感谢: 0 次
socractes 写道:
1.原生态单一OS X默认分区Macintosh HD,格式 Mac OS 扩展(日志式),也就是Hfs+,BOOTCAMP给XP分区,格式FAT32.

*使用BOOTCAMP分区是为了最后能抹去XP还原为单分区Hfs+.


另外使用BOOTCAMP给XP分区后,如果安装XP时将XP的分区格式化为NTFS分区后,将来想移除XP能做还原为单分区Hfs+吗?


最后由 ryoohki 编辑于 2010-05-10 1:57,总共编辑了 3 次

页首
 用户资料  
 
6 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 1:52 

注册: 2008-10-28 20:18
帖子: 3249
送出感谢: 0 次
接收感谢: 0 次
socractes 写道:
五.未知问题
是不是引导程序安装在哪个区,就只能引导后面的磁盘?
*因为 EFI(sda1),OS X(sda2),Ubuntu(sda3),XP(sda4),sda3装了GNU GRUB,可以识别到ubuntu,OS X 32,OS X 64,XP,但只能成功启动ubuntu(sda3)和XP(sda4),启动不了OS X(sda2).
请问这是GNU GRUB本身不支持OS X还是引导程序不支持前面的盘符(sda1,sda2)?

话说装好UBUNTU后的GRUB版本是多少?
貌似只有GRUB2才支持引导MacOS的EFI
GRUB的版本如果是1.XX 就是GRUB2
GRUB的版本如果是0.XX 就是GRUB
另外目前GRUB2好像不支持只将引装入某一个分区,只能将引导装如主引导中


页首
 用户资料  
 
7 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 23:48 

注册: 2010-04-23 18:25
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
ryoohki 写道:
Linux或者说UBUNTU是支持直接安装在Hfs+分区上的,因此安装UBUNTU时完全没必要格式化为EXT4分区了

是吗?这是个好消息.不过ubuntu下访问Hfs+好像有访问权限,不知是不是支持还不是很完美.


最后由 socractes 编辑于 2010-05-11 12:46,总共编辑了 1 次

页首
 用户资料  
 
8 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-10 23:53 

注册: 2010-04-23 18:25
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
ryoohki 写道:
socractes 写道:
1.原生态单一OS X默认分区Macintosh HD,格式 Mac OS 扩展(日志式),也就是Hfs+,BOOTCAMP给XP分区,格式FAT32.

*使用BOOTCAMP分区是为了最后能抹去XP还原为单分区Hfs+.


另外使用BOOTCAMP给XP分区后,如果安装XP时将XP的分区格式化为NTFS分区后,将来想移除XP能做还原为单分区Hfs+吗?

:em11 这个是完全可以的,因为XP在大于32G以上硬盘安装只能NTFS,经过我实践可以还原单分区.
只要是在OS X环境下的分区,无论怎么分,BOOTCAMP还是磁盘工具或者一起用,最终都可以还原的,与格式无关.


页首
 用户资料  
 
9 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-11 0:07 

注册: 2010-04-23 18:25
帖子: 10
送出感谢: 0 次
接收感谢: 0 次
ryoohki 写道:
socractes 写道:
五.未知问题
是不是引导程序安装在哪个区,就只能引导后面的磁盘?
*因为 EFI(sda1),OS X(sda2),Ubuntu(sda3),XP(sda4),sda3装了GNU GRUB,可以识别到ubuntu,OS X 32,OS X 64,XP,但只能成功启动ubuntu(sda3)和XP(sda4),启动不了OS X(sda2).
请问这是GNU GRUB本身不支持OS X还是引导程序不支持前面的盘符(sda1,sda2)?

话说装好UBUNTU后的GRUB版本是多少?
貌似只有GRUB2才支持引导MacOS的EFI
GRUB的版本如果是1.XX 就是GRUB2
GRUB的版本如果是0.XX 就是GRUB
另外目前GRUB2好像不支持只将引装入某一个分区,只能将引导装如主引导中

ubuntu 10.04是GRUB1.98,也就是GRUB2了,确实能自动识别OS X,不过启动不了(装在sda3).
装在sda3是help.ubuntu.com教的,目的在于不破坏EFI.https://help.ubuntu.com/community/MactelSupportTeam/AppleIntelInstallation
引用:
12.Insert Linux CD and reboot holding C
13.On Linux installation, delete the partition you created (Linux) because its HFS, and set it as ext3 and mount /. Don't create swap (I know its going to warn you, but ignore it).
14.At the last step of setup, click advanced because you need to change where GRUB is going to be installed, choose sdaX (which X is your Linux partition).
15. Let it install Ubuntu.

不过你说的
引用:
另外目前GRUB2好像不支持只将引装入某一个分区,只能将引导装如主引导中

可能从侧面说明了,GRUB2只能引导它所在盘符的后续分区,前面的引导不了.
MACBOOK下我所推测是:
sda1, sda2------------------,sda3---------------------sda4------
[EFI][OSX=============][=====(UBU)===][=====][XP========]
第一引导必须是EFI发起的,它引导启动了sda2的rEFIt,rEFIt可以引导启动sda3的GRUB2,GRUB2启动ubuntu.


页首
 用户资料  
 
10 楼 
 文章标题 : Re: Macbook实现OS X+Ubuntu 10.04+XP无损安装法
帖子发表于 : 2010-05-18 20:49 

注册: 2010-01-17 20:13
帖子: 2
送出感谢: 0 次
接收感谢: 0 次
有几个问题想说明一下,分出swap是完全可行的,而且如果是安装Ubuntu的话,最好再分出一个不到1M的分区,这个分区在Ubuntu安装的时候可以选择用来存放模拟的Bios固件,感觉上启动速度会快一点。
Bootcamp可以完全忽略,分区的要点同楼主说的要用Snow Leopard的磁盘工具,或者是在命令行里用Diskutili。想分几个区都可以,但是如果分区数大于等于4,则Xp只能安装在第四个分区,且前面不能有fat32,ntfs的分区。我是在sda3上的ext4,sda5上swap,然后是bios_reserved.
先安装win,后安装ubuntu,grub2安装在sda上是可以的,这样可以忽略reEFI。装好Ubuntu后,默认Grub2引导,选择进入win,在bootcamp里面选择在Mac OS X系统重启,即可恢复Snow Leopard的默认引导。
Grub2引导Snow Leopard会死在Still waiting for root device,貌似有高手修改grub.cfg改了偏移量之后引导成功了,具体不知道怎么修改的


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 10 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译