求助XP,Ubuntu 8.04,WIN7三系统启动问题

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
回复
fangyd
帖子: 88
注册时间: 2009-04-30 13:03

求助XP,Ubuntu 8.04,WIN7三系统启动问题

#1

帖子 fangyd » 2009-08-04 0:47

先说明一下情况,我用的 THINKPAD 的 T400,光驱位换上了硬盘
自带的硬盘作为sda,光驱位的硬盘作为sdb

XP 是第一个安装的,装在sda的第一个分区,也就是sda1(hd0,0)。
UBUNTU是第二个安装的,/装在sda8(hd0,7),/boot装在sda6(hd0,5),sda7是交换分区
UBUNTU装完后GRUB启动菜单正常,可以启动UBUNTU和XP。
以上两个系统用了几个月后,前两天装了 Windows 7,安装在 sdb1(hd1,0)。
装完后就只剩 WIN7 的启动菜单了(可以启动 xp 和 win7),UBUNTU不能启动了。

网上查了下,用 LiveCD 恢复了 grub,具体步骤:
sudo grub
root (hd0,5)
setup (hd0)

这样就恢复了 grub ,这时候恢复到没装 WIN7 前的状态。
但是在XP菜单按下后还会出现WIN7的启动菜单,可以启动XP和WIN7。

我想实现 GRUB 中就能够直接启动三个系统,而不是再跳一级菜单。
我进到UBUNTU下把XP分区根目录下的bootmgr和boot目录移除后在GRUB的XP菜单项可以直接进XP了。
然后我再到/boot/grub下编辑menu.lst,在原有的内容后添加了如下内容:
title Microsoft Windows 7 Ultimate
root (hd1,0)
savedefault
makeactive
chainloader +1

并将原XP分区下的 bootmgr 和 boot 目录复制到 Win7 根目录下

修改之后的关于除UBUNTU之外的启动菜单如下:
### END DEBIAN AUTOMAGIC KERNELS LIST

# This is a divider, added to separate the menu items below from the Debian
# ones.
#title Other operating systems:
#root

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
title Microsoft Windows XP Professional
root (hd0,0)
savedefault
makeactive
chainloader +1

title Microsoft Windows 7 Ultimate
root (hd1,0)
savedefault
makeactive
chainloader +1

但是在 GRUB 启动菜单中选择这项的时候显示 a disk read error occurred。

对了,再上一下 WIN7 所在分区根目录下的内容,看看是不是少了什么文件啊?
Win7.png
aidong
帖子: 297
注册时间: 2009-04-26 11:03

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#2

帖子 aidong » 2009-08-04 8:50

:em01
fangyd
帖子: 88
注册时间: 2009-04-30 13:03

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#3

帖子 fangyd » 2009-08-04 13:37

没人回答呀?
头像
linwhwylb
帖子: 78
注册时间: 2009-07-14 10:26

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#4

帖子 linwhwylb » 2009-08-04 22:52

应该是win 7 的启动方式和win XP 的启动方式不一样。具体怎么不一样我也不太记得了,你自己查一下。
Ubuntu philosophy:that software should be available free of charge, that software tools should be usable by people in their local language, and that people should have the freedom to customize and alter their software in whatever way they need.
fangyd
帖子: 88
注册时间: 2009-04-30 13:03

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#5

帖子 fangyd » 2009-08-05 9:37

WIN7的启动方式和XP不一样我知道的,它是靠bootmgr启动的吧。

我在装完 Win7 后发现XP分区的根目录下多了bootmgr文件和boot目录,
在GRUB的启动菜单中选择启动XP就会出现WIN7的启动菜单,可以选择启动XP或WIN7,
如果我把bootmgr和boot目录从XP分区里移除的话就直接启动XP了。

然后我再把bootmgr和boot目录放到win7分区根目录下,然后用上面menu.lst中的内容启动WIN7就提示a disk read error occurred。
如果我把bootmgr和boot目录从win7分区根目录里移除,再启动WIN7就会提示缺少ntldr了,然后我把这些文件都复制到win7目录下,
但boot.ini中的内容不知道该怎么写。
fangyd
帖子: 88
注册时间: 2009-04-30 13:03

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#6

帖子 fangyd » 2009-08-05 22:03

晕啊,这么多天了还解决不了啊?
头像
jss87324
帖子: 24
注册时间: 2009-05-31 11:21

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#7

帖子 jss87324 » 2009-08-06 12:26

不知道!
头像
xiajiebuhui
帖子: 193
注册时间: 2008-07-17 13:24
联系:

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#8

帖子 xiajiebuhui » 2009-08-10 19:00

我也装了win7没什么问题,win7的引导可以不管,让grub自己读分区信息就行。参考:
viewtopic.php?f=139&t=219900

代码: 全选

如鱼饮水 冷暖自知
头像
julykitt
帖子: 397
注册时间: 2008-10-14 12:46

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#9

帖子 julykitt » 2009-08-10 19:56

并将原XP分区下的 bootmgr 和 boot 目录复制到 Win7 根目录下
为什么呢?既然只用ubuntu的grub还这么干干嘛?
微软做的是商品—能卖出就行
苹果做的是艺术品—卖的就是艺术
Linux是手工制品—自己用着爽就行
头像
xiajiebuhui
帖子: 193
注册时间: 2008-07-17 13:24
联系:

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#10

帖子 xiajiebuhui » 2009-08-10 21:14

julykitt 写了:
并将原XP分区下的 bootmgr 和 boot 目录复制到 Win7 根目录下
为什么呢?既然只用ubuntu的grub还这么干干嘛?
感觉也是,只要在grub里面添加启动项就可以了,反正两个windows系统都是安装的。直接让grub读取引导即可。
再添加菜单项(在menu.lst)中,注意grub的计数是从零开始即可。就是说假如第一快硬盘第一个分区是hd(0,0)

代码: 全选

如鱼饮水 冷暖自知
luyanaa
帖子: 31
注册时间: 2009-08-14 19:40

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#11

帖子 luyanaa » 2009-08-17 20:15

xiajiebuhui 写了:
julykitt 写了:
并将原XP分区下的 bootmgr 和 boot 目录复制到 Win7 根目录下
为什么呢?既然只用ubuntu的grub还这么干干嘛?
感觉也是,只要在grub里面添加启动项就可以了,反正两个windows系统都是安装的。直接让grub读取引导即可。
再添加菜单项(在menu.lst)中,注意grub的计数是从零开始即可。就是说假如第一快硬盘第一个分区是hd(0,0)
为啥这样做!因为xp的引导和Win7的引导有冲突.win7又和ubuntu有冲突.先解决引导问题,再恢复
头像
xiajiebuhui
帖子: 193
注册时间: 2008-07-17 13:24
联系:

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#12

帖子 xiajiebuhui » 2009-08-17 21:41

luyanaa 写了:
xiajiebuhui 写了:
julykitt 写了:
并将原XP分区下的 bootmgr 和 boot 目录复制到 Win7 根目录下
为什么呢?既然只用ubuntu的grub还这么干干嘛?
感觉也是,只要在grub里面添加启动项就可以了,反正两个windows系统都是安装的。直接让grub读取引导即可。
再添加菜单项(在menu.lst)中,注意grub的计数是从零开始即可。就是说假如第一快硬盘第一个分区是hd(0,0)
为啥这样做!因为xp的引导和Win7的引导有冲突.win7又和ubuntu有冲突.先解决引导问题,再恢复
试过了吗?windows的冲突自己想办法解决就是,我只知道如果ubuntu的grub引导在mbr的话(不知道怎么表达,反正安装的时候默认的来着),只要能够引导到ubuntu,修改menu.lst就可以引导windows系统,win7和xp下我都做了测试。
这一段都是可以的。
我只能保证一个xp和ubuntu,或者一个win7和ubuntu是可行的。
我想,windows的两个系统都在不同分区吧。编辑menu菜单试试吧,开启grub菜单的时候过不去,可以现场编辑,尝试以下。

代码: 全选

title		Windows--xp
root        	(hd0,2)
chainloader	+1

代码: 全选

如鱼饮水 冷暖自知
riant
帖子: 16
注册时间: 2009-08-18 11:28

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#13

帖子 riant » 2009-08-18 19:35

我也是一样的问题,很是郁闷,只能先进入 XP, 然后再选择进入 windows 7 还是windows XP,甚至还有我没有来得及清理的之前安装ubuntu留下来的安装选项。

不知道重装XP会出现什么情况。

另外,我XP在C盘,win7在E盘,Ubuntu在原来的G盘,恩,我分了蛮多盘的。:) E盘是不是 hd(2,0)阿,回车启动之后,显示Selected disk does not exist
头像
xiajiebuhui
帖子: 193
注册时间: 2008-07-17 13:24
联系:

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#14

帖子 xiajiebuhui » 2009-08-19 7:32

riant 写了:我也是一样的问题,很是郁闷,只能先进入 XP, 然后再选择进入 windows 7 还是windows XP,甚至还有我没有来得及清理的之前安装ubuntu留下来的安装选项。

不知道重装XP会出现什么情况。

另外,我XP在C盘,win7在E盘,Ubuntu在原来的G盘,恩,我分了蛮多盘的。:) E盘是不是 hd(2,0)阿,回车启动之后,显示Selected disk does not exist
先找个帖子学习一下menu.lst菜单的编辑吧,单硬盘,一定是hd(0,*)的,只是用cdef来代表分区容易漏掉linux分区,假如d,e之间还有linux分区的话,windows是不会认识的。
简单无命令的确认,挂载所有的本地硬盘分区。打开系统监视器,见下图,明白了吧。‘
screenshot51.png
sda代表第一快硬盘,如果你是单硬盘的话,记下后面的数字,数字减一就是,比如我有个sda3主分区,装了xp。在menu.lst写上的应当是(hd0,2).
另外你的xp和win7都在主分区吧,记得至少win7是不让在逻辑分区安装的。主分区按照我上面说的无虞。因为我自己尝试过,只是没有试过三系统。
hd(2,0)代表的是第三块硬盘的第一分区,我想你不是三块硬盘吧。 多尝试几次,grub还是很强大的。
:em11

代码: 全选

如鱼饮水 冷暖自知
riant
帖子: 16
注册时间: 2009-08-18 11:28

Re: 求助XP,Ubuntu 8.04,WIN7三系统启动问题

#15

帖子 riant » 2009-08-20 20:55

很久很久以前看的linux资料,各位看看能不能搞定,我还没有测试过。

pdf文档上的,所以只能截图 :) 各位凑合着看把。

第一次发图, 不知道这个默认顺序,所以,大家从最后一张图片看着来。
附件
Screenshot-3.png
Screenshot-3.png (12.75 KiB) 查看 3153 次
Screenshot-2.png
Screenshot-2.png (19.45 KiB) 查看 3153 次
Screenshot-1.png
Screenshot.png
回复