In Linux, you can configure the fstab file of an Elastic Compute Service (ECS) instance to have the file systems of data disks automatically mounted on instance startup. If the fstab file is improperly configured and the sequence in which disks are attached is changed, the ECS instance may not run as expected after it is restarted. This topic describes how to configure UUIDs in the fstab file to automatically mount the file systems of data disks and prevent the preceding exception.
Prerequisites
The disks attached to the instance are partitioned and formatted. For more information, see Initialize a data disk whose size does not exceed 2 TiB on a Linux instance.
Background information
fstab allows you to identify a file system by using a disk partition name such as/dev/vdb1 or by using a UUID. The two methods differ in the following aspects:
If you use disk partition names to identify file systems in the fstab file, the disk partitions may not be mounted to the original mount points when the sequence in which the disks are attached is changed. In this case, applications that run on your ECS instance may be affected.
If you use UUIDs to identify file systems in the fstab file, the disk partitions can still be mounted to the original mount points even when the sequence in which the disks are attached is changed. We recommend that you use UUIDs to identify file systems.
Procedure
Connect to an instance.
For more information, see Connect to a Linux instance by using a password or key.
Run the following command to view information of the disks on the instance:
fdisk -lu
A command output similar to the following one is returned.
Run the following command to query the UUIDs of data disks:
blkid
A command output similar to the following one is returned.
(Optional) Create mount points for data disk partitions.
You can use existing directories as mount points to mount data disk partitions, without creating mount points. In this example, mount points are created.
To create the /test01 mount point for /dev/vdb1, run the following command:
mkdir /test01
To create the /test02 mount point for /dev/vdc1, run the following command:
mkdir /test02
Add mount information for data disk partitions to the fstab file.
Run the following command to edit the fstab file:
vi /etc/fstab
Press the
I
key to enter Insert mode.Add the following mount information:
UUID=59f23670-94c1-42d1-8bb0-209d7854**** /test01 ext4 defaults 0 0 UUID=88619b1a-d971-41c2-91d0-3a440fc0**** /test02 xfs defaults 0 0
A command output similar to the following one is returned.
No.
Field
Description
①
<file system>
The file system on the partition to mount.
We recommend that you use the UUIDs of the file systems. You can run the
blkid
command to query the UUIDs of file systems on the partitions.②
<dir>
The mount point of the file system.
You can create mount points. In this topic, the /test01 and /test02 mount points are created.
③
<type>
The type of the file system on the partition to mount.
You can run the
blkid
command to query the types of file systems.④
<options>
The parameters used for mounting. Typically, the defaults parameter is used. If you want to use multiple parameters, separate them with commas (,). Example:
defaults,noatime
.For more information about the <options> parameters, see fstab.
⑤
<dump>
Indicates whether the dump tool backs up the file systems.
0: The dump tool does not back up the file systems.
1: The dump tool backs up the file systems.
In most cases, the dump tool is not used. In this case, this parameter is set to 0.
⑥
<pass>
Indicates where fsck checks the file systems.
0: The file systems are not checked.
1: The file system corresponding to root directory (/) is checked.
2: All file systems except the one corresponding to root directory (/) are checked.
In most cases, this parameter is set to 0.
Press the
Esc
key to exit Insert mode.Enter
:wq
and press theEnter
key to save and exit the file.
Run the following command to view the fstab file:
cat /etc/fstab
A command output similar to the following one is returned.
(Optional) Mount the file systems on data disk partitions.
To mount /dev/vdb1, run the following command:
mount /dev/vdb1 /test01
To mount /dev/vdc1, run the following command:
mount /dev/vdc1 /test02
Run the following command to check whether the file systems on the data disk partitions are mounted:
df -h
A command output similar to the following one is returned.
After the fstab file is configured, the system automatically mounts the data disks after you restart the ECS instance.