/etc/fstab
包含以下内容:# / was on /dev/sda1 during installation
UUID=77d8da74-a690-481a-86d5-9beab5a8e842 / ext4 errors=remount-ro 0 1
该系统上还有其他几个磁盘,并且并非所有磁盘都已安装到正确的位置(例如/ dev / sda1和/ dev / sdb1有时会颠倒过来。)
如何查看系统上所有磁盘的UUID?我可以在该系统上看到第三个磁盘的UUID吗?
#1 楼
在/dev/disk/by-uuid
中有符号链接将每个驱动器的UUID映射到/dev
中的条目(例如/dev/sda1
)评论
LVM分区时不可读。
– Grzegorz Wierzowiecki
2011-09-18 21:22
LVM在其结构中已经使用了类似UUID的长标识符(尽管呈现方式有所不同)。我认为将文件系统UUID与LVM一起使用的唯一原因是作为某种自动化的统一接口,因为LVM已经为您完成了LV到人性化名称的映射。
–telcoM
18年1月28日在1:27
ls -lha / dev / disk / by-uuid
–deFreitas
18年4月10日在2:03
仅供参考,结果已更改,将与blkid不同,并且无法启动:i.imgur.com/ocgoi3g.png
–特克斯
20年7月8日在12:38
#2 楼
有一个名为blkid
的工具(作为root或与sudo
一起使用),# blkid /dev/sda1
/dev/sda1: LABEL="/" UUID="ee7cf0a0-1922-401b-a1ae-6ec9261484c0" SEC_TYPE="ext2" TYPE="ext3"
您可以检查此链接以获取更多信息
评论
只是一个小小的评论:看起来像是组磁盘成员足以运行blkid;无需完整的超级用户权限。
–arielf
2013年12月14日23:19在
如果只需要UUID(例如在脚本中进行解析),则可以执行blkid / dev / sda1 -s UUID -o值。
–杰克·奥康纳(Jack O'Connor)
16年6月20日在21:35
在这里快速评论:在我的发行版(Debian 8)中,这会产生UUID以及“ PARTUUID”,这相当令人困惑。我使用了{lsblk}命令,该命令仅给出一个值。
– takumar
16/09/12在11:57
尽管我更喜欢执行blkid / dev / sd *列出所有驱动器,但这可以节省大量时间。发出的信息通常足以找到所需的驱动器。 :)
–user235748
17年7月1日在8:04
GPT分区磁盘的PARTUUID是分区的GPT UUID,而不是分区中的文件系统。尚未创建文件系统时可能很有用。在MBR分区的磁盘上,PARTUUID不是真正的UUID,而仅仅是MBR +破折号+分区号中的Windows磁盘签名。
–telcoM
18年1月28日在1:32
#3 楼
最好使用的命令是lsblk -f
。它将列出所有设备和分区,如何安装(如果有的话)以及在使用LVM的情况下设备的树结构,crypto_LUKS,或同一驱动器上的多个卷组。
评论
这是最好的答案-最彻底,真正的一站式方法。
–罗伊斯·威廉姆斯
20 Jan 2 '20在22:03
另外:我必须在此前面加上sudo,否则它无法获取分区的UUID且该列为空。
–Mnementh
20 Jan 27'at 9:24
df --output = source MYFILE |尾-n1 | xargs lsblk -o uuid
–JellicleCat
20年8月30日在1:33
#4 楼
要仅获取特定磁盘设备的UUID
(例如在脚本中使用),可以使用:sudo blkid -s UUID -o value /dev/sdXY
其中
/dev/sdXY
是设备的名称。 评论
不知道为什么这不是最主要的评论。
– fideloper
20-10-18在2:10
#5 楼
这对我有用:ls -la /dev/disk/by-uuid
如果要检查分区的类型,请使用:
df -Th
,它将显示您是否拥有ext3或ext2。今天它对我有帮助,因为有一个格式化的ext2分区,我以为是ext3,这导致安装失败。
评论
您可以随时尝试挂载-t auto / dev / sda1 / media / sda1。
– ott--
2012年12月28日在21:16
#6 楼
lsblk -o +uuid,name
您可以看到使用
lsblk --help
可以添加到
-o
(--output
)的所有输出。 br /> # blkid
评论
名称不是默认打印的吗?
–don_crissti
17年7月20日在20:50
它是。仅出于教育目的将其添加(添加逗号以分隔所需的字段)
– Nico Rodsevich
17年7月20日在22:30
#7 楼
先前的答案不适用于多个设备或具有相同UUID的设备。请尝试以下操作:
sudo blkid /dev/sd*
评论
真的吗您是说,投票最多的答案行不通?
–don_crissti
16-09-14在8:04
通用唯一标识符(UUID)应该始终是唯一的。 UUID的全部目的是成为一个通用的唯一对象。如果没有,那就有问题了。我在克隆的VM中至少在网络设备上已经看到重复的UUID。
– Stefan Lasiewski
16 Sep 14 '17:00
如果使用dd命令克隆分区,则副本将具有相同的uuid,是的,这是一个问题。这里的其他答案不会显示出来。
–凯文
16-09-18在9:22
#8 楼
通过以下命令行,您可以看到UUID以及到分区的映射。ls /dev/disk/by-uuid -lt
lrwxrwxrwx 1 root root 10 Sep 1 18:51 57eacf4e-1940-436e-b945-85f8d4833aa5 -> ../../sda2
lrwxrwxrwx 1 root root 10 Sep 1 18:51 656f4cae-8527-43a0-a80f-00ac82818744 -> ../../sda1
lrwxrwxrwx 1 root root 9 Sep 1 18:51 d627595d-4060-440e-8380-a1fe9f3f2a81 -> ../../md0
lrwxrwxrwx 1 root root 10 Sep 1 18:51 0dfd6dfe-1852-460d-852c-676a5b9035ed -> ../../sda4
lrwxrwxrwx 1 root root 10 Sep 1 18:51 b1ddf850-8f81-429f-a653-38ae4a4ebb6f -> ../../sda3
lrwxrwxrwx 1 root root 9 Sep 1 18:51 b4b729f7-5699-411c-8f5a-424bbc7c89fc -> ../../sdb
评论
为什么我们可以看到sda的uuid
–吴洪河
17年8月10日在13:10
每个分区的文件系统只有一个UUID。在sda上,我有4个分区,所以我有4个UUID。 wiki.debian.org/Part-UUID
–尼古拉斯·瓜里纳(NicolasGuérinet)
17年8月10日在15:02
#9 楼
我和你有同样的问题:重新启动后按
/dev/sd**
的内核重命名:问题。上面的所有命令(blkid或lsblk)都提供了这类信息。在当前引导的系统视图中:
,例如:
该分区用作原始设备,为VirtualBox创建虚拟磁盘
(因此对该分区的引用为类似于:
/etc/fstab
)或
将该分区用作原始设备,以为iSCSI制作LUN。 br />因此,现在在启动时(例如在rc.local中),必须以可靠的方式找到专用RAW分区的
/dev/sdf3
设备是什么,并修改一些文件:示例1
VirtualBox磁盘* .vmk此原始磁盘的描述,类似以下部分:
\# Extent description
RW 488397167 FLAT "/dev/sdXX" 0
,然后重新启动VirtualBox服务
示例2
在tgtd配置中,目标:target0在构建时已与
/dev/sdc6
关联。 那么如何自动查找新设备呢?
再次在/etc/rc.d/rc.local中找到
所以在这种情况下,我们需要一种可靠的方法来查找什么新的设备名称。
GPT分区为任何GPT分区提供了唯一的GUID(用GPT表编写)。
gdisk不会以列表模式提供此信息,而仅在交互模式下提供:i命令。幸运的是,blkid做到了!
因此,您需要编写一个shell脚本,以查找与分区创建时注意到的GUID关联的所有磁盘(即设备
/dev/sdXX
)。 类似于search_device_by_partUUID.sh:
\#!/bin/bash
PART_UUID=
if [ "$PART_UUID" = "" ]
then
echo "Syntax: q4312078q <a valid partition UUID>"
exit 3
fi
lsblk | grep '^sd' | awk '{print }' | while read DISK_DEVICE
do
INFO=`blkid /dev/${DISK_DEVICE}* | grep "PARTUUID=\"$PART_UUID\"" `
if [ "$INFO" != "" ]
then
echo INFO : "$INFO"
BLK_DEVICE=`echo "$INFO" | awk '{print }'`
echo $BLK_DEVICE > /dev/shm/blkdevice
echo -n "BLK_DEVICE : " ; cat /dev/shm/blkdevice
fi
done
,然后在rc.local脚本中使用
/dev/sdd6
。#10 楼
要查看硬盘分区的uuid,我只需使用Linux CD引导系统并转到我的计算机挂载,单击我想查看的分区。将显示Linux分区的uuid编号。
在Linux CD引导后,您还可以通过运行Linux Disk Utility来查看磁盘uuid。
评论
什么是“我的计算机支架”?什么叫“ Linux磁盘实用程序”,听起来像gnome-disk-utility又名磁盘?
– Xen2050
18年11月30日在4:15
评论
@setzamora的答案更好。请更改接受的答案。