Linux 云服务器重启后云硬盘未自动挂载

最近更新时间: 2024-10-17 17:10:00

现象描述

已创建文件系统,并已设置文件系统自动挂载至 Linux 云服务器的云硬盘,在云服务器重启后未进行自动挂载。

可能原因

  • 原因1:未在系统的 fstab 配置文件中配置自动挂载云硬盘。

  • 原因2fstab 配置文件配置不当。

    例如,配置为使用设备名称自动挂载,但云服务器重启时设备名称发生改变,导致系统无法正常启动。

解决思路

  • 解决思路1(对应原因1)

    通过以下配置方式重新配置 /etc/fstab 文件,即可实现云服务器重启后对应云硬盘的自动挂载:

    • 使用磁盘的软链接(推荐)

    • 使用文件系统的 UUID(universally unique identifier)

    • 使用设备名称(不推荐)

      具体操作请参见 配置 /etc/fstab 文件

  • 解决思路2(对应原因2)

    通过 VNC 登录 Linux 云服务器,并进入单用户模式。在单用户模式下修复/etc/fstab 配置文件,并进行重新配置。具体操作请参见 修复 /etc/fstab 文件

处理步骤

配置 /etc/fstab 文件

  1. 登录 Linux 云服务器,详情请参见 使用标准登录方式登录 Linux 实例(推荐)

  2. 选择配置方式,并获取对应信息。

使用弹性云硬盘的软链接(推荐)

配置方式分析

  • 优点:每个弹性云硬盘的软链接固定且唯一,不会随卸载挂载、格式化分区等操作而改变。

  • 缺点:仅弹性云硬盘具备软链接,且系统无法感知分区的格式化操作。

信息获取方式

执行以下命令,查看弹性云硬盘的软链接。

ls -l /dev/disk/by-id

返回结果如下图所示:

使用文件系统的UUID

配置方式分析

可能会因文件系统的 UUID 变化而导致自动挂载设置失效。

例如,重新格式化文件系统后,文件系统的 UUID 将会发生变化。

信息获取方式

执行以下命令,查看文件系统的 UUID。

blkid /dev/vdb1

返回结果如下图所示:

使用设备名称(不推荐)

配置方式分析

可能会因设备名称变化而导致自动挂载设置失效。

例如,迁移数据时将云服务器上的弹性云硬盘卸载后再次挂载,操作系统再次识别到该文件系统时,名称可能会变化。

信息获取方式

执行以下命令,查看设备名称。

fdisk -l

返回结果如下图所示:

  1. 执行以下命令,备份 /etc/fstab 文件。本文以备份到 /home 目录下为例:

    cp /etc/fstab /home
  2. 执行以下命令,使用 VI 编辑器打开 /etc/fstab 文件。

    vi /etc/fstab
  3. i 进入编辑模式,并在文件末尾处另起一行,输入以下配置信息。

    <设备信息> <挂载点> <文件系统格式> <文件系统安装选项> <文件系统转储频率> <启动时的文件系统检查顺序>

    您可根据 步骤2 所选的配置方式,参考以下示例进行配置。

    • 使用弹性云硬盘的软链接(推荐)配置示例:
    /dev/disk/by-id/virtio-disk-drkhklpe-part1 /data/newpart   ext4 defaults     0   2
    • 使用文件系统的 UUID 配置示例:
    UUID=d489ca1c-5057-4536-81cb-ceb2847f9954 /data/newpart   ext4 defaults     0   2
    • 使用设备名称(不推荐)配置示例:
    /dev/vdb1 /data/newpart   ext4 defaults     0   2
  4. Esc 输入 :wq 后,再按 Enter 保存设置并退出编辑器。

  5. 执行以下命令,检查 /etc/fstab 文件是否写入成功。

    mount -a 

    返回结果如下图所示,则表示文件已写入成功。文件系统会在云服务器启动时自动挂载,您可重启云服务器进行验证。

修复 /etc/fstab 文件

  1. 使用 VNC 登录云服务器,详情请参见 使用 VNC 登录 Linux 实例

  2. 进入单用户模式,详情请参见 设置 Linux 云服务器进入单用户模式

  3. 执行以下命令,备份 /etc/fstab 文件。本文以备份到 /home 目录下为例:

    cp /etc/fstab /home
  4. 执行以下命令,使用 VI 编辑器打开 /etc/fstab 文件。

    vi /etc/fstab
  5. i 进入编辑模式,将光标移至配置错误行的行首,并输入 # 将该行配置注释。如下图所示:

    说明:

    该行配置了数据盘自动挂载,但由于错误配置实际云服务器重启时未能挂载。

  1. Esc 输入 :wq 后,再按 Enter 保存设置并退出编辑器。

  2. 在单用户模式的命令行中输入 exit,退出单用户模式。

  3. 等待云服务器重启完成后,登录云服务器。

  4. 参考 配置 /etc/fstab 文件 步骤,重新进行配置即可。