Linux系统启动故障修复
切换到硬盘系统的根目录中,然后执行grub-install命令重新安装GRUB:sh-3.1# grub-install /dev/hda“/dev/hda”为硬盘名称,如使用SCSI硬盘或Linux安装在第二块IDE硬盘,此项设置要做相应调整.
3、然后依次执行exit命令,退出chroot模式及救援模式(执行两次exit命令):sh-3.1# exit系统重启后,将恢复GRUB引导的双系统启动. 案例二:系统配置文件丢失修复 系统在引导期间,很重要的一个过程就是init进程读取其配置文件/etc/inittab,启动系统基本服务程序及默认运行级别的服务程序完成系统引导,如果/etc/inittab误删除或修改错误,Linux将无法正常启动,如图7所示.此时,只有通过救援模式才可以解决此类问题. 图7 /etc/inittab文件丢失引导错误示例 1、有备份文件的恢复办法进入救援模式,执行chroot命令后,如果有此文件的备份(强烈建议系统中的重要数据目录,如/etc、/boot等要进行备份),直接将备份文件拷贝回去,退出重启即可.如果是配置文件修改错误,如比较典型的/boot/grub/grub.conf及/etc/passwd的文件修改错误,也可以直接修正恢复.假设有备份文件/etc/inittab.bak,则在救援模式下执行:sh-3.1# chroot /mnt/sysimage sh-3.1# cp /etc/inittab.bak /etc/inittab 2、没有备份文件的恢复办法如果一些配置文件丢失或软件误删除,且无备份,可以通过重新安装软件包来恢复,查找到/etc/inittab属于哪一个RPM包(即便文件丢失,存在RPM数据库,一样可以查找到结果):sh-3.1# chroot /mnt/sysimage sh-3.1# rpm -qf /etc/inittab initscripts-8.45.3-1 退出chroot模式:sh-3.1# exit 挂载存放RPM包的安装光盘(在救援模式下,光盘通常挂载在/mnt/source目录下):sh-3.1# mount /dev/hdc /mnt/source Fedora系统的RPM包存放在光盘Fedora/RPMS目录下,其他Linux存放位置大同小异,这里不一一列举;另外,要修复的硬盘系统的根目录在/mnt/sysimage下,需要使用——root选项指定其位置.覆盖安装/etc/inittab文件所在的RPM包:sh-3.1# rpm -ivh ——replacepkgs ——root /mnt/sysimage /mnt/source/Fedora/RPMS/ initscripts-8.45.3-1.i386.rpm其中的rpm命令选项“——replacepkgs”表示覆盖安装,执行完成后,即已经恢复了此文件. 如果想只提取RPM包中的/etc/inittab文件进行恢复,可以在进入救援模式后,执行命令:sh-3.1# rpm2cpio /mnt/source/Fedora/RPMS/initscripts-8.45.3-1.i386.rpm | cpio -idv ./etc/inittab sh-3.1# cp etc/inittab /mnt/sysimage/etc 注意此命令执行时不能将文件直接恢复至/etc目录,只能提取到当前目录下,且恢复的文件名称所在路径要写完整的绝对路径.提取文件成功后,将其复制到根分区所在的/mnt/sysimage目录下相应位置即可. 救援模式是维护Linux的有力武器,本文以上述两个例子讲解了它的应用方法,希望能够给读者一点启示.解决Linux系统启动的故障,充分理解Linux的引导过程,才能够对故障进行有效的判断和处理. |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |