尽管Linux系统非常强大,稳定,但是我们在使用过程当中,如果人为操作不当,仍然会影响系统,甚至可能使得系统无法开机,无法运行服务等等各种问题。那么这篇博文就总结一下一些常见的故障排除方法,但是不可能面面俱到,只能不断的补充,更新。
一、管理员忘记密码
(1)、重启计算机,进入单用户模式
[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键
![1.jpg wKioL1Zez0XRVD2LAAjfPtzd-DQ026.jpg](https://s3.51cto.com/wyfs02/M01/76/EB/wKioL1Zez0XRVD2LAAjfPtzd-DQ026.jpg)
(3)、输入密码之后按回车键
![2.jpg wKiom1ZezubzzEoDAAjdJR3zcdk140.jpg](https://s2.51cto.com/wyfs02/M02/76/EC/wKiom1ZezubzzEoDAAjdJR3zcdk140.jpg)
(4)、此时可以看到下方编辑菜单已经解锁,用户可以自行编辑了,此时我们敲e键
![3.jpg wKioL1Zez1bDzDpEAAjePD1d9Nk749.jpg](https://s2.51cto.com/wyfs02/M02/76/EB/wKioL1Zez1bDzDpEAAjePD1d9Nk749.jpg)
(5)、将光标挪至第二行,也就是kernel这一行,再敲一下e键
![4.jpg wKioL1Zez2CzXji0AAlzYZxKuCg182.jpg](https://s2.51cto.com/wyfs02/M02/76/EB/wKioL1Zez2CzXji0AAlzYZxKuCg182.jpg)
(6)、此时就进入kernel的编辑菜单里,我们只需要在行尾加一个数字1之后按回车
![5.jpg wKiom1ZezwKQUgmmAAlSwik647I945.jpg](https://s5.51cto.com/wyfs02/M00/76/EC/wKiom1ZezwKQUgmmAAlSwik647I945.jpg)
(7)、此时敲一下b键,即可重新启动系统
![6.jpg wKioL1Zez3XDQ0IxAAllFFXh3jM538.jpg](https://s2.51cto.com/wyfs02/M00/76/EB/wKioL1Zez3XDQ0IxAAllFFXh3jM538.jpg)
(8)、此时系统已重新启动,启动完成之后,就是单用户模式,直接修改root密码
![7.jpg wKiom1ZezxDDIiSDAAMCnipKPLg910.jpg](https://s2.51cto.com/wyfs02/M01/76/EC/wKiom1ZezxDDIiSDAAMCnipKPLg910.jpg)
(9)、此时是root用户直接登录,输入passwd修改root密码,再重启进入级别3即可
![8.jpg wKioL1Ze0ZHSULRmAACCgtNDFzQ839.jpg](https://s4.51cto.com/wyfs02/M01/76/EB/wKioL1Ze0ZHSULRmAACCgtNDFzQ839.jpg)
注:以上步骤就是进入单用户模式的方法,下面出现单用户模式则不再重复此步骤
二、系统无法启动
1、grub的stage1损坏(MBR前446字节损坏)
(1)、当重启系统就是如下画面
![1.jpg wKiom1Zmll_AcxewAADABJkPtwk319.jpg](https://s5.51cto.com/wyfs02/M02/77/51/wKiom1Zmll_AcxewAADABJkPtwk319.jpg)
(2)、此时需要挂载光盘再重启进入rescue模式,提示符下输入linux rescue即可
![3.jpg wKiom1Zml2OytKbiAAaX5vfPpHk313.jpg](https://s4.51cto.com/wyfs02/M00/77/52/wKiom1Zml2OytKbiAAaX5vfPpHk313.jpg)
(3)、选择语言类型,我们这里选择英文
![4.jpg wKioL1Zml9TzxoTOAAGJtE4WQQE865.jpg](https://s1.51cto.com/wyfs02/M00/77/50/wKioL1Zml9TzxoTOAAGJtE4WQQE865.jpg)
(4)、选择键盘类型,我们这里选择美式键盘
![5.jpg wKiom1Zml2aiRlXiAAGFwlDuJCw791.jpg](https://s5.51cto.com/wyfs02/M01/77/52/wKiom1Zml2aiRlXiAAGFwlDuJCw791.jpg)
(5)、是否启用网络,根据自己的需要选择,我这里没使用网络
![6.jpg wKioL1ZmmN7g2QtYAAEhQX8KZes692.jpg](https://s5.51cto.com/wyfs02/M02/77/50/wKioL1ZmmN7g2QtYAAEhQX8KZes692.jpg)
(6)、如果后面需要修改文件,则选择Continue,否则就选择Read-Only,skip直接进入命令行
![7.jpg wKiom1ZmmHDDWI9bAALAoVfQcv8332.jpg](https://s5.51cto.com/wyfs02/M02/77/52/wKiom1ZmmHDDWI9bAALAoVfQcv8332.jpg)
(7)、指定当前根分区,如果有多块硬盘的话
![8.jpg wKioL1Zmma_SVLmeAAGKs2bA-Iw691.jpg](https://s3.51cto.com/wyfs02/M01/77/50/wKioL1Zmma_SVLmeAAGKs2bA-Iw691.jpg)
(8)、提示根文件系统被挂载至/mnt/sysp_w_picpath下,如果想切换,执行chroot /mnt/sysp_w_picpath
![9.jpg wKiom1ZmmbGj3VdZAAHII1LjAdE242.jpg](https://s3.51cto.com/wyfs02/M02/77/52/wKiom1ZmmbGj3VdZAAHII1LjAdE242.jpg)
(9)、进入命令行界面之后,输入grub进入提示符界面
![10.jpg wKiom1ZmntTCv0R9AACjQCZOlMI272.jpg](https://s5.51cto.com/wyfs02/M01/77/53/wKiom1ZmntTCv0R9AACjQCZOlMI272.jpg)
(10)、先指定内核所在分区,再安装grub,安装完成退出再重启即可
![15.jpg wKioL1ZmoZ2QM9oxAAKnFIXkNrY316.jpg](https://s3.51cto.com/wyfs02/M01/77/52/wKioL1ZmoZ2QM9oxAAKnFIXkNrY316.jpg)
(11)、注意卸载光盘或者调整启动次序,启动之后显示如下画面即修复成功
![16.jpg wKiom1ZmocaiRgf4AAhok0Oonuo841.jpg](https://s5.51cto.com/wyfs02/M01/77/54/wKiom1ZmocaiRgf4AAhok0Oonuo841.jpg)
2、grub的stage2损坏(stage1.5和stage2文件丢失)
(1)、当grub的stage2损坏时,重启系统时就会是这样
![10.jpg wKioL1Ze9P2jw7UJAADWXnyoiL4489.jpg](https://s4.51cto.com/wyfs02/M02/76/ED/wKioL1Ze9P2jw7UJAADWXnyoiL4489.jpg)
(2)、此时我们只需要指定/所在的磁盘及分区、内核文件路径、initrd文件路径即可
![11.jpg wKiom1Ze9QOiK6uIAAH5vanV7uU497.jpg](https://s5.51cto.com/wyfs02/M02/76/EE/wKiom1Ze9QOiK6uIAAH5vanV7uU497.jpg)
(3)、启动完成之后显示如下,再直接登录系统
![12.jpg wKioL1Ze9fHQDvi2AABhPvSIlgo146.jpg](https://s1.51cto.com/wyfs02/M01/76/EE/wKioL1Ze9fHQDvi2AABhPvSIlgo146.jpg)
(4)、复制/usr/share/grub/x86_64-redhat下所有文件至/boot/grub目录下就行
[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配置文件丢失时,重启系统时就会是这样
![10.jpg wKioL1Ze9P2jw7UJAADWXnyoiL4489.jpg](https://s4.51cto.com/wyfs02/M02/76/ED/wKioL1Ze9P2jw7UJAADWXnyoiL4489.jpg)
(2)、此时我们只需要指定/所在的磁盘及分区、内核文件路径、initrd文件路径即可
![11.jpg wKiom1Ze9QOiK6uIAAH5vanV7uU497.jpg](https://s5.51cto.com/wyfs02/M02/76/EE/wKiom1Ze9QOiK6uIAAH5vanV7uU497.jpg)
(3)、启动完成之后显示如下,进入系统我们再自行创建grub.conf即可
![12.jpg wKioL1Ze9fHQDvi2AABhPvSIlgo146.jpg](https://s1.51cto.com/wyfs02/M01/76/EE/wKioL1Ze9fHQDvi2AABhPvSIlgo146.jpg)
注:此处find命令十分好用,指定root、kernel、initrd即可启动
三、用户无法登录系统(migetty、bash损坏)
1、bash损坏
进入rescue模式,然后重装bash即可
![18.jpg wKiom1Zmuw6hY9Z1AAFyuscIJSo118.jpg](https://s1.51cto.com/wyfs02/M01/77/5E/wKiom1Zmuw6hY9Z1AAFyuscIJSo118.jpg)
注:许多故障都可以通过但用户模式或救援模式可以解决