Linux系统的救援模式应用详解
http://tech.ddvip.com 2007年09月07日 社区交流
内容摘要:当系统连单用户模式都无法进入时或出现GRUB命令行也不能解决的引导问题,我们就需要使用Linux救援模式来进行故障排除了。
sh-3.1# chroot /mnt/sysimage
2、将根目录切换到硬盘系统的根目录中,然后执行grub-install命令重新安装GRUB:
sh-3.1# grub-install /dev/hda
“/dev/hda”为硬盘名称,如使用SCSI硬盘或Linux安装在第二块IDE硬盘,此项设置要做相应调整。
3、然后依次执行exit命令,退出chroot模式及救援模式(执行两次exit命令):
sh-3.1# exit
sh-3.1# exit
系统重启后,将恢复GRUB引导的双系统启动。
案例二:系统配置文件丢失修复
系统在引导期间,很重要的一个过程就是init进程读取其配置文件/etc/inittab,启动系统基本服务程序及默认运行级别的服务程序完成系统引导,如果/etc/inittab误删除或修改错误,Linux将无法正常启动。此时,只有通过救援模式才可以解决此类问题。
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的引导过程,才能够对故障进行有效的判断和处理。
责编:豆豆技术应用
- Linux/Unix 新闻
- Linux/Unix 入门
- Linux/Unix 命令
- Linux/Unix 安装
- Linux 嵌入式系统
- Linux/Unix 编程
- Linux/Unix 管理
- Linux/Unix 桌面
- Linux/Unix 内核
- Linux/Unix 软件
- SCO Unix
- NetBSD
- OpenBSD
- Redhat/Fedora Linux
- 手机
- Linux/Unix find 搜索命令
- Linux/Unix vi 命令
- Linux/Unix kde 桌面环境
- Linux/Unix GNOME 桌面环境
- Linux/Unix Make 命令
- Linux/Unix crontab 命令
- Linux/Unix ext3 文件系统
- Linux/Unix 文件系统详解
- Linux/Unix ADSL 拨号设置
- Linux/Unix GRUB 配置及应用
- Linux/Unix nfs配置
- Linux/Unix 硬件信息查看及管理
- Linux/Unix 优化
- Linux/Unix 交换分区Swap管理及应用
- Linux/Unix 用户管理
- Linux/Unix Ramdisk
- Linux/Unix 密码恢复管理
- Linux/Unix 文件删除恢复
- Linux/Unix fdisk分区
- Linux/Unix lvs负载均衡管理
- Linux/Unix root用户
- Linux/Unix 集群
- Linux/Unix 日志
- 更多Linux/Unix专题……