OpenEuler系统(华为欧拉系统)启动失败,引导问题进入紧急模式(文件系统类型问题)
1. 故障现象
- 症状:系统开机无法正常进入图形界面或登录界面,直接 dropped into Emergency Mode(紧急模式)。
- 关键报错:
EXT4-fs (dm-2): VFS: Can't find ext4 filesystem
系统提示无法找到 EXT4 文件系统,导致挂载失败。
2. 故障原因分析
经过排查,根本原因并非文件系统损坏,而是配置文件错误。
- 实际环境:该系统(OpenEuler)的 LVM 逻辑卷(root 和 home)实际使用的是 XFS 文件系统。
- 配置错误:
/etc/fstab文件中,根分区(/)和home分区(/home)的文件系统类型被错误地标记为ext4。 - 后果:系统启动时,尝试用 EXT4 的驱动去挂载 XFS 格式的分区,导致识别失败,进而触发紧急模式。
3. 排查与解决步骤
第一步:进入紧急模式 Shell
在报错界面输入 root 密码,进入命令行模式。
第二步:初步诊断(排除法)
- 查看逻辑卷状态: 输入
lvs查看分区情况,确认分区名称(如openeuler-root,openeuler-home)。 - 尝试修复:
- 尝试使用
fsck修复,系统提示该设备包含 XFS 文件系统(说明fsck工具不匹配)。 - 尝试使用
xfs_repair修复根分区,系统提示contains a mounted filesystem(说明分区已挂载,无法直接修复,侧面证明根分区可能并未损坏,只是挂载参数不对)。
- 尝试使用
第三步:定位根本原因
查看文件系统挂载配置文件:
cat /etc/fstab
发现错误配置:
# 错误写法
/dev/mapper/openeuler-root / ext4 defaults 1 1
/dev/mapper/openeuler-home /home ext4 defaults 1 2
正确应为(OpenEuler/CentOS 7+ 默认使用 XFS):
# 正确写法
/dev/mapper/openeuler-root / xfs defaults 1 1
/dev/mapper/openeuler-home /home xfs defaults 1 2
第四步:修复配置
- 使用 vi 编辑器修改文件:
vi /etc/fstab - 将
ext4修改为xfs。- 注意:编辑时需仔细,避免多输入字符、输入错误字符等。
- 保存退出(按
Esc,输入:wq,回车)。
第五步:重启系统
由于在紧急模式下 reboot 命令可能失效(报错 Running in chroot),采取以下任一方式重启:
- 方法 A:输入
exit尝试继续启动流程。 - 方法 B:直接按机箱电源键强制重启。
本次使用exit无响应,亦使用物理强制关机重启机器,重启后系统正常引导
4. 经验总结与知识点
- 文件系统类型匹配:
- CentOS 7 / OpenEuler / RHEL 7+:默认文件系统是 XFS。
- Ubuntu / Debian:默认文件系统通常是 EXT4。
- 在修改
/etc/fstab或克隆系统时,务必确认实际的文件系统类型(可用df -T或lsblk -f查看)。
- 紧急模式下的限制:
- 在 Emergency Mode 下,系统服务未完全加载,
reboot和shutdown命令经常无法使用。 - 如果软件重启无效,直接物理重启是安全的(因为此时并没有进行危险的写入操作)。
- 在 Emergency Mode 下,系统服务未完全加载,
- XFS 文件系统的修复:
- 不能用
fsck,必须用xfs_repair。 - 修复前必须卸载分区(umount),如果分区已挂载(如根分区),通常需要使用 Live USB(安装盘)进入救援模式才能修复。
- 不能用
本次故障定性:配置失误(Configuration Error),非硬件损坏或数据丢失。
OpenEuler系统(华为欧拉系统)启动失败,引导问题进入紧急模式(文件系统类型问题)
http://blog.thr33h.com/archives/019cea47-83b2-73df-bd86-e0372df3c8d8
评论