6.3. 使用 /dev/disk/ 中的 udev 机制管理的设备名称
udev
机制用于 Linux 中所有设备类型,不仅限于存储设备。它在 /dev/disk/
目录中提供不同类型的持久性命名属性。对于存储设备,Red Hat Enterprise Linux 包含 udev
规则,该规则在 /dev/disk/
目录中创建符号链接。这可让您使用以下方法指向存储设备:
- 其内容
- 唯一标识符
- 它们的序列号。
虽然 udev
命名属性是持久的,但它们在系统重启后不会自行更改,有些部分还可配置。
6.3.1. 文件系统识别符
/dev/disk/by-uuid/ 中的 UUID 属性
此目录中的条目提供一个符号链接名称,其通过存储在设备上的内容(即数据)中的 唯一标识符 (UUID)来指向存储设备。例如:
/dev/disk/by-uuid/3e6be9de-8139-11d1-9106-a43f08d823a6
您可以使用以下语法,使用 UUID 来指向 /etc/fstab
文件中的设备:
UUID=3e6be9de-8139-11d1-9106-a43f08d823a6
您可以在创建文件系统时配置 UUID 属性,您也可以稍后修改它。
/dev/disk/by-label/ 中的 Label 属性
这个目录中的条目提供了一个符号链接名称,它们使用保存在该设备中的内容(即数据)的一个 label 指向存储设备。
例如:
/dev/disk/by-label/Boot
您可以使用以下语法,使用标签来指向 /etc/fstab
文件中的设备:
LABEL=Boot
您可以在创建文件系统时配置 Label 属性,您也可以稍后修改它。
6.3.2. 设备识别符
/dev/disk/by-id/ 中的 WWID 属性
全球识别符(WWID)是一个持久的、系统独立的标识符,SCSI 标准要求所有 SCSI 设备都使用它。WWID 标识符确保对每个存储设备都是唯一的,并且与用于访问设备的路径无关。标识符是设备的属性,但不存储在设备上的内容(即数据)中。
可通过发出 SCSI 查询来检索设备识别重要产品数据(第 0x83
页)或单元序列号(第 0x80
页)来获取此标识符。
Red Hat Enterprise Linux 自动维护系统上从基于 WWID 的设备名称到当前 /dev/sd
名称的正确映射。应用程序可以使用 /dev/disk/by-id/
名称来引用磁盘上的数据,即使设备的路径改变了,即使从不同的系统访问设备。
例 6.1. WWID 映射
WWID 符号链接 | 非持久性设备 | 备注 |
---|---|---|
|
|
具有页 |
|
|
具有页 |
|
| 磁盘分区 |
除了系统提供的这些持久名称外,您也可以使用 udev
规则来实现自己的持久名称,映射到存储的 WWID 。
/dev/disk/by-partuuid 中的分区 UUID 属性
分区 UUID(PARTUUID)属性标识 GPT 分区表定义的分区。
例 6.2. 分区 UUID 映射
PARTUUID 符号链接 | 非持久性设备 |
---|---|
|
|
|
|
|
|
/dev/disk/by-path/ 中的 Path 属性
此属性提供一个符号链接名称,其通过用于访问设备的 硬件路径 指向存储设备。
如果硬件路径的任何部分(如 PCI ID、目标端口或 LUN 号)发生变化,Path 属性会失败。因此 Path 属性是不可靠的。但是 Path 属性在以下情况下可能有用:
- 您需要识别您要替换的磁盘。
- 您计划在特定位置的磁盘中安装存储服务。