详解Linux 中获取硬盘分区或文件系统的 UUID 的七种方法
作为一个 Linux 系统管理员,你应该知道如何去查看分区的 UUID 或文件系统的 UUID。因为现在大多数的 Linux 系统都使用 UUID 挂载分区。你可以在 /etc/fstab
文件中可以验证。
有许多可用的实用程序可以查看 UUID。本文我们将会向你展示多种查看 UUID 的方法,并且你可以选择一种适合于你的方法。
何为 UUID?
UUID 意即 通用唯一识别码 Universally Unique Identifier ,它可以帮助 Linux 系统识别一个磁盘分区而不是块设备文件。
自内核 2.15.1 起,libuuid 就是 util-linux-ng
包中的一部分,它被默认安装在 Linux 系统中。UUID 由该库生成,可以合理地认为在一个系统中 UUID 是唯一的,并且在所有系统中也是唯一的。
这是在计算机系统中用来标识信息的一个 128 位(比特)的数字。UUID 最初被用在 阿波罗网络计算机系统 Apollo Network Computing System (NCS)中,之后 UUID 被 开放软件基金会 Open Software Foundation (OSF)标准化,成为 分布式计算环境 Distributed Computing Environment (DCE)的一部分。
UUID 以 32 个十六进制的数字表示,被连字符分割为 5 组显示,总共的 36 个字符的格式为 8-4-4-4-12(32 个字母或数字和 4 个连字符)。
例如: d92fa769-e00f-4fd7-b6ed-ecf7224af7fa
我的 /etc/fstab 文件示例:
# cat /etc/fstab # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a device; this may # be used with UUID= as a more robust way to name devices that works even if # disks are added and removed. See fstab(5). # # UUID=69d9dd18-36be-4631-9ebb-78f05fe3217f / ext4 defaults,noatime 0 1 UUID=a2092b92-af29-4760-8e68-7a201922573b swap swap defaults,noatime 0 2
我们可以使用下面的 7 个命令来查看。
- blkid
- lsblk
- hwinfo
- udevadm
- tune2fs
- dumpe2fs
- by-uuid
Linux 中如何使用 blkid 命令查看磁盘分区或文件系统的 UUID?
blkid 是定位或打印块设备属性的命令行实用工具。它利用 libblkid 库在 Linux 系统中获得到磁盘分区的 UUID。
# blkid /dev/sda1: UUID="d92fa769-e00f-4fd7-b6ed-ecf7224af7fa" TYPE="ext4" PARTUUID="eab59449-01" /dev/sdc1: UUID="d17e3c31-e2c9-4f11-809c-94a549bc43b7" TYPE="ext2" PARTUUID="8cc8f9e5-01" /dev/sdc3: UUID="ca307aa4-0866-49b1-8184-004025789e63" TYPE="ext4" PARTUUID="8cc8f9e5-03" /dev/sdc5: PARTUUID="8cc8f9e5-05"
Linux 中如何使用 lsblk 命令查看磁盘分区或文件系统的 UUID?
lsblk 列出所有有关可用或指定块设备的信息。 lsblk 命令读取 sysfs 文件系统和 udev 数据库以收集信息。
如果 udev 数据库不可用或者编译的 lsblk 不支持 udev,它会试图从块设备中读取卷标、UUID 和文件系统类型。这种情况下,必须以 root 身份运行。该命令默认会以类似于树的格式打印出所有的块设备(RAM 盘除外)。
# lsblk -o name,mountpoint,size,uuid NAME MOUNTPOINT SIZE UUID sda 30G └─sda1 / 20G d92fa769-e00f-4fd7-b6ed-ecf7224af7fa sdb 10G sdc 10G ├─sdc1 1G d17e3c31-e2c9-4f11-809c-94a549bc43b7 ├─sdc3 1G ca307aa4-0866-49b1-8184-004025789e63 ├─sdc4 1K └─sdc5 1G sdd 10G sde 10G sr0 1024M
Linux 中如何使用 by-uuid 路径查看磁盘分区或文件系统的 UUID?
该目录包含了 UUID 和实际的块设备文件,UUID 与实际的块设备文件链接在一起。
# ls -lh /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 10 Jan 29 08:34 ca307aa4-0866-49b1-8184-004025789e63 -> ../../sdc3 lrwxrwxrwx 1 root root 10 Jan 29 08:34 d17e3c31-e2c9-4f11-809c-94a549bc43b7 -> ../../sdc1 lrwxrwxrwx 1 root root 10 Jan 29 08:34 d92fa769-e00f-4fd7-b6ed-ecf7224af7fa -> ../../sda1
Linux 中如何使用 hwinfo 命令查看磁盘分区或文件系统的 UUID?
hwinfo 意即硬件信息工具,是另外一种很好的实用工具。它被用来检测系统中已存在的硬件,并且以可读的格式显示各种硬件组件的细节信息。
# hwinfo --block | grep by-uuid | awk '{print $3,$7}' /dev/sdc1, /dev/disk/by-uuid/d17e3c31-e2c9-4f11-809c-94a549bc43b7 /dev/sdc3, /dev/disk/by-uuid/ca307aa4-0866-49b1-8184-004025789e63 /dev/sda1, /dev/disk/by-uuid/d92fa769-e00f-4fd7-b6ed-ecf7224af7fa
Linux 中如何使用 udevadm 命令查看磁盘分区或文件系统的 UUID?
udevadm 需要命令和命令特定的操作。它控制 systemd-udevd 的运行时行为,请求内核事件、管理事件队列并且提供简单的调试机制。
# udevadm info -q all -n /dev/sdc1 | grep -i by-uuid | head -1 S: disk/by-uuid/d17e3c31-e2c9-4f11-809c-94a549bc43b7
Linux 中如何使用 tune2fs 命令查看磁盘分区或文件系统的 UUID?
tune2fs 允许系统管理员在 Linux 的 ext2、ext3、ext4 文件系统中调整各种可调的文件系统参数。这些选项的当前值可以使用选项 -l 显示。
# tune2fs -l /dev/sdc1 | grep UUID Filesystem UUID: d17e3c31-e2c9-4f11-809c-94a549bc43b7
Linux 中如何使用 dumpe2fs 命令查看磁盘分区或文件系统的 UUID?
dumpe2fs 打印出现在设备文件系统中的超级块和块组的信息。
# dumpe2fs /dev/sdc1 | grep UUID dumpe2fs 1.43.5 (04-Aug-2017) Filesystem UUID: d17e3c31-e2c9-4f11-809c-94a549bc43b7 via: https://www.2daygeek.com/check-partitions-uuid-filesystem-uuid-universally-unique-identifier-linux/
总结
以上所述是小编给大家介绍的Linux 中获取硬盘分区或文件系统的 UUID 的七种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
推荐阅读
-
紧急模式问题处理 - 图 1 紧急模式 根本原因分析 应急模式提供了尽可能小的环境,即使无法进入应急模式,也可以在其中修复系统。在应急模式下,系统只安装根文件系统供读取,不尝试安装任何其他本地文件系统,不激活网络接口,只启动一些基本服务。 进入应急模式的原因通常是 /etc/fstab 文件中存在错误,导致文件系统挂载失败。 文件系统中存在错误,导致。 约束和限制 本节适用于 Linux 操作系统紧急模式。程序涉及修复文件系统。修复文件系统有丢失数据的风险,因此请先备份数据,然后再执行修复操作。 处理方法 输入根密码,然后进入修复模式。 在应急模式下,根分区以只读模式挂载。要修改根目录中的文件,需要执行以下命令以读写模式重新挂载根分区。# mount -o rw,remount / 请执行以下命令首先检查 fstab 文件是否有误,然后尝试挂载所有未挂载的文件系统。# mount -a 如果挂载点不存在,请创建一个挂载点。 如果不存在此类设备,请注释或删除挂载行。 如果指定了不正确的挂载选项,请将挂载参数更改为正确的参数。 如果没有发生错误,但出现 UNEXPECTED INCONSISTENCY;RUN fsck MANUALLY 消息(通常是由文件系统错误引起的),请跳至第 7 步。 执行以下命令打开 /etc/fstab 以修改相应的错误。# vi /etc/fstab /etc/fstab 文件包含以下字段,以空格分隔:[文件系统] [dir] [type] [options] [dump] [fsck] 表 1 /etc/fstab 参数 说明 参数 说明 [文件系统] 要挂载的分区或存储设备。 文件系统]列建议以 UUID 的形式写入。执行 blkid 命令可查询设备文件系统 UUID。 参考格式如下: # <device> <dir> <type> <options> <dump> <fsck>; UUID=b411dc99-f0a0-4c87-9e05-184977be8539 /home ext4 defaults 0 2 使用 UUID 的好处是,它们与磁盘顺序无关。如果你在 BIOS 中更改了存储设备的顺序,或重新插入了存储设备,或者因为某些 BIOS 可能会随机更改存储设备的顺序,那么使用 UUID 会更有效率。 [文件系统] 文件系统]的挂载位置。 类型 挂载设备或分区的文件系统类型,支持多种不同的文件系统:ext2、ext3、ext4、reiserfs、xfs、jfs、smbfs、iso9660、vfat、ntfs、swap 和 auto。 设置为自动类型后,挂载命令会猜测所使用的文件系统类型,这对 CDROM 和 DVD 等移动设备非常有用。 选项 挂载时要使用的参数,有些参数是特定文件系统特有的。例如,默认值参数使用文件系统的默认挂载参数,ext4 的默认参数为:rw、suid、dev、exec、auto、nouser、async。 有关更多参数,请执行以下命令查看 man 手册:# man mount
-
在Linux中查找文件系统类型的7种方法(ext2,ext3或ext4)
-
详解Linux 中获取硬盘分区或文件系统的 UUID 的七种方法
-
Linux 中获取硬盘分区或文件系统的 UUID 的七种方法-Linux 中如何使用 hwinfo 命令查看磁盘分区或文件系统的 UUID?