qileilu 发表于 2010-1-28 23:56

利用dell笔记本的MediaDirect键实现grub2和Chameleon的双引导(win7+Leopard+ubuntu)

本帖最后由 qileilu 于 2010-3-20 21:25 编辑

先解释一下题目:跟很多笔记本一样,dell的XPS系列笔记本除了电源键可以开机以外,还有一个MediaDirect键(MD键)也可开机,按下时启动一个可以直接播放媒体的界面,其实质上就是一个win CE系统。我的dell M1210笔记本上装了win7、Leopard、 ubuntu9.10三系统,经过我的反复折腾终于实现了:按下电源键,进入grub2引导程序进行系统选择;按下MD键,则进入Chameleon(变色龙)引导程序进行系统选择。两套引导程序完全独立,删掉其中一个另一个完全不受影响,二者互为备份均能正常引导硬盘上的三个系统。[纯属好玩和折腾啊,感兴趣者可以继续往下看,不感兴趣的到此可以关闭本页了,呵呵]

一、先说一下这个MediaDirect键,其他的笔记本不知叫什么?也许叫做“媒体键”吧。
戴尔的这个MediaDirect系统,实在是个鸡肋系统,没什么用丢之又舍不得,每次装起来还费老鼻子劲,真是无语!所以还不如挪作他用。
其实,MD键与电源键区别的实质就是按不同的键开机从不同的主分区启动系统。
比如说我的硬盘(sda)
第一主分区(sda1)装win7,
第二主分区(sda2)装Mac,
第三主分区(sda3)是ubuntu的/boot区。
当我以电源键开机进系统察看各分区活动情况是:sda1   不活动;sda2   不活动;sda3   活动。
当我以MD 键开机进系统察看各分区活动情况是:sda1   不活动;sda2   活动;   sda3   不活动。
可见,按不同的键开机自动设置不同的分区为活动状态,从而从不同的主分区启动。
相信玩过dell MDirect的人都知道,dell是通过rmbr.exe这个程序来控制两个按键具体对应启动哪个分区的,具体格式如下:
“rmbr.exe dell 电源键启动分区MD键启动分区”
例如上面我的设置:C:>   rmbr dell 3 2
就是说,按电源键启动第3个分区,按MD键启动第2个分区。

二、三个系统的安装和修复
1。首先按电源键开机(本部分全是按电源键开机),在第一主分区(sda1)安装win7,dell oem 旗舰版。完成后开机能自动进入win7。

2。装ubuntu 9.10 ,其中 / 与 /home 在逻辑分区,/boot 挂在第三主分区(sda3)上。
   这里要注意一点:把不要grub2引导写入硬盘的主引导区(sda),而是写到第三主分区(sda3)上,这样在接下来的系统安装中grub2引导不会被破坏,只要设置第三主分区(sda3)为唯一的活动分区,就能转入GRUB2引导界面。
   完成后开机自动进入grub引导选择启动win7和unbuntu 9.10。

3。光盘安装iATKOS_v7 到第二主分区(sda2),具体安装方法不再累述主要是根据自己的硬件选择定义项,一定记得选中安装Chameleon V2引导程序。
   完成后开机自动进入Chameleon引导选择启动Mac OS X、ubuntu 9.10和win7。

   注意,由于Chameleon装入硬盘的主引导区(sda)和win7的C盘(sda1),导致win7不能正常启动。这里需要对win7引导进行修复。具体做法是,用 win CE盘启动,再用PM等硬盘分区程序,重建硬盘主引导区(mbr),按后设置win7所在第一主分区(sda1)为活动,其他主分区为不活动。重启电脑,插入win7安装盘,选择语言后进入修复控制台,系统会自动发现引导问题,进行自动修复,按几下确定按钮,重启就OK了。修复后重启电脑,自动进入win7。

三、grub2与Chameleon双引导的实现
经过上面的第二部分我装好了win7、Mac OS X 10.5.7 Leopard和ubuntu 9.10三个系统,接下来就是实现三个系统的引导了。
目前的状况是:
仅设sda1活动,则自动进入win7;
仅设sda2活动,则自动进入Chameleon引导;
仅设sda3活动,则自动进入grub2引导。

1。启动电脑进入win7系统,或者也可以用win CE光盘启动系统,运行命令:
C:>   rmbr dell 3 2
即:设置按电源键开机从第3主分区启动;按MD键从第2主分区启动。关机,大功告成。

2。按电源键开启电脑,进入第3主分区Grub2引导:
最初只有原来的未装mac时的两个选项,ubuntu和win7,进入ubuntu,更新grub菜单,
运行命令:sudo update-grub
这时在grub.cfg中,就有三个选项了,注意如果你的mac只能跑单核的话,请自行修改grub.cfg在xnu_kernel /mach_kernel boot-uuid=${uuid} rd=*uuid 后面加上一句 cpus=1。
重启电脑,这时可以看到三个选项,可以分别正常进入三个系统:
第一选项进ubuntu;
第二选项进win7;
第三选项进Mac OS X。(说明:之前装MAC OSX 10.4.8 Tiger时grub2自动生成的启动项怎么都进不去mac,详见我的另一个在Tiger区的帖子:grub2通过tboot引导mac osx成功(grub2自动生成的mac引导项无效)。不知道为什么10.5.7咋就好了,呵呵,意外啊!只是命令行启动模式,看不到漂亮的苹果启动界面哦!不过已经很满意了。/smile.gif)

3。按MD键开启电脑,进入第2主分区Chameleon引导,如下图:
第一个选项进win7;
第二个选项进Mac os x;
第三个选项转入grub2引导---〉进一步引导ubuntu和win7、Mac。


4。反过来我能不能从grub2转入Chameleon引导?这是可以的。
进入unbuntu系统,修改/etc/grub.d/40_custom,在其中加入自定义引导项:

menuentry "Chameleon V2, Multi Boot" {    #增加菜单
insmod hfsplus                                          #hfs+文件支持
set root=(hd0,2)                                       #设置启动分区
search --no-floppy --fs-uuid --set c1d36cb741045e4b         
multiboot /boot                                           #转入Chameleon启动文件
}
然后sudo update-grub,ok。
这样就能从grub2转入Chameleon引导了。最终grub2引导界面如下:
第一选项进ubuntu;
第二选项进win7;
第三选项进Mac OS X;
第四选项转入Chameleon引导---〉进一步引导win7、Mac和转回grub2。


   

wjrzwd 发表于 2010-1-29 00:35

我的是DELL 1520 ,试试看,小房子键没怎么利用过

RealGold 发表于 2010-1-29 06:02

很好,哪天试试.谢谢

qileilu 发表于 2010-1-29 12:31

目前还有一个问题一直困扰着我,Chameleon的引导参数怎么设置啊?比如怎么修改等待时间?怎么删除无用的启动项等等。google找不到了

seaswill 发表于 2010-1-29 22:27

嘿嘿
2年前就看到有人这么做了

ps:
其实ubuntu的Grub2引导已经挺不错的了

haie 发表于 2010-2-16 22:39

是个好办法! 收藏.

liw_goldgov2 发表于 2010-3-13 16:29

不错,dell1420下来试试

whiteleaves 发表于 2010-4-26 22:38

好复杂,不过想试一下

Youken 发表于 2010-5-20 21:33

研究一下 ,谢谢 !

lshempire 发表于 2010-7-13 21:24

SugarX 发表于 2010-8-28 15:47

需要rmbr,顶贴下载,嘿嘿
页: [1]
查看完整版本: 利用dell笔记本的MediaDirect键实现grub2和Chameleon的双引导(win7+Leopard+ubuntu)