Linux 块设备命名

pri*_*ntf 4 linux devices disk

我对 linux 硬盘驱动器/存储设备、块文件的命名方式有点困惑。

我的问题是:

  • IDE 设备和分区是如何命名的?

  • EIDE 设备和分区是如何命名的?

  • PATA 设备和分区是如何命名的?

  • SATA 设备和分区是如何命名的?

  • SCSI 设备和分区是如何命名的?

最后,我一直在阅读有关此主题的文章,并且看到了“主驱动器”和“从驱动器”的提及。这些是什么,它们的用途是什么,它们是如何命名的?

Par*_*dox 11

介绍

首先,所有设备都会填充该/dev文件夹。

另外,需要注意的是,(E)IDE 和 PATA 术语通常指的是同一个东西,即接口标准 PATA。在这种情况下,IDE 和 PATA 是可互换的术语。

围绕 Linux 内核版本 2.6 的发布,Linux 中块设备的命名约定发生了重大变化。内核通过libATA支持所有 ATA 设备,libATA始于 2003 年的 SATA 设备支持,并扩展到当前的 PATA 支持。

因此,请注意,根据您的发行版和内核版本,驱动器命名约定可能会有所不同。

一段时间以来,“现代”发行版上的 PATA 设备以 SATA 驱动器的方式命名,因为两者现在都使用 libATA。


对于您的发行版,您可以在/lib/udev/rules.d/60-persistent-storage.rules.

在我使用 Debian 9 的系统上,情况也是如此。例如:

$ cat /lib/udev/rules.d/60-persistent-storage.rules | grep "ATA"
# ATA
KERNEL=="sd*[!0-9]|sr*", ENV{ID_SERIAL}!="?*", SUBSYSTEMS=="scsi", 
ATTRS{vendor}=="ATA", IMPORT{program}="ata_id --export $devnode"
Run Code Online (Sandbox Code Playgroud)

通过浏览此文件,您将知道您的发行版将如何命名您可以连接到您的机器的每个块设备。

块设备命名约定

IDE 驱动器

  • IDE 驱动器(使用旧的 PATA 驱动程序)以“hd”为前缀
    • IDE 控制器(主)上的第一个设备是 hda
    • 第二个设备(从设备)是 hdb

由于一个 IDE 控制器/电缆上只能有两个驱动器,因此主设备是第一个,从设备是第二个。由于大多数主板都配备了两个 IDE 控制器,因此它与第二个控制器的运行方式相同:hdc作为第二个控制器的主驱动器和hdd从驱动器。

请注意,从 Linux 内核 2.6.19 开始,IDE 驱动器的支持已与 SATA/SCSI 驱动器合并,因此将命名为它们。

SATA 和 SCSI 驱动器

这种命名约定始于 SCSI 驱动器,并扩展到带有 libATA 的 SATA 驱动器。它适用于 SCSI、SATA、PATA 以及其他驱动器,不在 OP 问题的范围内(USB 大容量存储、FireWire 等)。无论如何,通常,现在所有使用串行总线的设备都使用相同的面额(NVMe 驱动器除外,但这将是 PCI 设备的故事)。

  • SATA/SCSI 驱动器以“sd”开头
    • 第一个是 sda
    • 第二个是 sdb
    • 等等。

分区命名约定

关于分区,它们中的每一个都由每个磁盘末尾的数字表示,如前所述命名,从 1 开始。除了 OP 中没有提到的一些其他设备,情况总是如此。

通过实例,对于SATA驱动器上的分区,他们将被列为sda1sda2等,用于主分区。逻辑分区从索引“5”开始,而扩展分区采用索引“4”。请注意,这显然仅适用于使用 MBR 而不是 GPT 的驱动器。

下面是lsblk一个名为 的磁盘示例的输出sdd,其中包含 3 个主分区 ( sdd1, sdd2, sdd3)、1 个扩展分区 ( sdd4) 和 2 个逻辑分区 ( sdd5, sdd6)。

$ lsblk
sdd      8:48   1   1.9G  0 disk 
??sdd1   8:49   1   153M  0 part 
??sdd2   8:50   1   229M  0 part 
??sdd3   8:51   1   138M  0 part 
??sdd4   8:52   1     1K  0 part 
??sdd5   8:53   1   289M  0 part 
??sdd6   8:54   1   1.1G  0 part 
Run Code Online (Sandbox Code Playgroud)

主从设备

单个 IDE 接口可以支持两个设备。通常,主板带有双 IDE 接口(主要和次要),用于系统上最多四个 IDE 设备。

为了允许两个驱动器在同一根并行电缆上运行,IDE 使用一种称为主从的特殊配置。此配置允许一个驱动器的控制器告诉另一个驱动器何时可以向计算机传输数据或从计算机传输数据。名字来源于从盘询问主盘是否与主板通信;如果master是,它会告诉slave等待操作完成,如果不是,它会告诉slave继续。

由于“电缆选择”功能,可以选择主/从角色:您可以在每个支持此功能的驱动器上使用跳线来选择“主”、“从”或“自动”(最后一个选项意味着主位于 IDE 电缆的末端,而从属设备是另一个)。

  • 乐于帮助!希望我说得够清楚了。 (2认同)