重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
Illumi
帖子: 39
注册时间: 2008-11-13 23:48
送出感谢: 0
接收感谢: 0

重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#1

帖子 Illumi » 2008-12-31 22:53

经过不懈的努力与查论坛资料,找出了可行的一套方案
需要注意的是,与重装XP不一样,因为Longhorn系列的系统引进了bcd启动的bootmgr机制,
和过去XP与之前时代的boot.ini是完全不同的,所以相对于Vista和最新的Windows 7系统来说,boot.ini不行

废话少说下面就是方案
---------------------------------------------
如果你有LiveCD,那么就会很容易解决
随光盘启动,在终端下输入

代码: 全选

sudo su
密码确认再输入

代码: 全选

grub
随后在grub>提示符下输入

代码: 全选

root (hdx,y)
setup (hdx)
请注意,这里的x是指硬盘号,y表示分区号
通常情况下,我们只使用一个硬盘,因此x为0
分区号,我们假设你的ubuntu在第n个分区,那么y=n-1
我的ubuntu在分区5上,因此我需要输入

代码: 全选

root (hd0,4)
setup (hd0)
关于到底是第几个分区的问题,如果你不清楚,那么可以挨个地试,1,2,3,4,5...



如果你没有LiveCD,那么需要做更多的工作
1.下载grub4dos,下载地址:http://sourceforge.net/projects/grub4dos
2.解压后,将grldr与grldr.mbr文件复制到C盘根目录下
3.在Vista下找到 开始-附件-命令行,在命令行这一项上面鼠标点击右键选择“使用管理员权限运行”
4.在cmd下输入如下命令:

代码: 全选

bcdedit /create /d "GRUB" /application bootsector
系统会返回一个长串的id号,下面需要用到这个变量,继续输入

代码: 全选

bcdedit /set {id} device partition=C:
bcdedit /set {id} path \grldr.mbr
bcdedit /displayorder {id} /addlast
注意!这里的{id}就是上面获得的变量,请注意小心核对输入,输错一个就基本面临崩溃了

5.下载一个可以在windows下查看linux分区的工具
关于这个问题,我不知道是否是我系统的关系,无法用explore2fs来查看ext3分区,通常你可以下载explore2fs这个工具在windows下查看ubuntu的分区。下载地址:http://www.chrysocome.net/downloads
我个人推荐另一款工具,因为explore2fs无论如何我都用不了,地址:http://www.eisoo.com/cn/professional/di ... wnload.htm
这个工具叫做DiskGenius

6.通过这个工具,将ubuntu分区上,/boot/grub/menu.lst文件复制到C盘根目录下
7.重启系统,在系统选单中选择GRUB
8.进入Ubuntu后,你可以在终端上重复我开头时livecd提到的操作
sudo su
grub
root (hdx,y)
setup (hdx)
详情请看上面的livecd时的操作
9.Done

这样,工作就完成了,加入你重新安装的vista或windows7并不在原先的分区上,那么你可以进一步在你的ubuntu下修改menu.lst。另外,如果你觉得windows选单下的GRUB变得多余,你可以用easyBCD工具去除。

我感觉很奇怪的时,以上cmd命令行操作中的内容虽然确实也可以用easyBCD等工具来完成,但是我用easyBCD做出来的引导老是出问题,我也就没有去细想问题出在哪儿,总之直接用上面的方法就好了
这则方案参考了http://forum.ubuntu.org.cn/viewtopic.php?f=139&t=148913&start=15 这张帖子里面,fishtear的方法,不过他们那个时wubi安装的就是了。
Illumi
帖子: 39
注册时间: 2008-11-13 23:48
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#2

帖子 Illumi » 2008-12-31 22:58

查过,论坛还没有相关介绍这个问题的帖子,而全部都是说XP的,所以花了一些时间搞出来,希望对大家有用
头像
yehyun
帖子: 179
注册时间: 2006-10-11 23:29
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#3

帖子 yehyun » 2009-01-03 11:06

顶你,谢谢
/)/) (\/)︵
(-.-)(·_ _ )~
在Ubuntu中进步
头像
zhaoguosen
帖子: 16
注册时间: 2008-10-21 20:20
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#4

帖子 zhaoguosen » 2009-03-01 1:10

思路正确,xp和vista、win7就是不一样
hzyl
帖子: 13
注册时间: 2009-03-01 1:42
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#5

帖子 hzyl » 2009-03-01 1:58

那如果是wubi安装呢?
billbear
帖子: 3681
注册时间: 2008-05-03 23:42
送出感谢: 0
接收感谢: 3 次

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#6

帖子 billbear » 2009-03-01 13:59

其实,vista、win7 尽管使用BCD,但也会读取boot.ini的内容(以兼容 xp 方式)。所以老办法仍然有效。
你可以在 C:\ 下自行建立一个 boot.ini 文件,写上:
[boot loader]
[operating systems]
c:\grldr.mbr="grub4dos"
与 xp 不同的是,这对引号是必须的。并且必须用 grldr.mbr,然后把 grub4dos 压缩包里面的 grldr.mbr 以及 grldr 两个文件都放置在 c:\ 下即可。

也无需从 linux 分区拷贝任何文件, grub4dos 认识所有的 linux 分区(只要你的 grub4dos 足够新),会自动找到并使用里面的 menu.lst(只要你没有在其他分区里放置 menu.lst 来干扰他的运作)。因此你自行建立了 boot.ini 并拷贝了 grldr 和 grldr.mbr 后就算完工了。需要移除的时候删除这3个文件就好了。
头像
sxdhaoren
帖子: 851
注册时间: 2008-10-01 0:20
系统: ubuntu kylin16.04.3
送出感谢: 4 次
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#7

帖子 sxdhaoren » 2009-03-01 14:18

用的vista+ubuntu上系统,先收藏了
自由软件爱好者
头像
tencenet
帖子: 42
注册时间: 2008-06-15 20:42
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#8

帖子 tencenet » 2009-03-01 20:23

:em11
顶一个,
yueyezhan
帖子: 47
注册时间: 2008-10-16 16:19
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#9

帖子 yueyezhan » 2009-03-02 13:59

你在安装完ubuntu后就用dd命令把ubuntu的引导扇区备份出来,以后重新安装vista之后,把这个512字节的文件拷到windows启动分区,然后用bcdedit添加ubuntu的启动项或者如另一位兄弟所说的,写个boot.ini就可以了
jinliangliu
帖子: 5
注册时间: 2006-12-05 9:43
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#10

帖子 jinliangliu » 2009-03-02 14:02

hzyl 写了:那如果是wubi安装呢?
同問,我最近也用wubi在原vista上安裝了ubuntu8.10,最後vista重裝了,卻找不到啟動菜單了,該如何弄?有高手幫手解決嗎?

找到解决方案,特地回来报一下:
viewtopic.php?f=139&t=165105&p=1155454#p1155454
Illumi
帖子: 39
注册时间: 2008-11-13 23:48
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#11

帖子 Illumi » 2009-03-04 0:03

写boot.ini根本没用,不信的话,你自己试试看!
6楼和9楼的兄弟

启动机制完全不同了
billbear
帖子: 3681
注册时间: 2008-05-03 23:42
送出感谢: 0
接收感谢: 3 次

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#12

帖子 billbear » 2009-03-04 0:21

Illumi 写了:写boot.ini根本没用,不信的话,你自己试试看!
6楼和9楼的兄弟

启动机制完全不同了

我也曾经这么认为 :)
你不妨再试一次,关键是那对引号
c:\grldr.mbr="grub4dos"
yueyezhan
帖子: 47
注册时间: 2008-10-16 16:19
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#13

帖子 yueyezhan » 2009-03-04 1:24

Illumi 写了:写boot.ini根本没用,不信的话,你自己试试看!
6楼和9楼的兄弟

启动机制完全不同了
那是你没写对,nt6依然会读取活动分区根目录下的boot.ini
头像
franklee88
帖子: 104
注册时间: 2009-02-26 13:07
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#14

帖子 franklee88 » 2009-03-05 23:58

我重装Windows7后,开机画面没有Ubuntu启动项。看了这篇文章,觉得你的方法比较简单,比起他人。
由于我太菜,Ubuntu的历史才7天。请教一些细节:
livecd就是我的9.04安装盘对吗?我进去后选择的是第一项:提示说,不改变计算机里任何内容,体会Ubuntu....进入 应用程序 /终端
请指教?
Illumi
帖子: 39
注册时间: 2008-11-13 23:48
送出感谢: 0
接收感谢: 0

Re: 重装Vista或Windows7后,Ubuntu无法启动的解决方案(与XP不同)

#15

帖子 Illumi » 2009-03-06 0:28

franklee88 写了:我重装Windows7后,开机画面没有Ubuntu启动项。看了这篇文章,觉得你的方法比较简单,比起他人。
由于我太菜,Ubuntu的历史才7天。请教一些细节:
livecd就是我的9.04安装盘对吗?我进去后选择的是第一项:提示说,不改变计算机里任何内容,体会Ubuntu....进入 应用程序 /终端
请指教?
1.假如你用9.04的系统也行得通
2.没有提示输入密码是正常的,照理确实没有密码提示
3.输入方法是先输入一行root (hdx,y),回车,再输入setup (hd0)再回车,注意括号和前面的单词有个空格
回复

回到 “启动和引导”