首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux基础>安装配置>正文

Linux系统的救援模式应用详解

http://www.oklinux.cn  2007-09-06  赛迪网 kid  会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

当系统连单用户模式都无法进入时或出现GRUB命令行也不能解决的引导问题,我们就需要使用Linux救援模式来进行故障排除了。步骤如下:

 

  1、将Linux安装光盘(如果使用CD光盘,则放入第一张引导光盘)放入光驱,设置固件CMOS/BIOS为光盘引导,当Linux安装画面出现后,在“boot:”提示符后输入“linux rescue”回车进入救援模式。(想了解救援模式详细信息,还可以按F5键查看)

  2、系统会检测硬件,引导光盘上的Linux环境,依次提示你选择救援模式下使用的语言(建议选择默认的英文即可,根据笔者测试,部分Linux系统选择中文会出现乱码);键盘设置用默认的“us”就好;网络设置可以根据需要,大部分故障修复不需要网络连接,可不进行此项设置,选择“No”。

  3、接下来系统将试图查找根分区。

  默认在救援模式,硬盘的根分区将挂载到光盘Linux环境的/mnt/sysimage目录下,默认选项“continue”表示挂载权限为读写;“Read-only”为只读,如果出现检测失败可以选择“skip”跳过。此处,因为要对系统进行修复,所以需要有读写权限,一般选择默认选项“continue”。进入下一步后,系统提示执行“chroot /mnt/sysimage”命令,可以将根目录挂载到我们硬盘系统的根目录中去。

  案例一:双系统启动修复

  当我们安装双系统环境,先安装Linux再安装Windows;或者已经安装好双系统环境的Windows损坏,在重新安装Windows后,保存 GRUB的MBR(Master Boot Record,主引导记录)会被Windows系统的自举程序NTLDR所覆盖,造成Linux系统无法引导。

  1、如果要恢复双系统引导,首先用上述方法进入救援模式,执行chroot命令如下:
  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系统修改默认的Mount分区的方法   下一篇:Linux系统文本模式下安装VMware虚拟机

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Linux系统修改默认的Mount分区的方法
·Linux操作系统NFS配置部署过程
·Redhat5 Server下载、序列号以及相关介绍
·双系统重装Windows后引导Linux的小技巧
·Grub提示符下进入Windows系统的方法介绍
·在GRUB中修改多操作系统的默认启动顺序
·Linux系统上WebLogic的安装及其配置
·Linux对EXT3分区大小进行无损更改的步骤
·GPT磁盘:Linux系统下大于2T磁盘的使用
·用U盘加载控制器驱动安装Linux系统
·使用USB闪存启动并安装Ubuntu Linux系统
·Ubuntu Linux系统安装任务列表详细介绍
·Redhat Linux系统下安装IE浏览器的方法
·VMware在Linux上安装时内核头文件的问题
·删除Ubuntu Linux系统旧内核的方法
·Ubuntu Linux操作系统安装后的自定义设置
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Fedora11 beta i386安装图解
·红旗Linux 6.0 SP1桌面安装图解
·利用虚拟机在移动硬盘中安装Puppy Linu
·红旗Linux6.0 SP1桌面版安装 xfce 4.4.
·利用Ubuntu 8.10的usb-creator创建Live
·Ubuntu 8.10 更新源整理
·用kexec迅速切换内核
·Bazaar:分布式的版本控制系统
·Linux终端捕获
·openSUSE 11.0 NTFS分区硬盘安装过程
·GRUB2 引导程序的发展目标
·SUSE10.3恢复GRUB方法
  阅读排行
·Ubuntu 8.10 更新源整理
·从硬盘安装RHEL 5(Red Hat Enterprise
·Redhat5 Server下载、序列号以及相关介
·Linux对EXT3分区大小进行无损更改的步
· 在U盘上安装Damn Small Linux
·Fedora11 beta i386安装图解
·Ubuntu Linux 中 ADSL PPPoE 宽带上网
·主流显卡Linux驱动安装-Intel、ATi篇
·安装Ubuntu Linux分区的推荐方案和方法
·XP下硬盘安装Ubuntu8.04的2种方法
· U盘上运行的linux系统--babylinux
·Linux的GRUB引导程序配置方法大全
·新手学堂 详细讲解Ubuntu Server安装过
·Linux文件的复制、删除和移动命令
·让linux系统可以Mount NTFS分区
网摘收藏: