http://ubuntu.srt.cn/ubuntu-releases/9.10/ubuntu-9.10-desktop-i386.iso
通过liveCD进行ubuntu启动修复
在安装Windows和Linux多重系统的计算机上,经常会出现启动菜单丢失、系统无法引导等问题,因此学会如何使用一些工具对系统进行修复是非常有必要的。Ubuntu LiveCD虽然不是专门的系统修复工具,但在很多关键时候它却能让系统起死回生。
一、修复Grub引导
在安装了Ubuntu或者是Linux的计算机上重装Windows时,会将Grub从MBR(硬盘主引导记录)上清除而导致无法进入Ubuntu,这是多系统用户经常会遇到的问题。修复Grub引导的方法有很多,例如通过Grub for DOS或是在Linux Rescue模式下进行修复,当然也可以通过Ubuntu LiveCD进行修复。
将Ubuntu LiveCD放入光驱并启动计算机,进入工作界面。执行“Applications→Accessories→Terminal”,打开终端,输入并执行“sudo -i”命令,切换到root终端模式,然后输入“grub”,回车执行,即会出现Grub命令提示。
在Grub命令提示符下输入:“find /boot/grub/stage1”,此时,屏幕会返回类似“(hd0,2)”的字样,这是/boot所在的分区。根据显示的结果,再分别输入并执行如下命令:
root (hd0,2)
setup (hd0)
注意:root后面有一个空格。以上指令首先定位Grub所需的/boot目录所在分区,然后将Grub的引导代码写入MBR(图1)。如果要想将Grub写入根分区的话,则需要在逗号之后加上数字,如“(hd0,2)”。当修复成功时会显示“succeeded”字样,最后执行“quit”命令退出Grub。取出Live CD,重新启动计算机即可。
图1 执行上述指令修复Grub引导
二、MBR备份与恢复
Ubuntu LiveCD不仅仅可以修复Grub,同时它也能够用来备份MBR并对其进行恢复。用LiveCD启动计算机,进入工作界面后,打开终端,输入如下命令备份MBR包括分区表:“sudo dd if=/dev/hda of=/ bs=512 count=1”
其中,“/dev/hda”是要备份的硬盘,hda表示硬盘安装在IDE第一主盘,如果安装在第二主盘则为“/dev/hdc”;“bs”是Block Size,即一次IO操作读写的字节数,若是仅仅备份主引导记录而不备份分区表的话,则改成“bs=446”;“count”参数表示处理多少个Block;为备份文件的路径与文件名称,如“/media/floppy/boot.mbr”。
当需要恢复时,则使用如下命令:“sudo dd if=/ of=/dev/hda bs=512 count=1”。
三、拯救数据文件
如果系统出现严重故障无法进入,但系统分区中还有一些重要的数据文件或配置需要备份出来,Ubuntu LiveCD也能够轻松地搞定。它能够自动找到计算机中的硬盘分区,兼容FAT32、NTFS、EXT2、EXT3等多种分区格式。借助它,我们可以很轻松地在图形界面下将数据文件抢救到硬盘、U盘、软盘,甚至是光盘中。同样,如果是重要的系统文件丢失导致系统无法运行,而又有备份文件可供恢复的话,也能够通过Ubuntu LiveCD进行恢复(图2)。
图2 自带的文件修复
需要提醒读者的是,由于这是一个LiveCD的环境,在这里对用户帐户或文件系统的改动都是暂时性的,因此备份文件的时候请选择安全的分区,而不要将其备份在当前Ubuntu系统的任何文件夹下。
小贴士:什么是LiveCD
LiveCD通常是指那些可以从光盘上直接运行的操作系统。与常见的Linux套件发行版不同,Linux LiveCD不必安装,无需硬盘,只需将光盘插入光驱,并调整BIOS从光驱启动即可进入系统进行操作
专门装了个Win2k,在这之前已经知道安装Win系统后会自动回定硬盘的MBR扇区造成不能通过GRUB引导Ubuntu。近几天一直都在玩,也就没去动它。今天总算收心回来工作,也就要修复GRUB好启动UBUNTU。
说过程也可能有点麻烦,但操作还是很简单。
要修复GRUB的第一件事就是想办法进入GRUB。
如果有Ubuntu的LiveCD很简单,用LiveCD启动电脑,然后进入终端直接运行grub就可以进入GRUB指令状态。
如果没有LiveCD那就只有用Win下面的GRUB工具了。比如GRUBforDOS或其它一键备份之类的工具,很多这类的工具都是用GRUB来管理启动菜单。我一直都有用一个叫矮人DOS工具箱的工具,所以也就用它来启动GRUB。
安装矮人DOS工具箱,启动电脑,进入DOS工具箱,这样就进入GRUB引导的菜单。按“P”输入密码工具箱的默认密码hahaha,再按“C”即可进入GRUB指令行。
用下面指令找到Ubuntu的安装位置,也就是哪个硬盘分区。
find/boot/grub/stage1
返回类似(hdx,y)这样的结果,x为硬盘,y为分区,x和y是从0开始计数。
(hd0,1)
这样的结果就是说明我的Ubuntu安装在第一块硬盘的第二个分区。
root(hd0,1)
这一行是指定Ubuntu安装在哪个硬盘哪个分区,也就是使用find找到的结果。
setup(hd0)
将GRUB引导安装在哪个硬盘。敲回车后它会自动找到以前的菜单,GRUB算是修复成功了。
reboot
熟识的Uuntu启动出来了。
进入Ubuntu系统桌面,在终端输入命令
红色字体为输入的命令,输入命令后按“回车”键确定,蓝色为输入命令显示的信息:
sudo grub
[ Minimal BASH-like line editing is supported. For
the first word, TAB lists possible command
completions. Anywhere else TAB lists the possible
completions of a device/filename. ]
grub> find /boot/grub/stage1
(hd0,6)
grub> root (hd0,6)
grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/reiserfs_stage1_5" exists... yes
Running "embed /boot/grub/reiserfs_stage1_5 (hd0)"... 19 sectors are embedded
.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+19 p (hd0,6)/boot/grub/stage2
/boot/grub/menu.lst"... succeeded
Done.
grub> quit
ubuntu@ubuntu:~$ sudo grub
Probing devices to guess BIOS drives. This may take a long time.
ubuntu@ubuntu:~$
恢复完毕,重新启动。
一切完毕,就这么简单!!
Ubuntu开机启动菜单
这个文本里面有很多信息,其中由#字开头的都不要管他,因为这些只是注释信息,对于 启动没有作用。可以(一般)修改的参数如下:
default:后面的数字就是让你 选择哪一个操作 系统为默认进入的 系统,从0开始数。0代表第一个操作 系统
timeout:后面的数字表示 启动菜单停留的时间,单位秒。
关于 安装XP后 启动菜单消失的问题,直接用live光盘引导至linux下,然后进入终端,输入以下 命令sudo grub。
其中grub>为 提示符, 提示符后面的是所需输入的命令。在grub 提示符下,你只需输入三条命令就可以把开机 启动菜单给找回来。第一条 find /boot/grub/stage1,第二条 root (上一条的结果),第三条 setup(hd0)。
关于(hd0,8)的解释:hd0就是代表第一个 硬盘,8代表 硬盘上的第9个 分区。
转载于:https://blog.51cto.com/gtld1984/287175