问题描述
ECS实例系统启动失败,通过管理终端登录后发现系统提示如下错误。
UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
系统显示类似如下。
问题原因
可能是由于断电等情况导致ECS实例迁移到其他的后端物理机上,内存数据丢失引发文件系统错误,比如无效的inode等。而操作系统启动时一般会做fsck检查。如果检查到异常,系统默认自动修复;如果出现如下情况,系统不会自动修复,而是停留在上述报错页面,并提示需要手动运行fsck工具。
- 异常关机导致内存数据丢失,进而引发inode错误。自动修复可能会删除部分异常关机导致的无效inode。
解决方案
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
不同的操作系统修复方式不同,此处介绍如下2种方式,请根据现场实际情况选择对应的方式。
- 急救模式:如果当前系统支持急救模式,则进入急救模式运行fsck检查并修复文件系统。
注:Ubuntu系统支持急救模式,其他系统请参考对应的官方文档。
- GRUB选择页面:参考如下步骤进行修复。
注:不同的操作系统进入GRUB的方式不同,此处以CentOS7为例,现场以实际情况为准。
- 在GRUB选择页面选择目标Kernel。输入 e 进行编辑。
- 选择要编辑的Kernel GRUB参数,在尾部加入如下参数。
fsck.mode=force
系统显示类似如下。
fsck.repair=yes - 按 Ctrl + X 键启动系统。
适用于
- 云服务器 ECS