您的位置:首页 > 运维架构 > Linux

Linux系统中修复GRUB引导故障手动引导进入操作系统

2014-01-02 11:01 746 查看
GRUB是大多数Linux系统默认使用的引导程序,可以通过启动菜单的方式选择进入不同的操作系统(如果有的话)。当“/boot/grub/grub.conf”配置文件丢失,或者关键配置出现错误,或者MBR记录中的引导程序遭到破坏时,Linux主机启动后可能只会出现“grub>”的提示符,无法完成进一步的系统启动过程。如图所示:



方法一:通过在“grub>”环境中手动输入引导命令启动Linux系统

出现上图的原因是grub.conf文件被修改过了,GRUB找不到启动文件了,所以需要手动敲进去。

第一步:运行root(hd0,0) (这是/boot所在的分区) //指定在启动菜单中显示的操作系统名称



第二步:执行kernel/vmlinuz-2.6.18-274.e15 ro root=LABEL=/ rhgb quiet (用来指定linux内核) //指定内核文件所在的位置,内核加载时权限为只读“ro”,并通过“root=”指定根分区设备文件的位置。(注意:vm后面最好用Tab键补齐)



第三步:执行initrd /initrd-2.6.18-274.e15.img (用来指定initrd文件) //指定启动内核所使用的临时系统镜像文件所在的位置。(注意:initrd后面最好用Tab键补齐)



第四步:执行boot //启动Linux系统



之后进入启动状态,出现红色的“RedHat”表示内核加载成功。



启动成功,可以正常使用了,以上命令vi/boot/grub/grub.conf配置到文件里,下次就可以顺利启动了。





方法二:通过急救模式

把系统光盘放入光驱,重启Linux系统。系统启动时按“F2”键,在“boot:”提示符下输入“linuxrescue”后“回车”,进入“急救模式”引导光盘中的Linux系统。之后依次按回车键接收默认的语言、键盘格式,提示是否配置网卡是一般选择“NO”,然后系统会自动查找硬盘中的Linux分区并尝试将其挂载到“/mnt/sysimage”目录(选择“Continue”确认并继续)。接下来需要特别注意:当出现是否初始化磁盘的警告窗口时,一定要选择“NO”,以免对硬盘数据造成进一步损坏。最后选择“OK”确认后将进入到带“sh-3.1#”提示符的Bash
Shell环境。

1.如果MBR扇区引导程序没有被损坏,确认待修复的Linux系统分区的挂载情况,并重修grub.conf文件。命令如下:

sh-3.1#chroot/mnt/sysimage //切换到待修复的Linux系统根环境

sh-3.1#mount

sh-3.1#vi/boot/grub/grub.conf //重建grub.conf文件,下面内容仅供参考

sh-3.1#exit//退出chroot环境

sh-3.1#exit//退出shsh-3.1环境,系统会自动重启

2.如果MBR扇区引导程序被损坏,即使重建grub.conf配置文件后仍然无法启动系统。这时可以在急救模式的shell环境中重新安装grub。命令如下:

sh-3.1#chroot/mnt/sysimage //切换到待修复的Linux系统根环境

sh-3.1#grub-install/dev/hda // 重装grub

sh-3.1#exit//退出chroot环境

sh-3.1#exit//退出shsh-3.1环境,系统会自动重启
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: