我确信分区和uuid是没有错的,因为是从ubuntu里grub.cfg copy的smallapple 写了:先有 ls -l 看看能否查到 (hd0,5)或(hd1,5)分区,核对uuid是否正确。
编译core.img时把search模块加上去,search .....的命令才有用。
编译core.img时没有加入search,但是xp分区中的grub.cfg中有insmod search 语句,我会试一下
但是自己比较怀疑是不是不在同一硬盘的原因
我确信分区和uuid是没有错的,因为是从ubuntu里grub.cfg copy的smallapple 写了:先有 ls -l 看看能否查到 (hd0,5)或(hd1,5)分区,核对uuid是否正确。
编译core.img时把search模块加上去,search .....的命令才有用。
代码: 全选
menuentry "Ubuntu, Linux 2.6.31-14-generic (hd1,5)" {
set root=(hd1,5)
#search --no-floppy --fs-uuid --set c635d936-e551-417b-96ee-382fae8ce517
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=c635d936-e551-417b-96ee-382fae8ce517 ro splash quiet splash
initrd /boot/initrd.img-2.6.31-14-generic
}
menuentry "Ubuntu, Linux 2.6.31-14-generic (hd0,5)" {
set root=(hd0,5)
#search --no-floppy --fs-uuid --set c635d936-e551-417b-96ee-382fae8ce517
linux /boot/vmlinuz-2.6.31-14-generic root=UUID=c635d936-e551-417b-96ee-382fae8ce517 ro splash quiet splash
initrd /boot/initrd.img-2.6.31-14-generic
}
代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
大体是cannot find device ... 后面接上面的uuidptptptptptpt 写了:jisare, 把下面的内容加入 grub.cfg 试试。如果还不行,在grub2命令行运行代码: 全选
menuentry "Ubuntu, Linux 2.6.31-14-generic (hd1,5)" { set root=(hd1,5) #search --no-floppy --fs-uuid --set c635d936-e551-417b-96ee-382fae8ce517 linux /boot/vmlinuz-2.6.31-14-generic root=UUID=c635d936-e551-417b-96ee-382fae8ce517 ro splash quiet splash initrd /boot/initrd.img-2.6.31-14-generic } menuentry "Ubuntu, Linux 2.6.31-14-generic (hd0,5)" { set root=(hd0,5) #search --no-floppy --fs-uuid --set c635d936-e551-417b-96ee-382fae8ce517 linux /boot/vmlinuz-2.6.31-14-generic root=UUID=c635d936-e551-417b-96ee-382fae8ce517 ro splash quiet splash initrd /boot/initrd.img-2.6.31-14-generic }
看看返回什么结果代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
对了,你的 ubuntu 分区用的什么文件系统??
jisare 写了: 大体是cannot find device ... 后面接上面的uuid
代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
cannot find device ... 后面接文件名ptptptptptpt 写了:jisare 写了: 大体是cannot find device ... 后面接上面的uuid结果如何?代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
你确定你的内核文件是 vmlinuz-2.6.31-14-generic ?jisare 写了:cannot find device ... 后面接文件名ptptptptptpt 写了:jisare 写了: 大体是cannot find device ... 后面接上面的uuid结果如何?代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
xp分区在sata硬盘第一主分区,ubuntu在ide硬盘第一逻辑分区,ide硬盘上所有分区只有ubuntu分区被格式化bean 写了:我怀疑是search的bug,你用"ls -l"命令,把分区结构给列一下,我试试能不能重现一下。
文件名不会有错的,都是从ubuntu里的grub.cfg里拷贝的ptptptptptpt 写了:你确定你的内核文件是 vmlinuz-2.6.31-14-generic ?jisare 写了:cannot find device ... 后面接文件名ptptptptptpt 写了:jisare 写了: 大体是cannot find device ... 后面接上面的uuid结果如何?代码: 全选
search --set -f /boot/vmlinuz-2.6.31-14-generic
我这里怎么是 2.6.31-15 的呢?而且根本没有 2.6.31-14 的。莫非我删了?不记得了
呵呵,其实我是指grub命令行里面的ls -l,这可以看grub检测到什么分区。jisare 写了:xp分区在sata硬盘第一主分区,ubuntu在ide硬盘第一逻辑分区,ide硬盘上所有分区只有ubuntu分区被格式化bean 写了:我怀疑是search的bug,你用"ls -l"命令,把分区结构给列一下,我试试能不能重现一下。
不好意思,下午有事出去了bean 写了:呵呵,其实我是指grub命令行里面的ls -l,这可以看grub检测到什么分区。jisare 写了:xp分区在sata硬盘第一主分区,ubuntu在ide硬盘第一逻辑分区,ide硬盘上所有分区只有ubuntu分区被格式化bean 写了:我怀疑是search的bug,你用"ls -l"命令,把分区结构给列一下,我试试能不能重现一下。
代码: 全选
multiboot /ntldr
哈哈,我也曾遇到类似的情形,是用了 drivemap 之后。我怀疑新发现,很有趣
如果我用grub4dos(mbr)>ntldr>g2ldr.mbr
ls -l 的结果中我发现,虽然hd0,hd1都有显示,但是根据显示的分区,两块硬盘显示出来的分区都是一样的,都是hd0的
代码: 全选
grub4dos(mbr)>ntldr
multiboot 是一种启动规范。恐怕 ntldr 不符合这种规范,因此不能引导。jisare 写了: 不相关的,grub2的multiboot具体什么意义?可以用来引导ntldr吗?代码: 全选
multiboot /ntldr
一语点醒梦中人啊ptptptptptpt 写了:哈哈,我也曾遇到类似的情形,是用了 drivemap 之后。我怀疑新发现,很有趣
如果我用grub4dos(mbr)>ntldr>g2ldr.mbr
ls -l 的结果中我发现,虽然hd0,hd1都有显示,但是根据显示的分区,两块硬盘显示出来的分区都是一样的,都是hd0的这一步用到了 map代码: 全选
grub4dos(mbr)>ntldr
PS. 刚出去了两天