误把grub装第一分区上了

启动讨论 grub/grub2/syslinux/grub4dos/Lilo
回复
3vergreen
帖子: 3
注册时间: 2009-06-09 18:37

误把grub装第一分区上了

#1

帖子 3vergreen » 2009-06-09 22:08

:em06 求个解决办法
因为不是mbr,也没法fdisk
引导的最后一行microsoft windows xp成了摆设……
:em20 :em20
头像
wangdu2002
帖子: 13284
注册时间: 2008-12-13 19:39
来自: 物华天宝人杰地灵

Re: 误把grub装第一分区上了

#2

帖子 wangdu2002 » 2009-06-09 22:09

行到水穷处,坐看云起时。
海内生明月,天涯共此夕。
--------------------吾本独!
hpo3
帖子: 3
注册时间: 2009-04-28 15:17

Re: 误把grub装第一分区上了

#3

帖子 hpo3 » 2009-06-09 22:23

你把grub安装到了第一个分区,我想你是破坏了winxp分区的引导部分,首先要修复winxp的引导,然后再重新安装grub。
具体我忘记了,windows引导修复有两个程序fixboot和fixmbr,一个是修复分区的引导,一个是整个硬盘的引导。所以我说两个方法,第一个搞不定你再尝试第二个方法。

方法一
先在linux里面运行grub,输入

代码: 全选

root (hd0,4)
setup (hd0)
这是把grub安装到硬盘的引导部分。接下来找张xp的安装光盘,启动后安装之前有个修复控制台,进去后运行fixboot

方法二
xp的安装光盘,启动后安装之前有个修复控制台,进去后运行fixboot c:和fixmbr。之后在windows里面下载grub4dos,
把grub4dos里面的grldr文件放到C盘,然后在C:\boot.ini文件末尾添加

代码: 全选

c:\grldr="GRUB"
重启进入grub后,输入
root (hd0,4) //这个是你linux的boot分区
kernel /bzImage root=/dev/sda6
intrd /XXXX
boot
具体文件名和分区名可以按TAB补全。进入linux后在从linux里面运行grub,运行

代码: 全选

root (hd0,4)
setup (hd0)
上次由 hpo3 在 2009-06-09 22:35,总共编辑 1 次。
3vergreen
帖子: 3
注册时间: 2009-06-09 18:37

Re: 误把grub装第一分区上了

#4

帖子 3vergreen » 2009-06-09 22:32

先试下 谢谢
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

Re: 误把grub装第一分区上了

#5

帖子 billbear » 2009-06-10 7:05

如果 c 盘是 ntfs,所有数据已经完蛋。
如果 c 盘是 fat,恢复引导扇区即可。所有数据完好。不恢复引导扇区,直接用 grub4dos 来 chainloader /ntldr 也没有问题。
grub stage1 可以安装在 fat,但是永远不要安装到 ntfs。
afphoenix
帖子: 153
注册时间: 2009-01-07 15:19

Re: 误把grub装第一分区上了

#6

帖子 afphoenix » 2009-06-10 7:29

同意楼上..
偶的NTFS就全挂过一次,因为一个 setup(hd0,0) ,又 setup(hd0,1) :em06
大家好,我是计算机系大学生,玩电脑也 7.8 年了吧,可是这个系统为什么XXX,就不能XXX,连我这种XXX都XXX,怎么能够推广,看来XXX路还很长XXX,搞不懂你们这些XXX,再见了XXX
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

Re: 误把grub装第一分区上了

#7

帖子 adagio » 2009-06-10 10:18

billbear 写了:如果 c 盘是 ntfs,所有数据已经完蛋。
如果 c 盘是 fat,恢复引导扇区即可。所有数据完好。不恢复引导扇区,直接用 grub4dos 来 chainloader /ntldr 也没有问题。
grub stage1 可以安装在 fat,但是永远不要安装到 ntfs。
有这事?第一次知道,还好我从来没有这样干过,只装过几次在ext2、ext3分区,貌似那个没啥影响,反复装几次都可以
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
头像
tianping
帖子: 278
注册时间: 2007-08-26 15:57

Re: 误把grub装第一分区上了

#8

帖子 tianping » 2009-07-05 18:02

hpo3 写了:你把grub安装到了第一个分区,我想你是破坏了winxp分区的引导部分,首先要修复winxp的引导,然后再重新安装grub。
具体我忘记了,windows引导修复有两个程序fixboot和fixmbr,一个是修复分区的引导,一个是整个硬盘的引导。所以我说两个方法,第一个搞不定你再尝试第二个方法。

方法一
先在linux里面运行grub,输入

代码: 全选

root (hd0,4)
setup (hd0)
这是把grub安装到硬盘的引导部分。接下来找张xp的安装光盘,启动后安装之前有个修复控制台,进去后运行fixboot

方法二
xp的安装光盘,启动后安装之前有个修复控制台,进去后运行fixboot c:和fixmbr。之后在windows里面下载grub4dos,
把grub4dos里面的grldr文件放到C盘,然后在C:\boot.ini文件末尾添加

代码: 全选

c:\grldr="GRUB"
重启进入grub后,输入
root (hd0,4) //这个是你linux的boot分区
kernel /bzImage root=/dev/sda6
intrd /XXXX
boot
具体文件名和分区名可以按TAB补全。进入linux后在从linux里面运行grub,运行

代码: 全选

root (hd0,4)
setup (hd0)

只要修复C盘的引导程序就可以了.参考还面的方法,我采用两步恢复了grub引导:
1、先恢复C盘引导。采用xp安装盘,在故障恢复台下fixboot就可以了。
2、修复grub。使用ubuntu live cd启动,然后重新安装grub就可以了,这样原来的winxp也可以正确引导。即使C盘原来是NTFS也没有关系,因为没有对C盘内容做过操作,只是在修改引导信息。
头像
tianping
帖子: 278
注册时间: 2007-08-26 15:57

Re: 误把grub装第一分区上了

#9

帖子 tianping » 2009-07-05 18:05

adagio 写了:
billbear 写了:如果 c 盘是 ntfs,所有数据已经完蛋。
如果 c 盘是 fat,恢复引导扇区即可。所有数据完好。不恢复引导扇区,直接用 grub4dos 来 chainloader /ntldr 也没有问题。
grub stage1 可以安装在 fat,但是永远不要安装到 ntfs。
有这事?第一次知道,还好我从来没有这样干过,只装过几次在ext2、ext3分区,貌似那个没啥影响,反复装几次都可以
没关系的,我就犯过和楼主一样的错误,而且C盘是NTFS,最后恢复引导后C盘数据完好无损!
头像
自由建客
帖子: 13468
注册时间: 2008-07-30 23:21
系统: Debian stable AMD64

Re: 误把grub装第一分区上了

#10

帖子 自由建客 » 2009-07-06 21:48

grub-install /dev/sda
billbear
帖子: 3681
注册时间: 2008-05-03 23:42

Re: 误把grub装第一分区上了

#11

帖子 billbear » 2009-07-26 13:43

tianping 是对的。刚才在虚拟机试验了。我修改一下 5 楼的说法,
grub stage1 可以安装在 fat 分区,fat 分区依旧可以读写,可以长期正常使用;
grub stage1 安装到 ntfs 分区以后,ntfs 分区无法挂载,无法读写,显示 ntfs 损毁,在 windows 下同样无法读写,显示分区损毁,但是用 xp 安装盘 fixboot 或者用 vista/win7 安装盘 bootsect /nt60 (vista/win7 bootmgr 格式) 或 bootsect /nt52 (xp ntldr 格式)覆盖 stage1 之后,分区能够被完全修复,数据完好,启动引导正常。
结论仍然是 stage1 可以被安装到 fat 分区但不应被安装到 ntfs,但因此毁坏的 ntfs 可以通过修复引导扇区而被挽救。
回复