当一块新创建的数据盘挂载到边缘实例之后,还不能存储数据。通常您需要完成创建分区、创建文件系统、挂载文件系统等磁盘初始化操作后,系统才能读写数据。本文介绍了如何在Linux操作系统中初始化一块全新的数据盘。
MBR分区表格式支持最大2TiB的磁盘容量。如果磁盘容量超过2TiB,请使用GPT分区表格式。
不同分区表格式支持的分区数量也不相同,详见分区说明。
控制台显示的磁盘容量使用十进制单位表示。Linux操作系统中显示的磁盘容量可能以二进制或十进制单位表示,这取决于您所使用的具体命令或工具。因此,控制台显示的磁盘容量的数值与操作系统中显示的数值可能会有差异。例如,您在控制台创建一块容量为30GB的磁盘,但是操作系统中显示的磁盘容量可能为“28G”(指的是28GiB)。这是因为1GB = 1,000,000,000字节,而1GiB = 1,073,741,824字节。
资源 | 描述 |
---|---|
边缘实例的镜像 | 边缘实例使用公共镜像,镜像名称为“CentOS 7.6 64位”。 |
数据盘 | 数据盘的设备名称为“/dev/vdb”。 |
本文以CentOS 7.6 64位操作系统为例进行说明。不同操作系统的磁盘初始化操作可能有所不同,本文的内容仅供参考。
登录边缘实例。具体操作,请参见通过VNC登录实例或使用第三方客户端工具登录实例。
运行以下命令,获取数据盘的设备名称。
fdisk -l
输出结果如下图所示。该输出结果表示当前的边缘实例有两块磁盘:
说明
本文示例中使用了两种磁盘分区工具:parted和fdisk。其中,parted可用于创建MBR分区和GPT分区,而fdisk主要用于创建MBR分区。
以下内容描述如何通过parted分区工具创建GPT分区以及如何通过fdisk分区工具创建MBR分区。
参考以下步骤,使用parted在数据盘上创建一个GPT分区。
创建GPT分区。
运行以下命令,启动parted工具并指定要分区的数据盘。
parted <数据盘的设备名称>
以数据盘/dev/vdb为例:
parted /dev/vdb
运行以下命令,设置分区表格式。
mklabel <分区表格式>
以将分区表格式设置为GPT为例:
mklabel gpt
输入unit s
并按Enter
键,将度量分区大小的单位设置为扇区。
运行以下命令,创建一个分区,并设置分区的起始位置和截止位置。
mkpart <分区名称> <分区的起始位置> <分区的截止位置>
命令示例:
mkpart test 2048s 100%
该示例表示在磁盘上创建一个名为“test”的分区。该分区从2048扇区开始一直扩展到磁盘的末尾。如果该分区仅需占用从2048扇区开始的部分磁盘空间,请将“100%”替换为实际的截止扇区。
此处的设置仅供参考,您可以根据实际业务需求自行规划分区的数量和每个分区的大小。一般情况下,第一个分区的起始扇区会被设置为2048扇区,以确保数据读写效率以及与操作系统的兼容性。磁盘上的一个扇区大小通常为512字节,前2048个扇区占用1MiB的存储空间。
输入p
并按Enter
键,查看该分区的详细信息。
输出结果如下图所示。
输入q
并按Enter
键,退出parted工具。
输出结果如下图所示。
运行以下命令,将分区表变更同步至操作系统。
partprobe <数据盘的设备名称>
以数据盘/dev/vdb为例:
partprobe /dev/vdb
运行以下命令,查看磁盘的分区信息。
fdisk -l <数据盘的设备名称>
以数据盘/dev/vdb为例:
fdisk -l /dev/vdb
输出结果如下图所示。下图中,能够看到创建的分区的信息。分区的编号为1,代表分区的设备名称为/dev/vdb1。
参考以下步骤,使用fdisk工具在数据盘上创建一个MBR分区。
创建MBR分区。
运行以下命令,启动fdisk工具、指定度量分区大小的单位为扇区、并指定要分区的数据盘。
fdisk -u <数据盘的设备名称>
以数据盘/dev/vdb为例:
fdisk -u /dev/vdb
输入n
并按Enter
键,开始新建分区。
输出结果如下图所示。
Partition type字段表示分区类型。取值可以是:
说明
MBR分区表最多支持4个主分区,或者3个主分区加1个扩展分区。扩展分区不可以直接使用,需要划分为逻辑分区后才可以使用。
输入分区类型并按Enter
键。该示例中,输入p
并按Enter
键,将分区类型设置为主分区。您也可以直接按Enter
键选择默认的分区类型—主分区。
输出结果如下图所示。
Partition number表示主分区编号。取值可以是1,2,3,4。默认值为1。
输入主分区编号并按Enter
键。
该示例中,直接按Enter
键选择默认的分区编号1。
输出结果如下图所示。
First sector字段表示起始扇区,即分区在磁盘上的起始位置。该示例中,起始扇区编号的取值范围是2048~39845887,默认值为2048。
输入起始扇区编号并按Enter
键。
该示例中,直接按Enter
键选择默认的起始扇区编号2048。
说明
系统会显示该分区可用的扇区的编号。您可以在该区间内自己指定起始扇区和截止扇区编号或者使用默认扇区编号。分区的起始扇区编号必须小于截止扇区编号。
输出结果如下图所示。
Last sector字段表示结束扇区,即分区在磁盘上的结束位置。该示例中,结束扇区编号的取值范围是2048~39845887,默认值为39845887。
输入截止扇区编号,按Enter
键。
该示例中,直接按Enter
键选择默认的截止扇区编号39845887。
输出结果如下图所示。
输入p
并按Enter
键,查看该分区的详细信息。
输出结果如下图所示。
说明
Disk label type 字段的值为dos,表示分区表格式为DOS(也称为MBR)。
确认分区配置无误后,输入w
并按Enter
键,将分区变更写入分区表中。
输出结果如下图所示。
说明
如果分区配置有误,请输入q
退出fdisk分区工具。之前的分区变更将不会被保存。
运行以下命令,将分区表变更同步至操作系统。
partprobe <数据盘的设备名称>
以数据盘/dev/vdb为例:
partprobe /dev/vdb
运行以下命令,查看磁盘的分区信息。
fdisk -l <数据盘的设备名称>
以数据盘/dev/vdb为例:
fdisk -l /dev/vdb
输出结果如下图所示。下图中,可以看到创建的分区的信息。
不同类型的文件系统特性有所差异,您可以按照实际业务场景选择。
以下内容以ext4和XFS为例,介绍如何创建文件系统。ext4是一个通用的文件系统,在处理大量小文件时表现良好。XFS适合处理大型文件和高I/O并发,在高带宽和高I/O负载的环境中表现更好。更多信息,请参考ext4和XFS文件系统介绍。
运行以下命令,在分区上创建ext4文件系统。
mkfs -t ext4 <分区的设备名称>
以分区/dev/vdb1为例:
mkfs -t ext4 /dev/vdb1
输出结果如下图所示。
运行以下命令,在分区上创建XFS文件系统。
mkfs -t xfs <分区的设备名称>
以分区/dev/vdb1为例:
mkfs -t xfs /dev/vdb1
输出结果如下图所示。
运行mkdir
命令,创建挂载点。
以创建挂载点/mnt/datadisk为例:
mkdir /mnt/datadisk
运行mount
命令,挂载文件系统。
以将/dev/vdb1分区的文件系统挂载到目录/mnt/datadisk上为例:
mount /dev/vdb1 /mnt/datadisk
运行以下命令,查看挂载结果。
df -Th
输出结果如下图所示。下图中,能够看到文件系统的挂载点信息,表示文件系统挂载成功。
记录文件系统的类型和挂载点,以备步骤五使用。
注意
系统重启后,挂载信息会丢失,磁盘上的数据将无法访问。建议您参考步骤五修改/etc/fstab文件,配置文件系统的自动挂载。
您可以配置/etc/fstab文件,使文件系统在系统启动或重启时能够自动挂载。
说明
建议您在/etc/fstab中使用全局唯一标识符UUID而不是设备名来标识文件系统。这样可以确保在设备名发生变化的情况下,系统仍能正确识别和使用文件系统。
运行blkid
命令,查询分区上的文件系统的UUID。
以分区/dev/vdb1为例:
blkid /dev/vdb1
输出结果如下图所示。记录文件系统的UUID,以备后续步骤使用。
运行以下命令,使用vi编辑器打开/etc/fstab文件。
vi /etc/fstab
按i
键,进入编辑模式。
将光标移至文件末尾,按Enter
键,添加如下内容。
注意
/etc/fstab文件中默认包含系统盘上文件系统的自动挂载配置,请勿修改该配置。系统盘上文件系统的挂载点为/
。
以上内容仅为示例。请按照实际情况设置各个字段的值。
字段说明如下:
编号 | 字段名称 | 字段描述 |
---|---|---|
1 |
| 表示文件系统的UUID。 |
2 |
| 表示文件系统的挂载点。该信息可以使用 |
3 |
| 表示文件系统的类型。该信息可以使用 |
4 |
| 表示文件系统的挂载选项。此处通常设置为defaults即可。关于 |
5 |
| 表示是否使用
|
6 |
| 表示系统启动时是否使用
系统会先检查优先级为1的文件系统,再检查优先级为2的文件系统。 |
按Esc
键,输入:wq
,然后按Enter
键来保存设置并退出编辑器。
(可选)执行以下步骤,验证自动挂载功能。
运行unmount
命令,卸载已挂载的分区。
以分区/dev/vdb1为例:
umount /dev/vdb1
运行以下命令,将/etc/fstab文件所有内容重新加载。
mount -a
运行以下命令,查询文件系统的挂载信息。
mount | grep <挂载点>
以挂载点/mnt/datadisk为例:
mount | grep /mnt/datadisk
输出结果如下图所示。结果中显示了预期的挂载点,并且挂载点对应的设备名、文件系统类型等信息正确,说明自动挂载配置已生效。
初始化大于2TiB的数据盘的操作步骤类似于“初始化小于等于2TiB的数据盘”的操作步骤。您可以参考本文档中的初始化小于等于2TiB的数据盘章节。但是请注意,数据盘容量大于2TiB时,分区表格式须为GPT,分区工具须为parted。