📜  linux 获取分区的 uuid - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:43:59.547000             🧑  作者: Mango

获取Linux分区UUID的方法

在Linux中,每个分区都会有一个唯一的UUID(Universally Unique Identifier)来标识它。这个UUID可以帮助我们避免使用硬编码的分区名称,例如/dev/sda1,而是使用UUID来唯一标识每个分区。

在本文中,我们将介绍如何在Linux命令行中获取分区UUID的多种方法。

方法1:使用blkid命令

blkid命令用于显示块设备的信息,其中包括分区UUID。

$ sudo blkid
/dev/sda1: UUID="5d073e02-5f59-47c3-a1f3-45c05d46b285" TYPE="ext4" PARTUUID="00000000-01"
/dev/sda2: UUID="5856bb2c-9c0c-4c86-bae0-e53f51a846f2" TYPE="swap" PARTUUID="00000000-02"

在上面的输出中,我们看到了/dev/sda1和/dev/sda2两个分区的UUID。可以看到每个分区的信息都包括UUID,分区类型和一些其他的元数据信息。

方法2:通过挂载点获取分区UUID

我们也可以通过查看分区的挂载点来获取UUID。我们可以使用df命令来列出文件系统的使用情况和相关的挂载信息。

$ df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  7.8G     0  7.8G   0% /dev
tmpfs          tmpfs     1.6G  1.4M  1.6G   1% /run
/dev/sda1      ext4      473G  199G  249G  45% /
tmpfs          tmpfs     7.9G     0  7.9G   0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M   0% /run/lock
tmpfs          tmpfs     7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/sdb1      ext4      916G  206G  655G  24% /mnt/data
...

在这个例子中,我们可以看到/dev/sda1和/dev/sdb1两个分区的挂载点和UUID。通过这种方法,我们可以知道每个分区的UUID和挂载点。

方法3:通过ls命令获取分区UUID

另一个获取分区UUID的方法是通过ls命令直接查看/dev/disk/by-uuid目录中每个UUID相应的符号链接。

$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root  9 Sep 15 09:13 5d073e02-5f59-47c3-a1f3-45c05d46b285 -> ../../sda1
lrwxrwxrwx 1 root root 10 Sep 15 09:13 5856bb2c-9c0c-4c86-bae0-e53f51a846f2 -> ../../sda2

在这个例子中,我们可以看到/dev/disk/by-uuid目录中的每个分区UUID及其对应的符号链接。这些符号链接指向实际分区设备,可以看出每个分区所对应的UUID。

结论

通过以上三种方法,我们可以很容易地获取Linux分区的UUID。这些UUID可以用来唯一地标识每个分区,并帮助我们避免使用硬编码的分区名称。当我们需要在脚本或配置文件中引用分区时,使用UUID将显得更加方便和安全。