1. 初衷是“先安装win系统,再安装debian,安装结束时不在 本地硬盘上写boot
loader数据。使用win时开机自动进入(MBR仍然属于win的),使用linux时,可以用usb
drive引导本地的debian分区,启动后可以拔掉usb盘”,类似于一个启动key的东东。

2. 本地硬盘的编号是/dev/sda,win在sda1,debian在sda3;usb
drive插入后的编号是/dev/sdb,sysrescue系统安装在sdb3

3. 刚开始debian entry是这样写的
menuentry "local linux on sda3" {
    set root = (hd0,3)
    linux /vmlinuz
    initrd /initrd.img
}

3. 参考这个链接,甄别出了usb drive 和 本地drive 的 hd编号,
http://ubuntuguide.org/wiki/Ubuntu:Feisty#How_to_identify_the_name_of_the_boot_drive_.28hd0.2C_hd1.2C_hd2.2C_etc.29,我的本地drive是hd1,usb
drive是hd0,这样我的debian就是安装在了(hd1,3)上

5.
是我粗心,感谢ChenXing,因为没有写root=/dev/sdb1,sysrescueCD的entry能成功进入,debian的entry是后来照着写的,没有注意到。加入root配置后的entry是这样的
menuentry "local linux on sda3" {
    set root = (hd1,3)
    linux /vmlinuz root=/dev/sda3
    initrd /initrd.img
}

6. 顺利启动进入本地linux,然后可以拔掉usb drive

多谢各位。


参考链接:
i. https://help.ubuntu.com/community/Grub2
ii. http://www.dedoimedo.com/computers/grub.html
iii. http://ubuntuguide.org/wiki/Ubuntu:Feisty


===
但使用kvm启动本地sda1上的win系统还未成功。再摸索看看吧。
1. 第一次kvm启动时进去win系统了,都说kvm是很快的系统,但我的很龟速,很卡。(host是T410,4g mem,icore5/4cpu)
2. 强制shutdown一次后,就不行了,老提示hal.dll缺少或者损坏。还没找到方法解决。



2011/3/5 CHEN Xing <cxcxc...@gmail.com>

> 光linux /vmlinuz不行的,还要把root等信息告诉内核,比如
> linux /vmlinuz root=/dev/sda3
> 可以参照Debian里grub配置文件书写,就能进了。
>
> 或者你进到Rescue CD里,把grub2写在MBR,也就可以了。
>
> CHEN, Xing / 陈醒
>
>
>
> 在 2011年3月4日 上午10:21,David Lee <leelei...@gmail.com> 写道:
> > 1. 先在 /dev/sda1 安装了win xp
> > 2. 然后在 /dev/sda3 上安装了debian6,但没有安装boot loader
> > 3. 下载了system rescue CD,烧制到了usb drive中,可以正常进入rescure cd系统中
> > 问题:如何使用system rescue 的usb启动功能,进入本地硬盘中的debian6呢?
> > 我尝试在grub.cfg中设置一个启动项目,如下,
> > menuentry "local linux on sda3" {
> >     set root=(hd1,3)
> >     linux /vmlinuz
> >     initrd /initrd.img
> > }
> > 但启动失败了,加载了initrd就不再继续了。
> >
> > --
> > Regards, David
> >
>



-- 
Regards, David

回复