Linux rescue

适用场景:linux

   当误操做修改系统启动文件/etc/fstab, /etc/rc.d/rc.sysinit时,就会形成系统启动时读取磁盘或初始化环境失败,致使linux没法正常启动,此时就能够借助Linux的救援模式临时进入系统,进行文件修改,纠正错误shell

 

救援(rescue)模式的本质:安全

   只是一个带shell的Linux运行环境,借助它能够经过mount和chroot进入要修复的系统bash

 

解决方法:网络

  1. 有Linux启动盘(或iso文件),系统是RHEL系统的:spa

    1. 用安装光盘或者硬盘安装的方式进入安装界面:在shell 中输入 Linux rescuecode

    2. 而后根据提示选择语言和键盘格式blog

    3. 选择是否配置网卡:通常系统到了要rescue了,网络也就不须要了,因此能够选择跳过网卡配置,固然你若是须要也能够选择是,具体设置过程和安装时同样rem

    4. 选择是否让系统查找硬盘上的RHEL系统,选择继续。部署

    5. 硬盘上的系统已经被找到并挂载在/mnt/sysimage 下

    6. 按提示chroot /mnt/sysimage,以后你就能够已经在你的要被拯救的系统下了

      1. grub挂了的:grub-install /dev/hdxx

      2. 配置文件改错的:vi /etc/fstab vi /etc/inittab

      3. 软件包被毁的:rpm -F xxx.rpm

    7. 完成修复工做后,exit命令退出chroot,exit退出rescue shell 系统重启

       

       

  2. 有Linux启动盘(或iso文件),系统是非RHEL系统(如Debian)的:

    1. 前3步与上述方法1一致

    2. 第4步时,rescue程序会找不到硬盘上的系统,因此咱们选择"跳过",直接进入shell

    3. 新建文件系统挂载点,进入系统磁盘分区

    4. 假设要拯救的为debian 系统,系统分区部署为:
      /dev/hda1 为/boot分区
      /dev/hda5 为/分区
      /dev/hda6 为swap分区
      ==================================================
      # fdisk -l (查看分区状况)
      # mkdir /mnt/Linux
      # mkdir /mnt/Linux/boot (根据fdisk -l 获得的信息建立目录)
      # mount -t ext3 /dev/hda5 /mnt/Linux
      # mount -t ext3 /dev/hda1 /mnt/Linux/boot (挂载硬盘上的文件系统)
      # chroot /mnt/Linux (chroot 改变工做系统)
    5. 继续方法1的第6-7步,作相应操做便可

       

  3. 无Linux启动盘(或iso文件):

    1. 系统启动时,按任意键进入grub选择界面

    2. 选择须要启动的Linux系统,按“e”进入编辑界面

    3. 选择kernel行,按“e”进入核心启动模式编辑界面

    4. 在kernel行的最后加上“init=/bin/bash”,按回车键(Enter),而后按“b”进行从新引导

    5. 引导系统会获得一个bash shell,但进入的系统是read-only的,需使用fsck检查系统

    6. fsck -a /dev/hdaX
      # 处理根分区,X是根分区号,如hda2
    7. 将系统挂载成read-write的:mount / -o remount,rw

    8. 进行系统文件修改,或其余操做

    9. 在修复好系统后将系统从新挂载成ro的,就能够安全重启了:mount / -o remount,ro

       

  4. 进入单用户模式(适用于忘记root密码的):

    1. 前3步与方法3一致

    2. 第4步,需在kernel行的最后加上“single”或“s”,按回车键(Enter),而后按“b”进行从新引导

    3. 输入passwd修改root密码

    4. 输入init 6从新启动系统便可

相关文章
相关标签/搜索