尽管Linux系统非常强大,稳定,但是我们在使用过程当中,如果人为操作不当,仍然会影响系统,甚至可能使得系统无法开机,无法运行服务等等各种问题。那么这篇博文就总结一下一些常见的故障排除方法,但是不可能面面俱到,只能不断的补充,更新。

一、管理员忘记密码

(1)、重启计算机,进入单用户模式

1
2
3
4
5
[root@CentOS5 grub]# reboot
 
Broadcast message from root (pts/2) (Wed Dec  2 18:45:32 2015):
 
The system is going down for reboot NOW!

(2)、grub显示界面,敲一下p键

(3)、输入密码之后按回车键

(4)、此时可以看到下方编辑菜单已经解锁,用户可以自行编辑了,此时我们敲e键

(5)、将光标挪至第二行,也就是kernel这一行,再敲一下e键

(6)、此时就进入kernel的编辑菜单里,我们只需要在行尾加一个数字1之后按回车

(7)、此时敲一下b键,即可重新启动系统

(8)、此时系统已重新启动,启动完成之后,就是单用户模式,直接修改root密码

(9)、此时是root用户直接登录,输入passwd修改root密码,再重启进入级别3即可

注:以上步骤就是进入单用户模式的方法,下面出现单用户模式则不再重复此步骤

二、系统无法启动

1、grub的stage1损坏(MBR前446字节损坏)

(1)、当重启系统就是如下画面

(2)、此时需要挂载光盘再重启进入rescue模式,提示符下输入linux rescue即可

(3)、选择语言类型,我们这里选择英文

(4)、选择键盘类型,我们这里选择美式键盘

(5)、是否启用网络,根据自己的需要选择,我这里没使用网络

(6)、如果后面需要修改文件,则选择Continue,否则就选择Read-Only,skip直接进入命令行

(7)、指定当前根分区,如果有多块硬盘的话

(8)、提示根文件系统被挂载至/mnt/sysimage下,如果想切换,执行chroot /mnt/sysimage

(9)、进入命令行界面之后,输入grub进入提示符界面

(10)、先指定内核所在分区,再安装grub,安装完成退出再重启即可

(11)、注意卸载光盘或者调整启动次序,启动之后显示如下画面即修复成功

2、grub的stage2损坏(stage1.5和stage2文件丢失)

(1)、当grub的stage2损坏时,重启系统时就会是这样

(2)、此时我们只需要指定/所在的磁盘及分区、内核文件路径、initrd文件路径即可

(3)、启动完成之后显示如下,再直接登录系统

(4)、复制/usr/share/grub/x86_64-redhat下所有文件至/boot/grub目录下就行

1
2
3
4
[root@CentOS5 ~]# ls /usr/share/grub/x86_64-redhat/
e2fs_stage1_5  ffs_stage1_5      jfs_stage1_5    reiserfs_stage1_5  stage2           ufs2_stage1_5    xfs_stage1_5
fat_stage1_5   iso9660_stage1_5  minix_stage1_5  stage1             stage2_eltorito  vstafs_stage1_5
[root@CentOS5 ~]# cp /usr/share/grub/x86_64-redhat/* /boot/grub/ -a

3、grub.conf配置文件丢失

(1)、当grub.conf配置文件丢失时,重启系统时就会是这样

(2)、此时我们只需要指定/所在的磁盘及分区、内核文件路径、initrd文件路径即可

(3)、启动完成之后显示如下,进入系统我们再自行创建grub.conf即可

注:此处find命令十分好用,指定root、kernel、initrd即可启动

三、用户无法登录系统(migetty、bash损坏)

1、bash损坏

进入rescue模式,然后重装bash即可

注:许多故障都可以通过但用户模式或救援模式可以解决

Linux系统之TroubleShooting(启动故障排除)的更多相关文章

  1. Linux系统之TroubleShooting(故障排除)(转)

    尽管Linux系统非常强大,稳定,但是我们在使用过程当中,如果人为操作不当,仍然会影响系统,甚至可能使得系统无法开机,无法运行服务等等各种问题.那么这篇博文就总结一下一些常见的故障排除方法,但是不可能 ...

  2. Linux系统入门---开机启动流程

    目录 Linux系统入门---开机启动流程 一.centos6 二.systemd管理进程 1.查看级别 三.centos7实践案例: 1.案例1:centos7系统,单用户修改root密码 案例2: ...

  3. 不同linux系统添加开机启动程序的命令

    see http://phpcj.org/blog/%E4%B8%8D%E5%90%8Clinux%E7%B3%BB%E7%BB%9F%E6%B7%BB%E5%8A%A0%E5%BC%80%E6%9C ...

  4. Linux系统xinetd服务启动不了

    Linux系统xinetd服务启动不了 xinetd服务时发现xinetd服务启动不了,并出现错误提示xinetd:unrecognized service,当出现这个错误提示的时候说明系统未安装xi ...

  5. Linux系统的快速启动机制(内核切换) 【转】

    转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=26807463&id=4187846 原文地址:Linux系统的 ...

  6. Linux系统下,启动Tomcat有时报Address already in use

    一.Linux系统下,启动Tomcat有时报Address already in use<null>... 1.那是因为你的tomcat已经启动了tomcat自带的关闭脚本,有时候关闭看上 ...

  7. Linux系统的开机启动顺序

    Linux系统的开机启动顺序加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init一句inittab文件来设定系统运行的等级(一般3或者5,3是多用 ...

  8. linux系统无法正常启动,故障排查恢复

    linux内核启动修复 首先看linux内核重要文件grub.conf # grub.conf generated by anaconda # # Note that you do not have ...

  9. centos6启动故障排除

    centos6中boot文件被全部删除的故障排除 /boot文件里关于启动的核心文件有三个,/vmlinuz-2.6.32-696.e16.x86_64,initramfs-2.6.32-696.el ...

随机推荐

  1. 在Linux上进行内核参数调整

    在Solaris上,使用工具mdb就可以直接修改内核内存里的内容.而在Linux上,则通常使用命令sysctl(8)做类似的事情. 本文以Fedora为例,介绍如何在Linux上进行内核参数调整. 常 ...

  2. 导入maven项目遇到中文乱码

    windows->preferences->content types->word Document 并输入utf-8->update; 右键选中的项目,选择propertie ...

  3. Django models 的常用字段类型和字段参数

    <1> CharField #字符串字段, 用于较短的字符串. #CharField 要求必须有一个参数 maxlength, 用于从数据库层和Django校验层限制该字段所允许的最大字符 ...

  4. Linux中locate命令的实践总结

    locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案.其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了.在一般的 di ...

  5. 给RadioButtonList绑定Selected的值

    有一个案例,是读取Excel的资料显示于ASP.NET的GridView控件.在GridView控件中,有一列是用RadioButtonList来显示性别信息(男或女). 另外来看看Excel的数据: ...

  6. java.lang.ClassCastException: java.lang.Short cannot be cast to java.lang.String(Short类型无法强转成String类型)

    有一行Java代码如下: String code1 = (String)qTable1.getValueAt(i, 0); 这是一个Java的图形界面获取表格中值的代码,其中qTable1.getVa ...

  7. UI-12组结对编程作业总结

    UI-12组结对编程作业总结 源码Github地址 https://github.com/tilmto/TILMTO/tree/master/Arithmetic 作业摘要 本次结对编程作业分为以下两 ...

  8. js文字滚动效果

    function (global) { var logo = document.getElementById('logo'); var text = document.createTextNode(' ...

  9. RBAC 介绍 (权限)

    RBAC是什么? RBAC是基于角色的访问控制(Role-Based Access Control )在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限.这就极大地简化了权 ...

  10. JS---函数名和变量名重名

    继续作用域的问题,今天上午看了一会,下午看又看到了一个类型的题,函数名和变量名相同的问题.之前还不会觉得函数名和变量名重名了会有什么冲突.也是没有去测试过..懒了.直接贴代码: 运行之后大家猜测结果是 ...