注册
登录
设施
搜索
俱乐部
论坛
私人消息 (0)
公共消息 (0)
论坛任务 (0)
系统消息 (0)
好友消息 (0)
帖子消息 (0)
稻草软件论坛
»
Linux讨论区
»
Debian|Ubuntu发行版
» 修复Ubuntu的GRUB引导的方法
返回列表
回复
发帖
‹‹ 上一主题
|
下一主题 ››
[综合讨论]
修复Ubuntu的GRUB引导的方法
发短消息
加为好友
番茄XP
当前离线
顶级会员(MacOS X10.6)
转到楼层
»
倒序看帖
打印
字体大小:
t
T
楼主(1 楼):番茄XP
发表于 2009-12-12 12:57
|
只看该作者
[综合讨论]
修复Ubuntu的GRUB引导的方法
Ubuntu
,
GRUB
,
WinXP
,
系统
,
引导
分享到:
QQ空间
新浪微博
开心网
人人网
重装xp后,mbr被xp写入信息导致grub无法工作解决方法
从CD-ROM启动,从Live CD启动进入桌面。
打开终端或者切换到一个tty(Ctrl+Alt+F1)。
输入:sudo grub
输入:find /boot/grub/stage1 ##有人说这一步不用,不过个人感觉还是应该加上这一步
输入:root (hd0,x) ##输入find命令反馈的数据
输入:setup (hd0) ##如果想用xp进行多系统引导就写(hd0,x)
输入:quit ##退出grub。
重新启动,不出意外的话,那么恭喜,呵呵,可以看到XP和UBUNTU的双系统引导咯^_^
---------------------------------------------------------------------------
重装windows XP 后怎样找回Ubuntu
首先下载GRUB for Dos
并安装下载Ext3分区访问软件(有Ext2Fsd 或explore2fs)
运行后将ubuntu根目录下的Boot文件夹里全部复制到C盘.
重启后在开机菜单里选择GRUB就可进入ubuntu.
要点:ubuntu linux 需要GRUB for Dos来引导,所以C:\BOOT.INI里,会有这一行:
C:\GRLDR="GRUB"ext3
分区下的boot文件夹里面放了可以引导的文件,需将其放在c盘根目录.
-------------------------------------------------------------------------------------------------------
1.用livecd(强烈推荐)
2.用安裝cd
3.使用grub4dos
4.使用grub軟盤
1,使用livecd(强烈推荐)
使用任何你喜歡的linux livecd(比如,ubuntu 6.06的desktop cd)
在终端下输入:
代码:
sudo su
grub
代码:grub>
接着输入:
代码:
root (hdx,y)
setup (hdx)
请不要完全照样输入!请弄懂这些命令的含义。
hd表示硬盘,格式是
(hd硬盘号,分区号)
从零开始计算。
所以(按照日常的习惯,从1开始数),
(hd0,0)表示第一个硬盘的第一个分区,
(hd0,1)表示第一个硬盘的第2个分区,
(hd1,4)表示第2个硬盘的第5个分区。
(注意,linux系统里是用hda1表示第一个硬盘的第一个分区,不要把它和grub中的表示混起来。)
root (hdx,y)这里的(hdx,y) 是/boot 目录所在的分区
(通常情况下,也就是你装ubuntu系统的分区,除非你安装的时候把/boot分出去了。)
如果你不知道你把ubuntu装在第几个分区,可以在输入root (hd0, 时按Tab键来补全。
(假设你把ubuntu装在第一块硬盘上)按了tab后,你将看到一些有关各个分区的信息。
通常你可以通过分区的大小和格式看出你把ubuntu系统装在哪里了。
setup (hdx) 通常情况下,是setup (hd0)。(多半你把ubuntu装在第一块硬盘上。)
要注意的是,不要输入setup (hd0,0)。我曾经犯过这个错误。
(如果你没把命令抄下来,凭记忆操作的话,可能会犯这种错误。)
最後,用
代码:
quit
退出grub,重啟系統。
好了,总结一下用到的命令
(建议你把下面的代码抄在纸上。如果你对(hdx,y)表示的含义还感觉模糊,最好把上面几段解释也抄下来。)
代码:
sudo su
grub
root (hdx,y)
setup(hdx)
quit
很简单吧?关键只要理解grub中硬盘分区的表示法就行了。
2,使用ubuntu安裝cd恢复
ubuntu desktop-cd可能用不起来。你可能需要7.10的alternative cd。
1. 用 Ubuntu 安装 CD 开机
2. 在 "boot:" 提示号出现时, 键入 "rescue" 当作开机参数
boot: rescue
3. 顺着屏幕上的指示跟着作
4,例如 假设 /boot 磁碟分区位在 /dev/hda
代码:
#grub-install /dev/hda
下面是另外一种方法。firehare 写道:
1. 启动系统到 Ubuntu 安装CD
2. 沿着屏幕上的命令直到 (千万不要超过这一步)
[!!] Fdisk disks
3. 按 'Ctrl + Alt + F2'
4. 按 'Enter' 进入终端
5.
~ # mkdir /ubuntu
~ # fdisk -l /dev/discs/disc0/disc
~ # mount <你的Ubuntu根设备所在位置> /ubuntu/
~ # chroot /ubuntu/sh-2.05b#
6. 假设 /dev/hda1 是 /boot 分区的地址
7. sh-2.05b# grub
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
1. 用 Ubuntu 安装 CD 开机
2. 在 "boot:" 提示号出现时, 键入 "rescue" 当作开机参数
boot: rescue
3. 顺着屏幕上的指示跟着作
4,例如 假设 /boot 磁碟分区位在 /dev/hda
代码:
#grub-install /dev/hda
3,使用 grub for dos
在沒有ubuntu安裝盤或livecd的情況下,你可以使用grub4dos重新安裝grub。
你甚至可以用grub4dos代替grub來引導系統。
3.1使用grub4dos重新安裝grub
下載
http://www.ubuntu.org.cn/download/installformharddisk/grldr
oneleaf 写道:将 grldr 复制到 C:\,编辑C:\BOOT.INI,加入一行:
C:\GRLDR="GRUB"
再手工输入启动命令
例如:root (hd0,0)
kernel /vmlinuz-2.6.10-5-686 root=/dev/hdb5 ro quiet splash
initrd /initrd.img-2.6.10-5-686
savedefault
boot
进入后,重新安装grub就好了。
重新安裝grub:
例如 假设 /boot 磁碟分区位在 /dev/hda
代码:
# grub-install /dev/hda
3.2用grub4dos代替grub來引導系統
yonsan 写道:
(凭记忆写的,如有不完善请指正)
如果你的系统现在正在使用grub引导方式,请在操作之前查看一下/boot/grub/menu.lst的内容,
建议将/boot/grub/menu.lst拷贝一份以备用(将它拷到fat32分区中存放就可以)!进入window环境下
1) 下载grub020p.zip并解压到C盘根目录下,打开C盘查看一下是否有以下文件
C:\boot (文件夹)
C:\ChangeLog.txt
C:\compile
C:\COPYING
C:\grldr
C:\grub4lin
C:\grub-0.95-patch1-startups
C:\grub-0.95-patch2-findroot
C:\grub-0.95-patch3-ntfs
C:\grub-0.95-patch4-emulation
C:\grub-0.95-patch5-splash
C:\grub-0.95-patch6-scdrom
C:\grub-0.95-patch7-bioscdrom
C:\grub.exe
C:\grub.pif
C:\README.txt
C:\robin.xpm.gz
C:\scratchpad.txt
2) 修改C:\boot\grub\menu.lst ,用你刚才从linux系统中拷贝的menu.lst覆盖C:\boot\grub\menu.lst
3) 进入grub命令行方式 (出现grub引导菜单时按c键)
> root (hd0,0)
> setup (hd0)
4) 重启计算机
4.使用grub軟盤很簡單,只要用grub軟盤啟動机器就行了。
如何制作grub軟盤?
如果你沒做過grub軟盤,想在用安裝cd恢复的時候順便做一個,那就試試下面這個:
youngong 写道:
用安装CD启动电脑,输入rescue回车
启动后执行"grub- install /dev/hda3"重新安装grub到ubuntu分区上
再用"grub-install /dev/fd0"制作一张启动软盘
(如果你打算将grub安装在MBR上可就更简单了,只需要grub-install /dev/hda)。
再用刚才制作的软盘重启电脑,就可以进入ubuntu linux了。
为了还原我原来的NT Loader启动linux的方式,再提取hda3分区的引导记录
即“dd if=/dev/hda3 of=/linux.lnx bs=512 count=1",
并将生成的linux.lnx文件复制到C区根目录下,
修改boot.ini加入“c:\linux.lnx=Ubuntu linux 5.04",
就可以在硬盘引导时选择启动ubuntu了。
其实整个过程中制作引导软盘只起了个过渡作用,但同时也方便以后维护系统。
zhan 写道:
今天重装了windows系统,将原来的xp装为2003
装完后用ubuntu的安装盘grub-install /dev/hda 将linux恢复了
但是启动时只有一个winxp的选项,进入时说不能识别文件系统,不能启动
然后出现一个GRUB 就停住了,不过linux系统是还可以用.
各位大侠有没有什么好办法,我不想再重装了!!
启动win时的显示见下:
Booting 'microsoft windows xp professional'
root (hd0,0)
Filesystem type unkown ,partition type 0x7
savedefault
makeactive
chainloader+1
GRUB
到这里就不动了,按键基本都没用,不过,ctrl+alt+delete能重启
yonsan 写道:
用以下方式引导windows
代码:
# Windows
title Windows
rootnoverify (hd0,0)
chainloader +1
-------------------------------------------------------------------------------------------------------
重装Windows后 无法进入ubuntu 的修复方法
如果你的电脑是Win和Ubuntu双系统的,可能会遇到这样的问题。
就是重装Win之后将无法进入Ubuntu了。一般情况下遇到这样的问题,我们有两种方法解决!
最简单的方法:
1.利用另外的一个LiveCD盘进入后把所有的盘都挂载。
2.拷贝原Ubuntu下的/boot/grub到Win的C盘。
3.修改Win的C盘里的boot.ini文件。它可能隐藏和只读 需要自己改下属性!
4.在这个文件最后加入一句C:\grldr=ubuntu
5.重启选择Ubuntu。
第二种方法:
注意此种方法只能在重装WIN之前到Ubuntu下操作!!!
首先确定你的grub正常,并能启动linux
然后启动到Ubuntu如果你的是IDE硬盘
请运行:
sudo dd if=/dev/hda of=/media/linux.lnx bs=512 count=1
如果你硬盘的被识别为sda ,请运行
sudo dd if=/dev/sda of=/media/linux.lnx bs=512 count=1
然后你可以到/media找到linux.lnx这个文件
将它拷贝到你的win根目录,一般是C:\然后重启Win,修改根目录下的boot.ini 文件。
在这个文件最后增加:
C:\linux.lnx=”linux
OK,重启,选择Ubuntu吧。
注意:你需要将这个文件备份,可以备份到网络硬盘或者U盘内。
这样你重装Win之后,只需要将这个文件拷贝到Win的根目录,修改boot.ini 就可以了!
总结:相比较而言,第一种方法更简单一点,但是我觉得第二种方法更一劳永逸。
当然,你可以选择利用重装grub来恢复对Ubuntu的引导。但是我不觉得那对于新手会简单!
感谢提供这两种方法的sun391和enjoyforfun
------------------以上内容转自某个网页------------------------------------
补充: 用GhostXP的安装盘安装Windows 可能不存在这个问题(至少本人用深度白金珍藏版5.7.1是这样的)
-------------------------------------------------------------------------------------------------------
当我们的脆弱的Windows定期瘫痪,无法修复只能重新安装的尴尬时刻,我们发现“霸道”的Windows 在安装时丝毫没有顾及在硬盘的MBR上还存在操作系统的引导程序(grub),直接删除,只写入Windows的引导信息。
不管微软这样是不是有意而为,这都看出Windows的陋习和微软的强盗行径。我们怎么办,放弃Windows?但是我们还要我们心爱的游戏,反正Windows已经是我硬盘上的一个因为游戏还存在的附属系统,我们忍了。
发扬Linux人的DIY精神,我们自己动手找回丢失的Linux引导程序。
1,使用Ubuntu live关盘引导进入 Ubuntu live 模式
2,在Ubuntu中运行终端,执行下列命令:
$sudo grub
其实,grub不仅只在我们引导时候出现在我们眼前,我们平时也可以直接运行grub命令进入模拟grub引导程序。
3,之后,我们在grub 命令行模式下接着执行
root (hdx,y)
注意:其中x为硬盘号,数字 “ 0 ”指我们机器上的第一块硬盘,grub的排列顺序是从 “ 0 ”开始的。同理,如果你的系统在第二个硬盘上则是1,依次类推。另外,其中的“ y ”表示前面所指硬盘的 /boot 所在分区号,如果实在不知道,后面信息怎么填,你可以在输入逗号后按Tab键,这样可列出硬盘的分区信息。
4,安装 grub ,执行命令:
setup (hdx)
setup (hdx)就是把GRUB写到"x"硬盘的MBR上。如果成功会有一个successful......
5,安成安装后,退出 grub 。
quit
6,重启机器,重新引导Linux。
$sudo reboot
备注:其实,当我们安装完毕grub之后,还需要检查 grub 的配置文件信息是否正确,方法是在 Ubuntu live 模式下利用 mount 命令加载原来ubuntu 的分区,在原 /boot 目录下的 grub/menu1.st 文件中的信息。
收藏
分享
大家互帮互助,来这里,你问我答,有问必答!
返回列表
回复
发帖
‹‹ 上一主题
|
下一主题 ››
稻草电脑钥匙
论坛事务
稻币发放
磁盘应用区
安全软件论坛
系统光盘下载
使用帮助
共享上网论坛
谷歌Google Chrome OS展望台
Windows Server系统
稻草站务区
论坛公告、使用帮助
使用帮助
论坛公告
论坛事务
稻币发放
友情链接
给我提建议
新人报到
综合广场
电脑诊所(答疑区)
小技巧专区
共享上网论坛
数字校园山寨拨号器
论坛闲聊区(水区)
交易场
娱乐休闲
影音美图
游戏专区
系统之家
Windows讨论区
Win 8/Win8 RT讨论区
Windows Server系统
Win7、Vista专区
WinXP专区
Linux讨论区
Debian|Ubuntu发行版
Redhat|衍生版本
谷歌Google Chrome OS展望台
苹果Mac OS讨论区
Show Leopard专区
黑苹果ForPC
其它操作系统
系统光盘下载
扮靓电脑
美化资源发布(美化包/主题等)
晒桌面
软件世界
软件应用综合交流
磁盘应用区
安全软件论坛
杀毒交流区
软件资源发布区
原创软件发布区
稻草软件工作室
稻草电脑钥匙
程序发布
[收藏此主题]
[关注此主题的新回复]
[通过 QQ、MSN 分享给朋友]
道具
每日签到
稻草语音聊天室
网速测试
全国城市地图
勋章
社区银行
发帖际遇