Linux救援模式
故障背景:
- 误删除或修改/etc/passwd导致无法远程登录.
- 禁止root远程登录,没有添加普通用户,无法远程登录.
- root密码忘记,无法远程登录.
- linux无法启动
1.解决方案
root密码,恢复有备份的系统文件,都要重启系统,才能进入救援模式
解决方案 |
应用场景 |
系统自带的救援模式 |
系统还可以正常使用,损坏不是太大. 系统无法启动. |
U盘(光盘)的系统进入U盘救援模式 |
系统不可用,无法正常启动. |
快照 |
虚拟机(虚拟化,超融合),云服务器 |
2.系统自带的救援模式 ⭐️⭐️⭐️⭐️⭐️
- selinux关闭.
- 重启Linux
- 在GRUB菜单选择第1个然后按e编辑(edit). root用户名,Kylin123123
- 找出Linux16的行修改 ro 为 rw ,在这一行的最后添加 init=/bin/bash
- 修改完成,按ctrl+x进入救援模式(命令较少).
- 根据故障针对性操作: 修改/etc/passwd去掉root的x,然后重启.
- 进入系统通过root用户,然后通过passwd命令给root设置新的密码.
2.1 centos系统操作流程
1.重启,在菜单处(鼠标放到虚拟机外面)按e, 然后输入root,密码Kylin123123
2.找出linux的行,修改ro为rw,行尾加上init=/bin/bash 然ctrl + x启动
如下图已经进入紧急模式
将root用户密码清空,vim /etc/passwd
如图所示将x(密码标识区)去掉
重启登录后重新设置密码
2.2 Ubutu系统操作流程
重启按e
修改完成,按ctrl+x进入救援模式
3.U盘/光盘救援模式
3.1 centos系统操作流程
物理机/虚拟机 无法进入Linux系统,系统自带的救援模式无法进入.
- 插入U盘或光盘
- 重启并在弹出vmware logo的时候按下esc键(1次).
- 选择通过光盘启动
- 进入到安装系统的页面,选择troubleshooting,然后选择rescue installed system
- 进入系统后执行fdisk+mount指令(细节看下面)
找到光盘
重启后立马将鼠标放到虚拟机内部中央,在弹出vmware logo的时候按下esc键(1次). 选择 CD-ROM Drive
选择Troubleshooting
选择如下
看到如下内容,回车
查找根目录对应的磁盘:fdisk -l | grep root
将根目录对应的磁盘挂载到/mnt下:mount /dev/mapper/klas-root /mnt
现在/mnt目录相当于之前的根目录,可以进行想要的操作。
3.2 Ubuntu系统操作流程
4 光盘
4.1 定义与构成
- 定义:Linux镜像是一个包含了操作系统的所有组件和文件的压缩文件,这些文件被打包在一起以便于安装、复制和使用。
- 构成:它通常包括内核、文件系统、库文件、驱动程序以及其他必要的系统文件。这些文件共同构成了Linux操作系统的基础架构。
4.2 用途
- 安装与部署:用户可以通过下载Linux镜像来安装和使用Linux系统。镜像文件可以被烧录到CD、DVD、USB闪存驱动器或虚拟机中,作为安装介质。
- 备份与还原:Linux镜像还可以用于备份和还原系统,确保在系统出现故障或需要迁移时能够快速恢复。
- 创建虚拟机:在虚拟机软件中,如VirtualBox或VMware等,可以将Linux镜像作为虚拟机的硬盘来使用,从而创建一个虚拟的Linux环境。
4.3 格式与来源
- 格式:Linux镜像通常以ISO、IMG或IMG.gz等格式存在。ISO是一种光盘镜像格式,可用于创建可引导的安装介质或虚拟光驱;IMG是一种磁盘镜像格式,可进行直接复制或在虚拟机中加载;IMG.gz则是经过压缩的磁盘镜像文件。
- 来源:Linux镜像可以由Linux发行版的官方团队创建和发布,也可以由开发者或社区进行定制和制作。这些镜像基于特定版本的Linux内核和软件包,并经过配置和调试,以提供特定的功能和用户体验。
4.4 特性与优势
- 完整性:Linux镜像包含了操作系统的所有必要组件,保证了系统的完整性和可靠性。
- 可移植性:镜像文件可以轻松地复制到不同的计算机或设备上进行安装和部署,实现系统的快速部署和迁移。
- 版本控制:通过镜像文件,用户可以轻松地创建和管理不同版本的操作系统,方便进行版本控制和更新。
4.5 镜像与固件的区别
需要注意的是,Linux镜像与固件是两个不同的概念。固件是嵌入在计算机硬件设备中的软件程序,用于控制硬件设备的操作和功能,而Linux镜像则是操作系统的一个完整副本或安装包。
综上所述,Linux镜像是Linux操作系统的一种重要形式,它包含了操作系统的所有组件和文件,用于安装、部署、备份和还原系统。通过镜像文件,用户可以轻松地创建和管理Linux环境,满足不同场景下的需求。
镜像里有什么?
[root@Kylin-V10-sp3 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 459M 0 459M 0% /dev
tmpfs 475M 0 475M 0% /dev/shm
tmpfs 475M 6.9M 468M 2% /run
tmpfs 475M 0 475M 0% /sys/fs/cgroup
/dev/mapper/klas-root 66G 4.6G 61G 7% /
tmpfs 475M 0 475M 0% /tmp
/dev/sda1 1014M 151M 864M 15% /boot
/dev/mapper/klas-backup 32G 313M 32G 1% /backup
tmpfs 95M 0 95M 0% /run/user/0
[root@Kylin-V10-sp3 ~]#
[root@Kylin-V10-sp3 ~]# ls /dev/
ashmem disk hwbinder mqueue rtc0 sg1 tty10 tty23 tty36 tty49 tty61 ttyS16 ttyS29 usbmon1 vcsa5 vmci
autofs dm-0 hwrng net sda sg2 tty11 tty24 tty37 tty5 tty62 ttyS17 ttyS3 usbmon2 vcsa6 vndbinder
binder dm-1 initctl network_latency sda1 sg3 tty12 tty25 tty38 tty50 tty63 ttyS18 ttyS30 vcs vcsu zero
block dm-2 input network_throughput sda2 sg4 tty13 tty26 tty39 tty51 tty7 ttyS19 ttyS31 vcs1 vcsu1
bsg dmmidi ion null sdb shm tty14 tty27 tty4 tty52 tty8 ttyS2 ttyS4 vcs2 vcsu2
btrfs-control dri klas nvram sdb1 snapshot tty15 tty28 tty40 tty53 tty9 ttyS20 ttyS5 vcs3 vcsu3
bus ecryptfs kmsg port sdb2 snd tty16 tty29 tty41 tty54 ttyS0 ttyS21 ttyS6 vcs4 vcsu4
cdrom fb0 log ppp sdb5 sr0 tty17 tty3 tty42 tty55 ttyS1 ttyS22 ttyS7 vcs5 vcsu5
char fd loop-control ptmx sdc stderr tty18 tty30 tty43 tty56 ttyS10 ttyS23 ttyS8 vcs6 vcsu6
console full mapper pts sdc1 stdin tty19 tty31 tty44 tty57 ttyS11 ttyS24 ttyS9 vcsa vfio
core fuse mcelog random sdd stdout tty2 tty32 tty45 tty58 ttyS12 ttyS25 uhid vcsa1 vga_arbiter
cpu hidraw0 mem raw sdd1 tty tty20 tty33 tty46 tty59 ttyS13 ttyS26 uinput vcsa2 vhci
cpu_dma_latency hpet memory_bandwidth rfkill sdd2 tty0 tty21 tty34 tty47 tty6 ttyS14 ttyS27 urandom vcsa3 vhost-net
cuse hugepages midi rtc sg0 tty1 tty22 tty35 tty48 tty60 ttyS15 ttyS28 usbmon0 vcsa4 vhost-vsock
[root@Kylin-V10-sp3 ~]#
# 镜像是只读的,可挂载
[root@Kylin-V10-sp3 ~]# mount /dev/cdrom /mnt/
mount: /mnt: WARNING: source write-protected, mounted read-only.
[root@Kylin-V10-sp3 ~]#
[root@Kylin-V10-sp3 /mnt]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 459M 0 459M 0% /dev
tmpfs 475M 0 475M 0% /dev/shm
tmpfs 475M 6.9M 468M 2% /run
tmpfs 475M 0 475M 0% /sys/fs/cgroup
/dev/mapper/klas-root 66G 4.6G 61G 7% /
tmpfs 475M 0 475M 0% /tmp
/dev/sda1 1014M 151M 864M 15% /boot
/dev/mapper/klas-backup 32G 313M 32G 1% /backup
tmpfs 95M 0 95M 0% /run/user/0
/dev/sr0 4.3G 4.3G 0 100% /mnt
[root@Kylin-V10-sp3 /mnt]#
[root@Kylin-V10-sp3 ~]# cd /mnt/
[root@Kylin-V10-sp3 /mnt]#
[root@Kylin-V10-sp3 /mnt]# ls
EFI images isolinux kylin-sm-package LICENSE manual Packages repodata TRANS.TBL
[root@Kylin-V10-sp3 /mnt]#
[root@Kylin-V10-sp3 /mnt]# ll Packages/ | head
总用量 3409391
-r--r--r-- 1 root root 322904 3月 15 2023 abattis-cantarell-fonts-0.201-1.ky10.noarch.rpm
-r--r--r-- 1 root root 19640 3月 15 2023 abattis-cantarell-fonts-help-0.201-1.ky10.noarch.rpm
-r--r--r-- 1 root root 503036 3月 15 2023 abrt-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 99304 3月 15 2023 abrt-addon-ccpp-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 29480 3月 15 2023 abrt-addon-kerneloops-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 13844 3月 15 2023 abrt-addon-pstoreoops-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 24388 3月 15 2023 abrt-addon-vmcore-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 24884 3月 15 2023 abrt-addon-xorg-2.13.0-9.ky10.x86_64.rpm
-r--r--r-- 1 root root 57668 3月 15 2023 abrt-dbus-2.13.0-9.ky10.x86_64.rpm
[root@Kylin-V10-sp3 /mnt]#
[root@Kylin-V10-sp3 /mnt]#
[root@Kylin-V10-sp3 /mnt]# ll Packages/ | grep tree
-r--r--r-- 1 root root 505908 3月 15 2023 ostree-2020.4-2.ky10.x86_64.rpm
-r--r--r-- 1 root root 66716 3月 15 2023 ostree-help-2020.4-2.ky10.noarch.rpm
-r--r--r-- 1 root root 67024 3月 15 2023 python3-anytree-2.8.0-1.ky10.noarch.rpm
-r--r--r-- 1 root root 1044092 3月 15 2023 rpm-ostree-2018.8-2.ky10.x86_64.rpm
-r--r--r-- 1 root root 15408 3月 15 2023 rpm-ostree-help-2018.8-2.ky10.noarch.rpm
-r--r--r-- 1 root root 18792 3月 15 2023 texlive-pst-tree-svn43272-24.ky10.noarch.rpm
-r--r--r-- 1 root root 52192 3月 15 2023 tree-1.8.0-2.ky10.x86_64.rpm
[root@Kylin-V10-sp3 /mnt]#
5 故障案例
5.1 案例1 现象
- 重启,启动Linux的时候,没有进入到命令行,欢迎页面.进入到提示内容.
- 关键提示:
Welcome to emergency mode. 欢迎来到紧急救援模式.
Give root password for maintenance 输入root密码,进入模式..
- Linux启动流程中,初始化(ip,主机名,fstab自动挂载)
原因与排查
- 磁盘有问题.
- fstab文件配置不当.
- 其他原因通过 journalctl -xb 查看日志定位其他原因.
5.2 案例2 现象
Read-only file system: 文件系统只读(无法创建文件或目录,只能查看)
原因
- 磁盘挂了.
- fstab配置不当.
解决
- mount -o rw,remount /
- 上面命令失败,通过系统救援模式,U盘救援模式去修改