[RHEL7基础篇-15] Linux中的急救模式
简介
Linux中的急救模式是一种特殊的启动模式,用于修复系统遇到的严重问题或故障。它提供了一个最小化的系统环境,可以用于诊断和修复问题,而不需要完全启动整个操作系统。进入急救模式后,会以root用户的身份登录系统。在急救模式中,可以执行以下操作:文件系统修复、网络配置、系统重装、密码重置、进程管理、日志查看。请注意,急救模式只适用于修复系统错误和故障,不应用于常规操作。在使用之前需要重启服务器,建议备份重要数据,并确保了解所执行的操作可能带来的风险。
进入急救模式的方法
1、光盘进入
启动服务器在Bios中选择从光盘启动
系统版本 | 选项/命令 |
---|---|
RHEL5 | 直接输入 linux rescue |
RHEL6 | rescue installed system |
RHEL7 | Troubshooting |
光盘内容存放位置
/dev/sr0 /run/install/repo /mnt/install/repo
2、U盘启动
启动服务器在Bios中选择从U盘启动
进入光盘镜像目录(rhel5版本)
> dd if=images/diskboot.img of=/dev/sdb # /dev/sdb 为U盘的设备号
3、硬盘进入急救模式
系统版本 | 进入方法 |
---|---|
RHEL5 | 划分独立分区,存放急救内核和光盘镜像 急救内核:isolinux/vmlinuz 光盘镜像:isolinux/initrd.img 编辑/etc/grub.conf文件,增加启动菜单项 |
RHEL6 | |
RHEL7 | 直接选择rescue启动项 |
急救模式的选择区别
选项 | 效果 |
---|---|
Counitune | 会将存在的系统挂载在/mnt/sysimage下,如果要进行根系统的切换,可以使用命令chroot /mnt/sysimage |
Skip | 需要手动挂载 |
急救模式案例
一、服务端环境(光盘镜像)
1、光盘镜像所在位置在NFS共享路径上
NFS共享路径:/var/ftp/pub/rhel70_64
挂载方式:
mount -t nfs 192.168.0.1:/var/ftp/pub/rhel70_64 /data
2、系统在lvm上的处理
需要先激活才能挂载使用(RHEL5下需要这样),例子如下:
> lvm lvdisplay
> lvm lvchange -a y /dev/VolGroup00/LogVol00
> mount /dev/VolGroup00/LogVol00 /a
> mount 192.168.0.1 /b
> cd /b
> rpm -ivh bash......rpm --root=/a
二、第一个案例
故障现象:系统不停的在重启
模拟方法:
> ln -sf /lib/systemd/system/reboot.target /etc/systemd/system/default.target
解决方式:进入急救模式(U盘、光盘、网络、硬盘急救模式都可以),进行default.target的修改(RHEL7)
三、第二个案例
故障现象:grub头被破坏
模拟方法:
> dd if=/dev/zero of=/dev/sda bs=1 count=446
解决方式:
进入急救模式
选择选项Countinue
> chroot /mnt/sysimage
> grub2-install /dev/sda # 如果是RHEL6,则是grub-install
四、第三个案例
故障现象:/bin/bash被删除
模拟方法:
rm -f 谨慎使用!!!
> rm -f /bin/bash
解决方式:
进入急救模式
1)选择选项Countinue
> mkdir /a
> showmount -e 192.168.0.1
> mount 192.168.0.1:/data/rescue /a
> cd /a
> rpm -ivh bash------.rpm --root=/mnt/sysimage --force
2)选择选项Skip
> mkdir /a
> mkdir /b
> showmount -e 192.168.0.1
> mount 192.168.0.1:/data/rescue /a
> mount /dev/sda1 /b
> cd /a
> rpm -ivh bash-----.rpm --root=/b --force
# 若不加force参数,rpm将会检查是否已安装,由于只是删除了个别文件,rpm中记录还是已安装的,这样会导致修复失败
五、第四个案例
故障现象:/bin/mount被删除
模拟方法:
rm -f 谨慎使用!!!
> rm -f /bin/mount
解决方式:
在急救模式下
> rpm -Uvh —force /mnt/source/utils-linux*.rpm —root /mnt/sysimage
六、第五个案例
故障现象:/boot/initrd.*.img被删除
模拟方法:
rm -f 谨慎使用!!!
> rm -f /boot/initrd.*.img
解决方式:
在急救模式下
> rpm -Uvh --force /mnt/source/kernel-*.rpm --root /mnt/sysimage
七、第六个案例
故障现象:整个/boot分区被删除
模拟方法:
rm -f 谨慎使用!!!
> rm -fr /boot
解决方式:
1)使用第5个案例重做内核
2)然后再补上
> grub2-install /dev/sda
3)可以使用grub2-mkconfig命令生成新配置文件
> grub2-mkconfig -o /boot/grub2/grub.cfg
八、 chroot /mnt/sysimage的操作
1、安装启动头的时候和安装包的时候需要该操作
2、操作后的区别是:新建目录做nfs挂载、“cd /”和rpm 包时不需要加--root=/mnt/sysimage
非急救模式
1、采用硬盘外挂的方式进入新系统对旧系统进行恢复。
2、通过对系统升级的方式进行错误修复。