裸设备是指没有做过分区且没有经过任何文件系统格式化的云盘设备。本文为您介绍如何在裸设备上创建一个文件系统。

前提条件

数据盘已挂载到ECS实例。具体操作,请参见挂载数据盘

操作场景

如果您的整块数据盘只呈现为一个独立的分区(例如/dev/vdb),不需要划分逻辑分区(例如/dev/vdb1、/dev/vdb2等),云盘初始化时直接在裸设备上创建文件系统即可。该场景仅适用于Linux系统的ECS实例。

操作步骤

本示例以公共镜像Alibaba Cloud Linux 2.1903 LTS 64位操作系统为例,请您需要根据实际情况进行操作。

  1. 远程连接ECS实例。
  2. 运行以下命令,获取数据盘的设备名称。
    fdisk -l 
    例如回显如下信息,表示ECS实例有两块云盘,/dev/vda表示系统盘,/dev/vdb表示数据盘。查看云盘信息
  3. 运行以下命令,安装e2fsprogs工具。
    yum install -y e2fsprogs
    说明 此步骤中yum命令适用于CentOS等Linux发行版本。其他Linux发行版本,请根据实际使用的包管理软件修改安装命令。例如Debian或Ubuntu,请使用apt-get install <软件包名称>
  4. 运行以下命令,为目标数据盘创建文件系统。
    不同文件系统支持的分区大小不同,请您根据实际需求创建文件系统。以下示例命令介绍如何创建ext4和xfs文件系统。
    • 创建一个ext4文件系统
      mkfs.ext4 /dev/vdb
      其中,/dev/vdb是数据盘的设备名,请您根据实际环境替换。
      重要
      • 当数据盘容量为16 TiB,在创建ext4文件系统报错时,您需要检查e2fsprogs工具包的版本是否高于1.42,并安装高版本的e2fsprogs工具包。具体操作,请参见如何升级e2fsprogs工具包?
      • ext4文件系统的lazy init功能会影响数据盘的I/O性能,您可以关闭ext4文件系统的lazy init功能。具体操作,请参见如何关闭Linux实例的lazy init功能?
    • 创建一个xfs文件系统
      mkfs.xfs /dev/vdb
      其中,/dev/vdb是数据盘的设备名,请您根据实际环境替换。
  5. 可选:运行以下命令,为目标数据盘创建挂载点。
    您也可以将目标数据盘挂载到已有目录下,无需创建新的挂载点。本示例以创新建挂载点/media/test为例,请您根据实际环境替换。
    mkdir /media/test
  6. 运行以下命令,将目标数据盘挂载至新建的挂载点。
    本示例以挂载数据盘/dev/vdb至挂载点/media/test为例,请您根据实际环境替换。
    mount /dev/vdb /media/test
  7. 运行以下命令,查看是否挂载成功。
    df -h
    如下所示显示数据盘/dev/vdb对应的挂载点信息,表示挂载成功。挂载成功
  8. 可选:配置/etc/fstab文件并挂载分区。
    如果您需要设置开机自动挂载云盘,需要在/etc/fstab文件中写入新分区信息,启动开机自动挂载分区。
    1. 运行以下命令,备份etc/fstab文件。
      cp /etc/fstab /etc/fstab.bak
    2. 运行以下命令,在/etc/fstab文件中写入新分区信息。
      • 如果您使用root用户,可以运行以下命令修改/etc/fstab文件。
        echo `blkid /dev/vdb | awk '{print $2}' | sed 's/\"//g'` /media/test ext4 defaults 0 0 >> /etc/fstab
        其中:
        • /dev/vdb:数据盘的设备名称,您需要根据实际环境进行替换。
        • /media/test:分区的挂载点,您需要根据实际环境进行替换。
        • ext4:分区的文件系统类型,您需要根据创建的文件系统类型修改。
      • 如果您是普通用户,可以手动修改/etc/fstab文件。具体操作,请参见在fstab文件中配置UUID方式自动挂载数据盘
    3. 运行以下命令,查看/etc/fstab的新分区信息。
      cat /etc/fstab
      结果如下所示,返回结果里出现了新分区信息,说明写入成功。分区写入
    4. 运行以下命令,挂载/etc/fstab配置的文件系统。如果无报错输出,表示您的/etc/fstab配置无误。
      mount -a
    5. 运行以下命令,检查挂载结果是否符合您的预期。
      df -Th
      结果如下所示,如果出现新建文件系统的信息,表示文件系统挂载成功。文件系统挂载成功