发新话题
打印

让linux和Rescue and Recovery共存

本主题由 ThinkpadT60 于 2008-3-21 14:03 加入精华

让linux和Rescue and Recovery共存

刚刚装完gentoo,之前在这里问大家怎么样装了linux而不破坏thinkpad的Rescue and Recovery,现在我装好了,把方法贴出来,也许有人用得上。

介绍一下预备知识:
Rescue and Recovery是一个挽救恢复系统,是thinkpad特有的,这个特性基于Windows。在开机时,按笔记本上的蓝色"ThinkVantage"按键,打断windows的正常启动,就进入到挽救恢复系统中。

Master Boot Record(MBR)中文叫作“主引导记录”,在硬盘的第一个物理扇区中。也有人把MBR叫作“主引导扇区”,但是我认为这种说法并不准确,MBR是主引导扇区的前面446个字节,接下来64个字节是硬盘的分区信息,最后还有两个字节是分区的结束标志。这整个512字节才是主引导扇区。电脑开机,首先是进到BIOS中,BIOS跑完后跳转到MBR。MBR不属于任何一个操作系统,它先于所有的操作系统而被调入内存,然后才根据用户选择将控制权交给操作系统。

Grub是常用的多系统引导程序之一(另一个是lilo,听说过没见过)。通常的使用方法是让grub重写MBR,这样就可以在开机时进入系统选择菜单。

现在的问题是,LILO或者GRUB改写MBR以后,无法捕获“ThinkVantage”按键,也就无法进入Rescue & Recovery。那么怎么解决这个问题呢?

思路是这样的:不让grub改写MBR,而把grub塞到windows的bootloader中。

再说明一下,我的本本是X60,linux的boot分区是/dev/sda8,windows的系统盘是C盘。不同的情况可能需要作一些变动。

方法是这样的:
1、不要让grub写到MBR中,而让它与入其他分区,比如boot分区
# grub-install --no-floppy /dev/sda8
2、把这个分区的前面512个字节dump出来
# dd if=/dev/sda8 of=gentoo_grub.bin bs=512 count=1
3、把生成的gentoo_grub.bin通过随便什么手段弄到C盘根目录下
4、更改C盘根目录下的boot.ini
我的更改完了是这样的:
[boot loader]
timeout=30
default=c:\gentoo_grub.bin
[operating systems]
c:\gentoo_grub.bin="Gentoo Grub Bootloader"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

好啦!现在可以重启电脑了。你会发现Rescue and Recovery是可以用的,而不按ThinkVantage的话会出现一个选择菜单,进入gentoo或者windows。如果选择gentoo,则进入到grub中,grub里的信息,因你的/boot/grub/grub.conf而异,如果没有把grub菜单的停留时间设为0,那么你还会看到另一个菜单,在这个菜单里,你甚至可以回到前面一个菜单,这个要看grub设置,超出本文的范围了,不讲啦!

本文原创,但参考了网络的很多信息,特别是thinkwiki的资料。写下来的动力是:我没有找到中文的相关文章,希望对大家有所帮助。
本帖最近评分记录

TOP

啊,这么牛B哄哄的哇,我喜欢,你也相当的喜欢哇
陈冠希是男人们滴偶像!

TOP

困~~昨天写完太晚了,今天一早又跑来上班……

之前在论坛看到有人用ubuntu的,不晓得R&R是怎么弄的

TOP

第一次被加分

多谢ThinkpadT60

TOP

lz牛人呀
爱,
直至成伤;
之后,
就是永远~

TOP

能把gentoo装到小黑上,真牛!
我本想装debian的,还是没敢下手~

TOP

发新话题