Linux中如何查看设备UUID

发布时间:2022-02-18 10:35:36 作者:iii
来源:亿速云 阅读:606
# Linux中如何查看设备UUID

## 1. 什么是UUID

UUID(Universally Unique Identifier,通用唯一识别码)是一个128位的标识符,用于在计算机系统中唯一地标识信息。在Linux系统中,UUID常用于:

- 唯一标识存储设备(硬盘、分区等)
- 替代传统的设备名称(如/dev/sda1)进行挂载
- 避免因设备顺序变化导致的挂载错误

相比传统的设备名称(如/dev/sda1),UUID具有以下优势:

1. **持久性**:即使设备连接顺序改变,UUID保持不变
2. **唯一性**:几乎不可能出现两个设备具有相同UUID的情况
3. **稳定性**:不受硬件添加/移除的影响

## 2. 查看设备UUID的常用方法

### 2.1 使用blkid命令

`blkid`是最常用的查看UUID的工具,它能够显示块设备的属性信息,包括UUID、文件系统类型等。

**基本用法**:
```bash
sudo blkid

输出示例

/dev/sda1: UUID="4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d" TYPE="ext4" 
/dev/sdb2: UUID="E8FE-5A31" TYPE="vfat"

高级用法: - 查看特定设备的UUID:

  sudo blkid /dev/sda1

2.2 使用lsblk命令

lsblk可以显示块设备信息,配合特定选项可以查看UUID。

基本用法

lsblk -f

输出示例

NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
sda                                                  
├─sda1 ext4         4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d /
└─sda2 swap         f9c5c3e1-3b7a-4d8c-9f2e-1a0b1c2d3e4f [SWAP]

常用选项: - -f:显示文件系统信息 - -o:指定输出列,如lsblk -o NAME,UUID

2.3 查看/etc/fstab文件

系统的挂载配置文件/etc/fstab中通常会使用UUID来标识设备:

cat /etc/fstab

示例内容

UUID=4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d / ext4 defaults 0 1

2.4 使用udevadm命令

对于更底层的信息,可以使用udevadm

sudo udevadm info -q all -n /dev/sda1 | grep UUID

2.5 查看/dev/disk/by-uuid目录

Linux系统会在/dev/disk/by-uuid/目录下创建以UUID命名的符号链接:

ls -l /dev/disk/by-uuid/

输出示例

lrwxrwxrwx 1 root root 10 Jan 1 12:00 4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d -> ../../sda1

3. 不同文件系统的UUID特点

不同文件系统类型的UUID表现形式有所不同:

文件系统类型 UUID格式示例 说明
ext4 4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d 标准UUID格式
vfat/FAT32 E8FE-5A31 较短的16进制数
NTFS 2A6B4C8D6B4C3E1A 16字节的16进制数
swap f9c5c3e1-3b7a-4d8c-9f2e-1a0b1c2d3e4f 与ext4格式相同

4. 使用UUID挂载文件系统

/etc/fstab中使用UUID挂载的示例:

# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=4cbb54a1-9954-4a6d...  /              ext4    defaults   0       1
UUID=E8FE-5A31              /boot/efi      vfat    umask=0077 0       1

手动挂载命令

sudo mount UUID=4cbb54a1-9954-4a6d-9a3b-0d5f6f5e5c1d /mnt

5. 修改设备UUID

某些情况下可能需要修改UUID:

5.1 修改ext2/3/4文件系统UUID

sudo tune2fs -U random /dev/sda1

5.2 修改swap分区UUID

sudo swapoff /dev/sda2
sudo mkswap -U new-uuid-here /dev/sda2
sudo swapon /dev/sda2

5.3 修改FAT32/UUID

sudo fatlabel /dev/sdb1 new-uuid

注意:修改UUID后,必须更新/etc/fstab中的相应条目。

6. UUID相关注意事项

  1. 权限问题:大多数查看UUID的命令需要root权限
  2. 虚拟设备:某些虚拟设备(如LVM、dm-crypt)可能有多个层次的UUID
  3. 克隆系统:克隆硬盘时会导致UUID重复,需要手动修改
  4. 网络文件系统:NFS等网络文件系统通常不使用UUID标识

7. 常见问题解答

Q1:为什么我的设备没有UUID? A:可能是设备没有文件系统,或者文件系统类型不支持UUID。

Q2:如何生成新的UUID? A:可以使用uuidgen命令生成随机的UUID:

uuidgen

Q3:UUID会重复吗? A:理论上UUID是唯一的,但在克隆硬盘等特殊情况下可能出现重复。

Q4:所有Linux发行版都支持UUID吗? A:现代主流发行版都支持,但某些嵌入式系统或旧版本可能不支持。

8. 总结

UUID是Linux系统中标识存储设备的可靠方式,掌握查看和管理UUID的方法对于系统管理至关重要。本文介绍了多种查看UUID的方法,包括:

  1. blkid - 最直接的工具
  2. lsblk - 显示设备树状结构
  3. /etc/fstab - 查看当前挂载配置
  4. /dev/disk/by-uuid/ - 通过符号链接查看

建议在系统管理中优先使用UUID而非设备名称,这样可以避免因硬件变化导致的系统启动问题。

附录:相关命令速查表

命令/文件 用途 示例
blkid 查看块设备属性 sudo blkid
lsblk -f 显示带文件系统的设备树 lsblk -f
tune2fs -U 修改ext文件系统UUID sudo tune2fs -U random /dev/sda1
uuidgen 生成随机UUID uuidgen
/etc/fstab 系统挂载配置文件 cat /etc/fstab
/dev/disk/by-uuid/ UUID符号链接目录 ls -l /dev/disk/by-uuid/

”`

注:实际字数约1600字,您可以根据需要添加更多细节或示例来达到1700字的要求。

推荐阅读:
  1. 如何查看Linux网卡UUID和MAC地址
  2. linux 查看UUID和MAC地址

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux uuid

上一篇:Linux中日志的示例分析

下一篇:Linux中冷门但非常实用的命令有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》