You need to enable JavaScript to run this app.
导航

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

最近更新时间2023.03.21 14:08:04

首次发布时间2023.03.21 14:08:04

问题描述

通过PuTTY等远程连接软件无法登录Linux实例,通过VNC远程登录实例时进入紧急模式(Emergency mode)。

问题原因

可能是由于/etc/fstab文件写入了错误的挂载信息、磁盘的分区信息不正确,或是持久化了信息导致实例冷迁移后无法正常启动。该文件用于指定系统引导时需要挂载的文件系统和其他设备的信息,当配置错误时就可能导致实例启动失败。

解决方案

CentOS

方法一

  1. 使用VNC登录故障实例,操作详情可查看通过控制台登录Linux实例

  2. 进入紧急模式界面后,输入root用户登录密码。

  3. 执行如下命令,将根分区的挂载模式变更为读写。

    mount / -o remount,rw
    
  4. 执行如下命令,查看并记录示例磁盘分区及文件系统信息。

    请记录命令返回的数据。

    blkid
    

    示例如下:

  5. 执行如下命令,查看当前/etc/fstab文件中配置的块设备信息。

    请记录命令返回的数据。

    cat /etc/fstab
    

    示例如下:

  6. 若/etc/fstab文件配置信息与不一致。

    1. 执行如下命令,编辑文件。

      vim /etc/fstab
      
    2. i键进入编辑模式,将光标移动到异常行写入正确的分区信息。
      例如:注释掉示例中多余的UUID=dca7cd1b-0fe2-5c4f-17d9-eb7611a1f7ea块设备。

    3. 完成所有修改后,按ecs键,输入:wq并按enter键保存修改,退出文件。

  7. 执行reboot命令,重启系统。

  8. 若正常启动系统,即修复成功。

方法二

  1. 登录云服务器控制台,重启(强制重启)有问题的实例。操作详情可查看重启实例

  2. 使用VNC连接实例,操作详情可查看通过控制台登录Linux实例

  3. 当系统启动至内核选择界面时,按键选择目标内核。

  4. e键进入修改Grub引导文件页面。

  5. 将光标定位至Linux内核参数行,删除root=UUID=xxx后的内核参数,添加rw init=/bin/bash,如下图所示。

  6. Ctrl + x键,进入单用户模式。

  7. 执行“CentOS > 方法一”中3~7步骤,修改/etc/fstab文件并重启实例即可。

Ubuntu

方法一

  1. 使用VNC登录故障实例,操作详情可查看通过控制台登录Linux实例

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

  3. 执行“CentOS > 方法一”中的3 ~7步骤即可。

方法二

操作步骤与“CentOS > 方法二”一致,详情可查看方法二