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

初始化数据盘(Linux)

最近更新时间2024.01.18 11:55:01

首次发布时间2024.01.17 21:27:16

当一块新创建的数据盘挂载到边缘实例之后,还不能直接存储数据。通常您需要完成创建分区、创建文件系统、挂载文件系统等初始化操作后,系统才能读写数据。本文介绍了如何在Linux操作系统中初始化一块全新的数据盘。

背景信息

分区说明

MBR分区支持的最大磁盘容量为2TiB,GPT支持的最大磁盘容量为18EiB。因此,如果您需要的磁盘容量超过2TiB,须使用GPT分区形式。

示例所用资源

资源

描述

边缘实例的镜像

CentOS 7.6 64位。

数据盘

数据盘的设备名称为/dev/vdb。

本文以CentOS 7.3 64位操作系统为例进行说明。不同操作系统的磁盘初始化操作可能不同,本文的内容仅供参考。

初始化小于等于2TiB的数据盘

步骤一:登录边缘实例并查看数据盘

  1. 登录边缘实例。

  2. 运行以下命令,获取数据盘的设备名称。

    fdisk -l
    

    回显信息如下图所示。该回显信息表示当前的边缘实例有两块磁盘。/dev/vda是系统盘,/dev/vdb是新增数据盘。
    图片

步骤二:为数据盘创建分区

说明

parted分区工具适用于MBR分区和GPT分区。fdisk分区工具只适用于MBR分区。

以下内容描述如何通过parted分区工具创建GPT分区以及如何通过fdisk分区工具创建MBR分区。

使用parted创建GPT分区

参考以下步骤通过parted工具来为数据盘创建一个GPT分区。

  1. 创建GPT分区。

    1. 运行以下命令开始为数据盘进行分区。

      parted <数据盘的设备名称>
      

      以数据盘/dev/vdb为例:

      parted /dev/vdb
      
    2. 运行以下命令,设置分区形式。

      mklabel <分区形式>
      

      分区形式有MBR和GPT两种。此处以将分区形式设置为GPT为例:

      mklabel gpt
      
    3. 输入unit s并按Enter键,将磁盘的计量单位设置为扇区。

    4. 运行以下命令,创建一个分区,并设置分区的起始位置和截止位置。

      mkpart <磁盘分区名称> <起始扇区编号> <截止扇区编号>
      

      命令示例:

      mkpart test 2048s 100%
      

      该示例中,test表示分区名称,2048s表示分区的起始扇区编号,**100%**表示分区的截止扇区。该示例表示在磁盘上创建一个名为“test”的分区,该分区的起始位置为第2048个扇区,并占用从起始位置开始的磁盘上剩余的所有空间。
      此处的取值仅供参考。您可以根据实际业务需求自行规划磁盘分区数量及容量。

    5. 输入p并按Enter键,查看该分区的详细信息。
      回显信息如下图所示。
      图片

    6. 输入q并按Enter键,退出parted工具。
      回显信息如下图所示。
      图片

      说明

      /etc/fstab文件控制磁盘分区的开机自动挂载,请先参考步骤三步骤四创建文件系统和挂载点后,再参考步骤五修改/etc/fstab文件。

  2. 运行以下命令,将分区表变更同步至操作系统。

    partprobe <数据盘的设备名称>
    

    以数据盘/dev/vdb为例:

    partprobe /dev/vdb
    
  3. 运行以下命令,查看磁盘分区信息。

    lsblk
    

    回显信息如下图所示。此时,可以看到/dev/vdb1分区。
    图片

使用fdisk创建MBR分区

参考以下步骤通过fdisk工具来为数据盘创建一个MBR分区。

  1. 创建MBR分区。

    1. 运行以下命令,开始对数据盘执行分区操作。

      fdisk -u <数据盘的设备名称>
      

      以数据盘/dev/vdb为例:

      fdisk -u /dev/vdb
      
    2. 输入n并按Enter键,开始新建分区。
      回显信息如下图所示。
      图片
      MBR分区有两种类型:

      • p:表示主分区。
      • e:表示扩展分区。

      说明

      磁盘使用MBR分区形式时,最多支持4个主分区,或者3个主分区加1个扩展分区。扩展分区不可以直接使用,需要划分为逻辑分区后才可以使用。

    3. 以创建一个主分区为例。输入p并按Enter键,开始创建一个主分区。
      回显信息如下图所示。
      图片
      Partition number表示主分区编号。可选值为123,和4。默认值为1

    4. 输入主分区编号并按Enter键。
      该示例中,直接按Enter键,表示选择默认分区编号1
      回显信息如下图所示。
      图片
      First sector表示分区可用空间的起始扇区编号。可选值的区间为2048~39845887。默认值为2048

    5. 输入起始扇区编号并按Enter键。
      该示例中,直接按Enter键,表示选择默认起始扇区编号2048

      说明

      系统会自动提示分区可用空间的起始扇区编号和截止扇区编号。您可以在该区间内自定义起始和截止扇区编号或者使用默认扇区编号。分区的起始扇区编号必须小于截止扇区编号。

      回显信息如下图所示。
      图片
      Last sector表示分区可用空间的截止扇区编号。可选值的区间为2048~39845887。默认值为39845887

    6. 输入截止扇区编号,按Enter键。
      该示例中,直接按Enter键,表示选择默认截止扇区编号39845887

      说明

      系统会自动提示分区可用空间的起始扇区编号和截止扇区编号。您可以在该区间内自定义起始和截止扇区编号或者使用默认扇区编号。分区的起始扇区编号必须小于截止扇区编号。

      回显信息如下图所示。
      图片

    7. 输入p并按Enter键,查看该分区的详细信息。
      回显信息如下图所示。

      说明

      Disk label type 字段的值为dos,表示系统盘/dev/vda的分区形式为MBR。

      图片

    8. 输入w并按Enter键,将分区结果写入分区表中。
      回显信息如下图所示。
      图片

      说明

      如果分区操作有误,请输入q退出fdisk分区工具。之前的分区结果将不会被保留。

  2. 运行以下命令,将分区表变更同步至操作系统。

    partprobe <数据盘的设备名称>
    

    以数据盘/dev/vdb为例:

    partprobe /dev/vdb
    
  3. 运行以下命令,查看磁盘分区信息。

    fdisk -l <数据盘的设备名称>
    

    以数据盘/dev/vdb为例:

    fdisk -l /dev/vdb
    

    回显信息如下图所示。此时,可以看到/dev/vdb1分区。
    图片

步骤三:创建文件系统

参考以下步骤在分区上创建文件系统。不同文件系统支持的分区大小不同,请根据实际情况创建文件系统。
以下内容介绍如何创建ext4和xfs文件系统。

创建ext4文件系统

运行以下命令,在分区上创建ext4文件系统。

mkfs -t ext4 <分区名称>

以分区/dev/vdb1为例:

mkfs -t ext4 /dev/vdb1

回显信息如下图所示。
图片

创建xfs文件系统

运行以下命令,在分区上创建xfs文件系统。

mkfs -t xfs <分区名称>

以分区/dev/vdb1为例:

mkfs -t xfs /dev/vdb1

回显信息如下图所示。
图片

步骤四:挂载文件系统

  1. 运行mkdir命令,创建挂载点。
    以创建挂载点/mnt/datadisk为例:

    mkdir /mnt/datadisk
    
  2. 运行mount命令,挂载文件系统。
    以将文件系统/dev/vdb1挂载到目录/mnt/datadisk上为例:

    mount /dev/vdb1 /mnt/datadisk
    
  3. 运行以下命令,查看挂载结果。

    df -Th
    

    回显信息如下图所示。如果出现新建的文件系统的信息,表示文件系统挂载成功。
    图片

    说明

    边缘实例重启后,挂载会失效。您可以参考步骤五修改/etc/fstab文件,配置文件系统的开机自动挂载。

步骤五:配置开机自动挂载

您可以通过配置/etc/fstab文件,使边缘实例在启动时能够自动挂载磁盘分区的文件系统。

说明

建议您在/etc/fstab中使用全局唯一标识符UUID而不是设备名来引用分区。这样可以确保在设备名发生变化的情况下,系统仍能正确识别和使用磁盘分区。

  1. 运行blkid命令,查询磁盘分区的UUID。
    以磁盘分区/dev/vdb1为例:

    blkid /dev/vdb1
    

    回显信息如下图所示。记录回显中磁盘分区/dev/vdb1的UUID,方便后续步骤使用。
    图片

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

    vi /etc/fstab
    
  3. i键,进入编辑模式。

  4. 将光标移至文件末尾,按Enter键,添加如下内容。
    图片
    以上内容仅为示例,具体请以实际情况为准,参数说明如下:

    • 第一列为UUID。此处填写第一步中通过blkid命令查询到的磁盘分区的UUID。
    • 第二列为磁盘分区的挂载点。该信息可以通过df -Th命令查询。
    • 第三列为磁盘分区的文件系统格式。该信息可以通过df -Th命令查询。
    • 第四列为磁盘分区的挂载选项。此处通常设置为defaults即可。
    • 第五列为Linux dump备份选项。
      • 0:表示不使用Linux dump备份。现在通常不使用dump备份,此处设置为0即可。
      • 1:表示使用Linux dump备份。
    • 第六列为fsck选项,用于设置开机时是否使用fsck检查文件系统的完整性。
      • 0:表示不检查文件系统。
      • 1:仅检查root文件系统。
      • 2:表示按顺序检查除root文件系统以外的其他文件系统。
  5. Esc键后,输入:wq,然后按Enter键来保存设置并退出编辑器。

  6. (可选)执行以下步骤,验证自动挂载功能。

    1. 运行unmount命令,卸载已挂载的分区。
      以磁盘分区/dev/vdb1为例:

      umount /dev/vdb1
      
    2. 运行以下命令,将/etc/fstab文件所有内容重新加载。

      mount -a
      
    3. 运行以下命令,查询文件系统挂载信息。

      mount | grep <挂载点>
      
    4. 以挂载点/mnt/datadisk为例:

      mount | grep /mnt/datadisk
      

      回显信息如下图所示,说明自动挂载功能生效。
      图片

初始化大于2TiB的数据盘

初始化大于2TiB的数据盘的操作步骤类似于“初始化小于等于2TiB的数据盘”的操作步骤。您可以参考本文档中的初始化小于等于2TiB的数据盘章节。但是请注意,数据盘容量大于2TiB时,分区形式须采用GPT,分区工具须使用parted。