|
linux启动故障问题的分析及解决方法
1、MBR 丢失或者损坏
开机时出现如下画面:
解决方法:
1) 进入光盘修复模式:输入 linux rescue ,进入修复模式。
2) #Chroot /mnt/sysimage #切换根用户到之前的系统
3) #Grub-install /dev/sda #安装GRUB到第一启动装置的第一扇区中
安装完成后,重启,即可正常进入系统。
2、grub配置文件损坏或者丢失
出现如下画面:
解决方法:
手工指定内核和initrd文件的位置,命令如下:
Grub > root (hd0,0)
Grub > kernel /vmlinuz-2.6.18-238.el5 ro root=LABEL=/
Grub> initrd /initrd -2.6.18-238.e15.img
Grub>boot
如下图:
正常情况即可进入系统,此时查看/boot/grub/下是否有grub.conf文件,或者如果有此文件,内容是否正常。不正常,修改,如果没有这个文件,就复制一份过来(如果之前备份的话);没有备份的话,就手工写一个文档,命名为grub.conf。
如下,是我手工写的一个grub.conf文件,你也可以自行定义其内容,只要可以让系统正常启动。
3、/sbin/init 故障
A .如果linux系统的第一个shell /sbin/init损坏或者丢失,开机启动后出现如下画面:
解决方法:
1) 插入系统光盘,开机进入linux 救援模式
2) #chroot /mnt/sysimage
#mount /dev/hdc /media
#rpm -ivh /media/Server/SysVinit-2.86-15.e15.i386.rpm --force #强制安装
如下图:
重新启动即可。
B /sbin/init 的配置文件/etc/inittab丢失或者损坏
开机时出现如下情况:
解决方法:
可以呼叫bash shell启动,如下:
开机时,直接编辑grub配置内容,指定系统呼叫的第一个启动程序是 /bin/bash 。选定选单,选择 “e”
选择 kernel 这个选单,选择 “e” , 编辑,其后添加 init=/bin/bash
Boot,进入系统,如下图:
此时核心呼叫的第一支程序(init)变成了/bin/bash,此时,虽然root取得了bash来工作,但是(1)除了根目录,其他目录都未挂载,(2)根目录被挂载为只读状态,还需进行如下动作,如下图:
Mount -o remount,rw 是重新挂载根目录,为可读写。
Mount -a 是参考/etc/fstab的内容重新挂载系统文件系统,此时就可进入系统进行救援操作了。 |
|
|
|
|
|
|