fstab(文件系统信息表)是Linux系统中用于存储文件系统挂载信息的配置文件。通常情况下,/etc/fstab 文件支持使用设备名称(例如:/dev/vda1)来标识文件系统。但是,设备名称可能会因为运行环境的更改而改变,因此使用设备名称标识文件系统可能会存在一些问题。为了避免这些问题,可以将 /etc/fstab 文件中的文件系统标识方式改为UUID。UUID是一个唯一标识磁盘分区的字符串,不受设备名变化的影响。使用UUID作为fstab文件中的磁盘标识可以确保系统在设备名发生变化时仍能正确挂载文件系统。


如何查看磁盘及文件系统UUID?

  1. 方法1:使用blkid命令。该命令会显示系统中所有磁盘的UUID

    blkid
    /dev/sda4: UUID="489cff5d-e3b8-44e9-a6d9-c8b973eb8d3a" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="bb2a3230-1a46-4025-bae7-32ad77a976f4"
    /dev/sda2: UUID="4ec179f5-e4b1-48cc-a0a7-777d04c0cdf8" TYPE="swap" PARTUUID="3cd8b78c-a05f-4304-9a09-d6d33fd6ecb5"
    /dev/sda3: UUID="f5296aa9-377d-4df9-968c-466120416aed" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="4c9e8bff-166d-42c5-9377-1ba6258df3b9"
    /dev/sda1: UUID="73EA-912B" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="742cbc31-1913-4172-81e7-f5f354207b1b"
  1. 方法2:使用lsblk命令。在终端输入lsblk -f,该命令会以树状结构显示系统中所有磁盘的UUID

    lsblk -f
    NAME   FSTYPE FSVER LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINTS
    sda                                                                           
    ├─sda1 vfat   FAT32       73EA-912B                             469.2M     1% /boot/efi
    ├─sda2 swap   1           4ec179f5-e4b1-48cc-a0a7-777d04c0cdf8                [SWAP]
    ├─sda3 xfs                f5296aa9-377d-4df9-968c-466120416aed   39.4G    15% /
    └─sda4 xfs                489cff5d-e3b8-44e9-a6d9-c8b973eb8d3a   37.1G    39% /data
  1. 方法3:查看/dev/disk/by-uuid/目录。在终端输入ls -l /dev/disk/by-uuid/,该命令会显示/dev/disk/by-uuid/目录下所有磁盘的UUID

    ls -l /dev/disk/by-uuid/
    lrwxrwxrwx 1 root root 10 11月16日 15:20 489cff5d-e3b8-44e9-a6d9-c8b973eb8d3a -> ../../sda4
    lrwxrwxrwx 1 root root 10 11月16日 15:20 4ec179f5-e4b1-48cc-a0a7-777d04c0cdf8 -> ../../sda2
    lrwxrwxrwx 1 root root 10 11月16日 15:20 73EA-912B -> ../../sda1
    lrwxrwxrwx 1 root root 10 11月16日 15:20 f5296aa9-377d-4df9-968c-466120416aed -> ../../sda3