码迷,mamicode.com
首页 > 其他好文 > 详细

利用紧急救援和单用户模式处理简单异常

时间:2015-05-15 18:04:09      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:grub损坏   紧急救援模式   单用户模式   

 

有时我们会碰到系统不能正常启动的情况,可能有以下几种原因,这里列出了解决方法

一、grub文件损坏

二、bash损坏

三、开机后忘记密码或者脚本设置问题

 

 

一、grub文件损坏

grub配置文件损坏,这里我们人为将文件改名后并重启系统

技术分享

系统重启,将会到该grub提示符界面

技术分享

 

解决方法

1.指定根分区,不知道可以用find (hd0,0)/,然后敲tab键补全,找一下根分区,也就是存放内核的分区

技术分享

2.找到根分区后,root到根分区,指定kernel文件和initrd文件,然后boot系统

技术分享

3.RHEL6在boot过程中会出现下图情况,提示没有参数或参数为空,说明要指定根设备,也就是明确分区信息,RHEL5中只需指定kernel文件即可正常启动

技术分享

4.如果记得根目录的路径位置,就指定内核所在的根设备,boot之,如果信息正确,则可以正常启动

逻辑卷

技术分享

一般分区

技术分享

4.1、不记得,就需要使用安装光盘进入紧急救援模式,Rescue installed system,选择该项会启动光盘上的精简Linux系统,在特殊情况下可以进入该模式,修复硬盘上的系统。

技术分享

选择语言

技术分享

选择键盘类型

技术分享

指定救援镜像文件的介质,可以是光盘镜像也可以是其他本地或网络路径,这里我门选择光盘镜像即可

技术分享

提示是否启用网络功能,根据需要选择

技术分享

技术分享

 

选择配置下

技术分享

下图中提示紧急救援模式下将找到Linux的安装信息并将其挂载到/mnt/sysimage下,选择Continue

技术分享

单击OK,提示我们硬盘中的系统已被挂载至/mnt/sysimage目录下

技术分享

技术分享

下图提示,进入shell、诊断或重启,我们选择进入shell

技术分享

出现命令行界面

技术分享

使用mount命令查看挂载信息

技术分享

然后我们可以切换根目录,到硬盘系统中/boot/grub目录下手动新建grub.conf文件,原硬盘上系统可成功重新启动

bash-4.1# chroot /mnt/sysimage    #切换根目录到原磁盘文件根目录
bash-4.1# cd /boot/grub    #进入到grub目录
bash-4.1# vim grub.conf    #重新创建grub文件
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-431.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/sda
        initrd /initramfs-2.6.32-431.el6.x86_64.img
bash-4.1# exit    #退出根目录
bash-4.1# reboot    #重启系统,只要grub文件正确,重启后,可正常进入原硬盘上的操作系统

 

二、bash损坏

系统启动时,提示init进程、脚本不能执行

技术分享

 

解决方法

1、利用引导盘,进入紧急救援模式,选择Rescue installed system回车,过程同上文中4.1

技术分享

2、挂载光盘镜像

3、重装bash的rpm包到root下

bash-4.1# rpm-ivh bash-4.1.2-9.el6_2.x86_64.rpm --root /mnt/sysimage/ --replacepkgs    #安装版本以光盘镜像中rpm包为准,最好比原有版本一致或更新

技术分享

这样就可以成功解决bash损坏造成启动不了系统

 

三、开机后忘记密码或者脚本设置问题

问题1:由于生产环境需要,可能需要在系统启动后执行一些操作,我们会编辑/etc/rc.d/rc.local文件,其链接文件为/etc/rc.d/rc3.d/S99local,是init3系统正常启动后用户登陆前最后执行的脚本。

问题2:/etc/inittab文件内容,id:3:initdefault: ,如果这里改为6,系统会不停重启

解决方法:如果系统启动后有异常,也有可能是这个脚本内容有问题,进入单用户模式,修改密码或者文件即可

 

重启系统,3秒钟内,按一下回车键。此时显示如下界面,输入‘e’会在启动前编辑命令行; 输入‘a’ 会在启动前更改内核的一些参数; 输入‘c’ 则会进入命令行。而我们要做的是输入 ‘e’

技术分享

输入‘e’后,到了下图界面,选择kernel项,输入‘e’

技术分享

下图界面中,在命令行后输入“single”或者“1”或者“s”,然后先按回车然后按 ‘b’,启动后就进入单用户模式

技术分享

单用户模式界面

技术分享

此时只需使用passwd命令修改用户密码或者找到有问题的文件进行修改即可

本文出自 “Arvin Lau” 博客,请务必保留此出处http://64314491.blog.51cto.com/2784219/1651645

利用紧急救援和单用户模式处理简单异常

标签:grub损坏   紧急救援模式   单用户模式   

原文地址:http://64314491.blog.51cto.com/2784219/1651645

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!