如何让系统将硬盘检测为指定的块?(例如/dev/sde)

如何让系统将硬盘检测为指定的块?(例如/dev/sde)

如果我将硬盘驱动器连接到系统,并且希望系统将此设备识别为设备/dev/sde而不是默认设备/dev/sdb。 我该怎么做?

谢谢。

答案1

事实上,一种方法是:它涉及udev,并且这是其规则的最简单的用法。

创建一个文件 /etc/udev/rules.d/10-local.rules 并在其中插入以下行:

  KERNEL=="sd?1", NAME="my_hdd1"

此规则简单地将任何可能称为 sda1、sdb1 或 sdc1 的东西重命名为您选择的名称,在本例中为“my_hdd1”。设备节点将出现在

  /dev/my_hdd1

如果您愿意,可以使用设备(而不是分区)来执行此操作,无论哪种方式您最喜欢:

  KERNEL=="sd?", NAME="my_hdd"

上述规则将应用于要发现的第一个磁盘,通常是根磁盘 /dev/sda。如果您希望继续将此磁盘称为 /dev/sda,但希望将此规则应用于所有其他磁盘,则这些规则将变为:

   KERNEL=="sd[b-z]", NAME="my_hdd"
   KERNEL=="sd[b-z]1", NAME="my_hdd1"

再次按照您的意愿。

重新启动 udev,或者重启,就完成了。

答案2

不幸的是,命名方案下的驱动器顺序/dev/sdX是基于总线创建的(bus-based命名)。这就是为什么“持久命名方法”非常有用,因为它们可以在任何场合唯一地标识任何给定的设备。

有四种方案持久命名

  1. 标签
  2. 唯一唯一标识符
  3. ID/路径

这是关于持久块设备命名

正如我在评论中所说,如果你提供一个为什么,您可能会得到更好的答案,实际上可以解决您的根本问题,而不是简单地希望将东西安装在不同的地方,您很少需要实际使用标识符/dev/sdX

相关内容