不知道你是否有这样的经历,在重装完windows之后呢,发现grub消失了。
这时候很多人都会上baidu搜索什么“grub恢复”阿之类的关键词,然后
一看,这么麻烦,还不如重装系统来得简单呢。其实恢复grub并没有那么
复杂恐怖,如果你是个打算成为linux中手的话(说高手的话,估计你得吓
跑了),学会处理这些问题是很必要的。下面我结合自己的实践经验来讲一
下如果恢复grub,顺便说一下如果利用U盘作为启动盘来引导linux安装程序。
步骤有2:
1.制作启动光盘/U盘(如果你拥有一张安装光盘可以绕过此步骤)
2.进入安装程序恢复grub
下面先讲步骤1,制作启动光盘就不说了,用一张安装镜像然后刻录之即可.
重点讲如何制作启动U盘.
首先先下载一个工具叫USBoot1.7,注意1.7的版本与之前的版本多了一个功能
就是增加了对大容量U盘的支持.下面是他的软件界面图.
此次操作会格式化U盘,所以请先备份好你U盘里面的重要文件.选择好U盘盘符之后点击下面选择
工作方式为USB-ZIP模式,这种方式在作启动盘是比较成功(至于原因大家
有兴趣自己探索)接下来按照提示走.完毕之后呢,我们就拥有一个可以引导的
U盘了.接下来呢,我们要让这个U盘能够能够启动我们的grub程序.下载一个
grub for dos的程序,放到u盘中,然后编辑u盘中的autoexec.bat文件,在里面
写上
grub --config-file=(sdc0)/menu.lst
这样就可以利用grub来引导了,但在此之前我们要添加一个menu.lst的文件,
这个文件作为grub的引导菜单,具体制作方法可以baidu一下,不过我们暂时
不需要里面有什么内容,我们只需要运行一个grub命令行就可以了.
然后我们就可以来引导我们的安装程序了.
步骤2:引导安装程序修复系统
为了引导linux系统,我们需要两个文件,一个是vmlinuz,另外一个是initrd.img
这两个文件可以在我们的linux系统镜像中查找,是用来初始化内核和一些环境的
将这两个文件拷贝到U盘上,然后到grub命令行下,输入
kernel (hd0,0)/vmlinuz (注意这里的(hd0,0)应该是用U盘启动之后
他自动将U盘作为第一快硬盘的第一快分区
了,如果提示找不到该文件的话时下其他的)
initrd (hd0,0)/initrd.img (初始化镜像)
boot 镜像文件名.iso (引导镜像文件,即我们下载的安装镜像)
然后我们就可以看到熟悉的安装界面出现了,此时我们再按下Alt+F2进入命令
行界面,首先挂载我们原先的linux系统到安装临时系统上,
mkdir /mnt/linux (建立挂载文件夹)
mount /dev/hda4 /mnt/linux (挂载,这里的sdc是我的设备号,具体大家
可以用fdisk -l命令查看一下自己原先的
linux是哪个设备,不行的话可以试着挂载
一下)
root /mnt/linux (将当前命令行切换到原来linux系统的
这样之后的操作都是针对原先系统的了)
grub (进入grub)
root (hd0,5) (设置grub引导根分区所在地)
setup (hd0,0) (将grub安装在第一块硬盘的mbr上面,这样
windows分区也可以用grub来引导了)
退出,重启,引导第一快硬盘即可看到熟悉的grub又出来了.
grub是一个比较优秀的引导程序,我们也可以利用这种思想来制作一个grub
界面的超级启动U盘,这样以后不管windows还是linux系统怀了都可以用他来
修复了.