如果我们可以只使用 /dev/disk/by-uuid,为什么要使用 udev 规则进行命名呢?

如果我们可以只使用 /dev/disk/by-uuid,为什么要使用 udev 规则进行命名呢?

我不明白对原始设备使用 udev 规则的倾向。以Oracle ASM设备为例,建议使用udev规则来命名原始设备,因为设备顺序可能不一致,但没有地方说也可以使用/dev/disk/by-uuid/。

我可以在 /etc/fstab 或其他地方使用 /dev/disk/by-uuid 吗?

还有为什么在 udev 规则中为原始设备而不是文件系统设置用户、所有者和权限?

答案1

不知道 Oracle ASM 是否有任何特殊注意事项,但一般来说,您可以/dev/disk/by-*/*在任何地方使用来代替真实设备。唯一出现这种问题的地方是编写得不好的脚本,不能很好地处理符号链接,但希望这种情况很少见。

但这仍然意味着使用 udev 规则。中的符号链接/dev/disk/by-*/*是由 udev 根据/usr/lib/udev/rules.d/60-persistent-storage.rules(以及其他一些)创建的。只是有人已经给你写好了规则。

答案2

当然,一个答案是您依赖遗留软件,MTX在我们的例子中。mtx需要可通过 访问磁带更换机器人设备/dev/changer,但这样的设备不存在,除非您创建 udev 规则,从相应的位置创建符号链接小型计算机接口设备到/dev/changer.

答案3

UUID 由磁盘内容提供。例如:UUID 由 GPT 分区表提供。但我不相信 MBR 表有它们,因此分区可能没有 UUID。假设分区上的文件系统提供 UUID,他们仍然会有一个“PARTUUID”。磁盘也可能具有重复的 UUID。如果您将dd一个磁盘转移到另一个磁盘, 就会发生这种情况。

无论内容如何,​​至少需要有一种方法来唯一标识磁盘......因此 udev 规则仍然有用。

鼓励在 fstab 中使用 UUID,因为假设没有重复,它会产生稳定的结果。在 /etc/fstab 中,您通常会指定UUID=...而不是/dev/disk/by-uuid/...

相关内容