Linux系统中,查看设备UUID的常用命令和操作步骤有哪些?

UUID(Universally Unique Identifier)是Linux系统中用于唯一标识存储设备的全局唯一标识符,无论设备名称如何变化(如/dev/sda1变成/dev/sdb1),UUID始终保持不变,因此在fstab配置、磁盘管理等场景中广泛使用,本文将详细介绍在Linux系统中查看UUID的多种方法,涵盖常用命令、目录结构及配置文件解析,帮助用户根据实际需求选择合适的方式。

如何查看linux的uuid

使用lsblk命令查看UUID

lsblk(list block devices)是Linux系统中用于列出块设备信息的工具,默认显示设备名称、大小、挂载点等基本信息,通过添加-o选项可以指定显示UUID字段,操作简单直观。

操作步骤

  1. 打开终端,输入以下命令:

    lsblk -o NAME,UUID,FSTYPE,MOUNTPOINT

    NAME表示设备名称(如sda1),UUID表示文件系统UUID,FSTYPE表示文件系统类型(如ext4、xfs),MOUNTPOINT表示挂载点。

  2. 示例输出:

    NAME   UUID                                 FSTYPE MOUNTPOINT
    sda                                                               
    ├─sda1 123e4567-e89b-12d3-a456-426614174000 ext4   /          
    ├─sda2 89ab-cdef-1234-5678-90abcdef1234     swap   [SWAP]     
    └─sda3 5678-90ab-cdef-1234-5678-90abcdef12 vfat   /boot/efi  

    从输出中可以清晰看到每个分区的UUID及其对应的文件系统类型和挂载点。

注意事项

  • 若需要查看所有设备(包括隐藏设备),可添加-f选项:lsblk -f -o NAME,UUID,FSTYPE,MOUNTPOINT
  • 普通用户可能无法查看所有设备的UUID,需使用sudo获取管理员权限。

使用blkid命令查看UUID

blkid(block identifier)是专门用于显示块设备属性(包括UUID、文件系统类型、卷标等)的命令,输出格式简洁,支持过滤特定字段,是最常用的UUID查看工具之一。

操作步骤

  1. 基本用法:直接输入blkid,系统会列出所有已挂载文件系统的属性,包括UUID。

    blkid

    示例输出:

    /dev/sda1: UUID="123e4567-e89b-12d3-a456-426614174000" TYPE="ext4" PARTUUID="00000000-01"  
    /dev/sda2: UUID="89ab-cdef-1234-5678-90abcdef1234" TYPE="swap"  
    /dev/sda3: UUID="5678-90ab-cdef-1234-5678-90abcdef12" TYPE="vfat" PARTUUID="00000000-03"  
  2. 过滤UUID:若只想查看特定设备的UUID,可使用-s(显示指定字段)和-o(输出格式)选项,例如查看/dev/sda1的UUID:

    如何查看linux的uuid

    blkid -s UUID -o value /dev/sda1

    输出结果为纯UUID值:123e4567-e89b-12d3-a456-426614174000

注意事项

  • 对于未格式化的设备,blkid不会返回UUID信息。
  • LVM逻辑卷的UUID以LVM-开头(如UUID="LVM-abc123Def456Ghi789Jkl012"),可通过blkid /dev/vg_name/lv_name查看。

通过/dev/disk/by-uuid/目录查看

Linux系统会在/dev/disk/by-uuid/目录下自动为每个分区创建以UUID为名称的符号链接,链接指向实际的设备文件(如/dev/sda1),这种方法无需额外命令,通过目录结构即可直观查看UUID与设备的对应关系。

操作步骤

  1. 进入目录并查看内容:
    ls -l /dev/disk/by-uuid/

    示例输出:

    lrwxrwxrwx 1 root root 10 10月 1 10:00 123e4567-e89b-12d3-a456-426614174000 -> ../../sda1  
    lrwxrwxrwx 1 root root 10 10月 1 10:01 5678-90ab-cdef-1234-5678-90abcdef12 -> ../../sda3  
    lrwxrwxrwx 1 root root 10 10月 1 10:02 89ab-cdef-1234-5678-90abcdef1234 -> ../../sda2  

    每一行显示一个UUID及其对应的设备路径(如../../sda1表示/dev/sda1)。

优点

  • 直观易懂,无需记忆命令参数,适合快速定位特定UUID对应的设备。
  • 无需管理员权限,普通用户即可查看(需有目录读取权限)。

查看/etc/fstab文件获取UUID

/etc/fstab是Linux系统中的文件系统表,记录了系统启动时需要自动挂载的设备及其挂载点、文件系统类型、挂载选项等信息,设备字段通常使用UUID标识,因此可通过查看该文件获取已配置自动挂载分区的UUID。

操作步骤

  1. 使用文本编辑器或命令查看/etc/fstab文件:
    cat /etc/fstab

    示例输出:

    # /etc/fstab: static file system information.  
    UUID=123e4567-e89b-12d3-a456-426614174000 /     ext4    defaults 0 1  
    UUID=5678-90ab-cdef-1234-5678-90abcdef12 /boot/efi vfat    umask=0077,shortname=winnt 0 2  
    UUID=89ab-cdef-1234-5678-90abcdef1234 none  swap    sw 0 0  

    每行的第一个字段即为分区的UUID(如UUID=123e4567-e89b-12d3-a456-426614174000)。

注意事项

  • 该方法仅适用于已配置在/etc/fstab中的分区,未配置的分区不会显示。
  • 修改/etc/fstab文件需谨慎,错误的配置可能导致系统无法启动。

使用df命令结合工具链查看UUID

df命令主要用于显示磁盘空间使用情况,但可通过管道结合grepawk等工具提取UUID,适合需要关联挂载点和磁盘使用情况分析的场景。

操作步骤

  1. 查看df命令的输出,结合blkid提取UUID:
    df -Th | grep "^/dev/" | awk '{print $1, $7}' | while read device mountpoint; do blkid -s UUID -o value $device | xargs -I {} echo "$device -> UUID={}, $mountpoint"; done

    示例输出:

    如何查看linux的uuid

    /dev/sda1 -> UUID=123e4567-e89b-12d3-a456-426614174000, /  
    /dev/sda3 -> UUID=5678-90ab-cdef-1234-5678-90abcdef12, /boot/efi  

适用场景

  • 需要同时查看分区挂载点、磁盘空间使用情况和UUID时,此方法可一次性获取多维度信息。

特殊场景:LVM逻辑卷与RAID阵列的UUID查看

LVM逻辑卷UUID

LVM(Logical Volume Manager)逻辑卷的UUID可通过lvdisplay命令查看:

lvdisplay /dev/vg_name/lv_name

输出中的”LV UUID”字段即为逻辑卷的UUID。

软件RAID阵列UUID

软件RAID阵列(如/dev/md0)的UUID可通过mdadm命令查看:

sudo mdadm -D /dev/md0 | grep "UUID"

输出示例:UUID : a1b2c3d4-e5f6-7890-abcd-ef1234567890

不同方法对比总结

方法 命令/操作 适用场景 优点 缺点
lsblk lsblk -o NAME,UUID,FSTYPE 查看块设备及文件系统UUID 直观显示设备与UUID对应 需要解析输出列
blkid blkidblkid -s UUID 快速获取文件系统属性及UUID 简洁,支持过滤输出 不显示未格式化设备UUID
/dev/disk/by-uuid/ ls -l /dev/disk/by-uuid/ 通过路径查找UUID对应设备 无需命令,路径直观 仅显示已挂载或识别的设备
/etc/fstab cat /etc/fstab 查看已配置自动挂载的UUID 直接获取配置中的UUID 仅限已配置的分区
df+工具链 df | xargs blkid 结合磁盘使用情况分析UUID 可关联挂载点和空间使用 操作复杂,效率较低

相关问答FAQs

问题1:为什么同一个分区用lsblk和blkid查看的UUID格式不同?
解答:通常情况下,lsblk和blkid显示的UUID格式是一致的,但如果分区使用了多重挂载(如swap分区)或LVM逻辑卷,可能会出现差异,swap分区在lsblk中显示的UUID可能是文件系统UUID,而blkid可能同时显示设备UUID和文件系统UUID;LVM逻辑卷的UUID以”LVM-“开头,而其物理卷(PV)的UUID则是独立的,若分区被重新格式化,UUID会生成新的值,需确保查看的是当前分区的最新UUID。

问题2:如何通过UUID挂载一个新的分区?
解答:通过UUID挂载分区的步骤如下:

  1. 确认分区的UUID:使用blkid /dev/sdb1获取UUID,假设为”abcd1234-5678-90ef-ghij-klmnopqrstuv”;
  2. 创建挂载点:sudo mkdir /mnt/mydisk
  3. 临时挂载:sudo mount UUID=abcd1234-5678-90ef-ghij-klmnopqrstuv /mnt/mydisk -t ext4(ext4为文件系统类型,根据实际情况修改);
  4. 永久挂载:编辑/etc/fstab文件,添加行UUID=abcd1234-5678-90ef-ghij-klmnopqrstuv /mnt/mydisk ext4 defaults 0 2,保存后运行sudo mount -a测试配置是否正确,注意:确保文件系统类型、挂载选项(defaults)与分区实际属性一致,避免启动时挂载失败。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/28098.html

(0)
酷番叔酷番叔
上一篇 2025年9月22日 05:57
下一篇 2025年9月22日 06:23

相关推荐

  • 为什么fstab需要noexec选项?

    为什么需要重新挂载分区?修改挂载参数:例如将只读(ro)改为读写(rw),或禁用可执行权限(noexec),修复文件系统:当分区因异常变为只读时,重新挂载可恢复读写,调整安全设置:临时限制敏感目录的执行权限(如/tmp),避免重启:无需中断服务即可应用新配置,操作步骤查看当前挂载信息 mount | grep……

    2025年7月7日
    19100
  • linux如何安装libpng

    Linux中,可以使用包管理器安装libpng,在Debian/Ubuntu系统上运行sudo apt-get install libpng-dev,

    2025年8月14日
    30700
  • 电脑故障没U盘能自救吗?

    在Linux系统中,虽然没有与Windows完全相同的”安全模式”概念,但用户可通过单用户模式(Single-User Mode) 或救援模式(Rescue Mode) 实现类似功能,这些模式以最小化环境启动系统,仅加载必要服务,用于修复系统故障、重置密码或修复文件系统,以下是详细操作指南:适用于系统引导管理器……

    2025年7月31日
    17400
  • Linux源代码,该如何查看才高效?

    Linux作为开源操作系统的代表,其源代码是理解系统工作原理、进行二次开发或问题排查的重要资源,查看Linux源代码需要掌握获取源码的方法、理解源码结构,并借助合适的工具进行高效浏览和分析,获取Linux源代码是第一步,主要有三种方式:通过Git克隆官方仓库、下载发行版提供的源码包、或使用在线源码查看平台,Gi……

    2025年8月28日
    14800
  • 如何在win7进入linux系统安装驱动

    Win7系统中,可通过虚拟机软件如VMware或VirtualBox安装Linux系统,再在Linux

    2025年8月18日
    19200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信