本文作者:不许人间见白头

Linux实例/etc/fstab文件配置错误导致系统启动异常

不许人间见白头 2个月前 ( 12-16 ) 73

Linux系统(包括Ubuntu)里的/etc/fstab文件主要用于保存服务器的磁盘挂载信息,如果该配置文件中写入不正确的挂载信息或者该文件自身存在访问错误(权限配置、文件丢失等),系统启动时就可能出现异常,导致启动失败。本文描述了CentOS和Ubuntu系统里因为/etc/fstab配置文件错误导致启动失败的现象,并给出了相应的解决方法。


说明:本文相关配置及说明适用于CentOS 6.5、CentOS 7.0、Ubuntu12.04和Ubuntu14.04等操作系统。在其它操作系统版本上的配置可能有所差异,具体情况请参阅相应操作系统官方文档。

CentOS

问题现象

通过远程连接软件无法登录Linux实例,通过 管理终端 远程连接时系统进入到急救模式(emergency mode),报错 

blob.png

问题原因

一般是因为/etc/fstab文件中写入了错误的文件系统或者磁盘的分区信息不正确

解决方法

1、进入终端,按照系统提示进入急救模式,输入实例的登入密码

2、运行 mount / -o remount,rw,变更根分区的挂载模式为读写。

3、运行 blkid 查看ECS实例上磁盘的分区情况以及文件系统。如下图所示,本示例中的ECS实例数据盘分区为/dev/xvdb1,文件系统为ext4。

blob.png

4运行 vim /etc/fstab,检查磁盘的分区信息与文件系统和 blkid 返回的结果是否一致。如果不一致,按以下步骤修改:

4.1、将光标移到异常的参数行,按 i 键进入编辑模式。

4.2、写入正确的分区信息。

4.3、按 Esc 键退出编辑模式,并输入 :wq!,按回车键后保存并退出。

5、运行 reboot 重启系统。确认ECS实例是否能成功进入系统。


Ubuntu

问题现象

通过远程连接软件无法登录Linux实例,通过 管理终端 远程连接时系统提示:

报错

An error occurred while mounting /alidata.

Press S to skip mounting or M for manual recovery

blob.png

问题原因

一般是因为/etc/fstab文件中写入了错误的文件系统或者磁盘的分区信息不正确。

解决方法

按以下步骤修复:

1、通过 管理终端 远程连接ECS实例。

2、按 S 键跳过磁盘挂载,进入系统。

3、运行 mount / -o remount,rw,变更根分区的挂载模式为读写。

4、运行 blkid 查看ECS实例上磁盘的分区情况以及文件系统。如下图所示,本示例中的ECS实例数据盘分区为/dev/xvdb1,文件系统为ext4。

blob.png

5、运行 vim /etc/fstab,检查磁盘的分区信息与文件系统和 blkid 返回的结果是否一致。如果不一致,按以下步骤修改:

5.1、将光标移到异常的参数行,按 i 键进入编辑模式。

5.2、写入正确的分区信息。

5.3、按 Esc 键退出编辑模式,并输入 :wq!,按回车键后保存并退出。

6、运行 reboot 重启系统。确认ECS实例是否能成功进入系统。

文章版权及转载声明

作者:不许人间见白头本文地址:https://www.ahaoyw.com/article/213.html发布于 2个月前 ( 12-16 )
文章转载或复制请以超链接形式并注明出处阿豪运维笔记

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏