两层grub为什么会相互循环下去?

来源:百度知道 编辑:UC知道 时间:2024/09/23 18:32:28
以前用光盘安装过Ubuntu 再用硬盘安装一次,于是在winxp下装了个grub。成功后就没再继续硬盘安装,于是退出。后来两个grub相互循环了(第一层选winxp,第二层选grub)
这是为什么呢

你用ubuntu光盘装过,那么grub写到了mbr,再次硬盘安装ubuntu的话mbr再次重写,那么应该是一个grub才对啊。
第一层应该是可以选winxp和ubuntu,第二层应该是可以选winxp和grub。

开机先引导mbr里的grub,选了winxp后,然后再读取C盘上的grldr文件引导grub。

我的疑惑:你的表达的意思我没看明白,grub是真的循环了吗,两个grub菜单是一样的吗?是一样的话说明是循环,不一样的话那说明我以上说的没有错。

如果不是循环,你可以把boot.ini最下面的引导grldr的语句去掉,那么就不会循环了。

期待你的回音。

=======================================
既然两个menu菜单是一样的,那么是不是选winxp的时候的代码是搜索menu的呢?
========================================
我想是不是第一层是mbr里的grub引导,当你选winxp的时候启动了nt引导,第二层时候你选择grub,这时候是通过NT调用grldr,grldr会搜索menu,可能搜索的时候没有搜索c盘的的menu,而是搜索了扇区menu,所以menu变的一样了.

要检验我的猜测的话可以用一下办法:
第一层的时候:在winxp那行按e,查看代码是不是
title 启动第一主分区(hd0,0)上的操作系统
rootnoverify (hd0,0)
makeactive
chainloader +1
是的话说明是nt引导.
然后代码改为:
find (hd0,0)/boot/grub/menu.lst
这样可以找到你硬盘安装的菜单.
期待你的验证.