programmer Asked: 2019-04-06 10:27:33 +0800 CST2019-04-06 10:27:33 +0800 CST 2019-04-06 10:27:33 +0800 CST Linux 块设备命名 772 我对如何命名 linux 硬盘驱动器/存储设备、块文件有点困惑。 我的问题是: IDE 设备和分区是如何命名的? EIDE 设备和分区是如何命名的? PATA 设备和分区是如何命名的? SATA 设备和分区是如何命名的? SCSI 设备和分区是如何命名的? 最后,我一直在阅读有关此主题的文章,并且看到提到“主驱动器”和“从驱动器”。这些是什么,它们的用途是什么,它们是如何命名的? linux devices 2 个回答 Voted Best Answer Paradox 2019-04-06T11:01:29+08:002019-04-06T11:01:29+08:00 介绍 首先,所有设备都会填充该/dev文件夹。 另外,需要注意的是,(E)IDE 和 PATA 术语通常指的是同一个东西,即接口标准 PATA。在这种情况下,IDE 和 PATA 是可互换的术语。 围绕 Linux 内核版本 2.6 的发布,Linux 中块设备的命名约定发生了重大变化。内核通过libATA支持所有 ATA 设备,它从 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" 通过浏览此文件,您将知道您的发行版将如何命名您可以连接到您的机器的每个块设备。 块设备命名约定 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 驱动器上的分区,对于主分区,它们将被列为sda1、sda2等等。逻辑分区从索引“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 主设备和从设备 一个 IDE 接口可以支持两个设备。通常,主板带有双 IDE 接口(主要和次要),用于一个系统上最多四个 IDE 设备。 为了允许两个驱动器在同一条并行电缆上运行,IDE 使用称为主从的特殊配置。此配置允许一个驱动器的控制器通知另一个驱动器何时可以将数据传输到计算机或从计算机传输数据。这个名字来源于从驱动器询问主驱动器是否与主板通信的事实;如果master是,它会告诉slave等到操作完成,如果不是,它会告诉slave继续。 由于“电缆选择”功能,可以选择主/从角色:您可以在支持此功能的每个驱动器上使用跳线来选择“主”、“从”或“自动”(最后一个选项意味着主是在 IDE 电缆的末端,从机是另一个)。 K7AAY 2019-04-06T10:50:45+08:002019-04-06T10:50:45+08:00 找到了一个旧参考,它指的是除 SATA 之外的所有东西。 SATA 和 SCSI 驱动器是/dev/sd X,其中以a开头表示物理驱动器。 分区是/dev/sdX Y ,其中Y表示该设备内的分区号(以 1 开头)。 EIDE 设备命名与 IDE 与 PATA 相同,在 Linux 内核 2.6.19 之前(感谢Paradox注意到更改!) /dev/hda 是“主”控制器上的“主”驱动器。 /dev/hdb 是“主”控制器上的“从”驱动器。 /dev/hdc 是“辅助”控制器上的“主”驱动器。 /dev/hdd 是“辅助”控制器上的“从”驱动器。 每个驱动器设备后面都有一个数字来表示分区,从 1 开始。 从 Linux 内核 2.6.19 开始,EIDE、IDE 和 PATA 使用与 SCSI 和 SATA 相同的命名约定。
介绍
首先,所有设备都会填充该
/dev
文件夹。另外,需要注意的是,(E)IDE 和 PATA 术语通常指的是同一个东西,即接口标准 PATA。在这种情况下,IDE 和 PATA 是可互换的术语。
围绕 Linux 内核版本 2.6 的发布,Linux 中块设备的命名约定发生了重大变化。内核通过libATA支持所有 ATA 设备,它从 2003 年开始支持 SATA 设备,并扩展到当前的 PATA 支持。
因此,请注意,根据您的发行版和内核版本,驱动器命名约定可能会有所不同。
一段时间以来,“现代”发行版上的 PATA 设备被命名为 SATA 驱动器的方式,因为现在两者都使用 libATA。
对于您的发行版,您可以在
/lib/udev/rules.d/60-persistent-storage.rules
.在我使用 Debian 9 的系统上,情况也是如此。例如:
通过浏览此文件,您将知道您的发行版将如何命名您可以连接到您的机器的每个块设备。
块设备命名约定
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 设备的故事)。
sda
sdb
分区命名约定
关于分区,它们中的每一个都由每个磁盘末尾的数字表示,如前所述命名,从 1 开始。除了 OP 中没有提到的一些其他设备外,总是如此。
例如,对于 SATA 驱动器上的分区,对于主分区,它们将被列为
sda1
、sda2
等等。逻辑分区从索引“5”开始,而扩展分区采用索引“4”。请注意,这显然仅适用于使用 MBR 而不是 GPT 的驱动器。下面,这是
lsblk
给出一个名为 的磁盘示例的输出sdd
,具有 3 个主分区(sdd1
、sdd2
、sdd3
)、1 个扩展分区(sdd4
)和 2 个逻辑分区(sdd5
、sdd6
)。主设备和从设备
一个 IDE 接口可以支持两个设备。通常,主板带有双 IDE 接口(主要和次要),用于一个系统上最多四个 IDE 设备。
为了允许两个驱动器在同一条并行电缆上运行,IDE 使用称为主从的特殊配置。此配置允许一个驱动器的控制器通知另一个驱动器何时可以将数据传输到计算机或从计算机传输数据。这个名字来源于从驱动器询问主驱动器是否与主板通信的事实;如果master是,它会告诉slave等到操作完成,如果不是,它会告诉slave继续。
由于“电缆选择”功能,可以选择主/从角色:您可以在支持此功能的每个驱动器上使用跳线来选择“主”、“从”或“自动”(最后一个选项意味着主是在 IDE 电缆的末端,从机是另一个)。
找到了一个旧参考,它指的是除 SATA 之外的所有东西。
SATA 和 SCSI 驱动器是/dev/sd X,其中以a开头表示物理驱动器。
分区是/dev/sdX Y ,其中Y表示该设备内的分区号(以 1 开头)。
EIDE 设备命名与 IDE 与 PATA 相同,在 Linux 内核 2.6.19 之前(感谢Paradox注意到更改!)
/dev/hda 是“主”控制器上的“主”驱动器。
/dev/hdb 是“主”控制器上的“从”驱动器。
/dev/hdc 是“辅助”控制器上的“主”驱动器。
/dev/hdd 是“辅助”控制器上的“从”驱动器。
每个驱动器设备后面都有一个数字来表示分区,从 1 开始。
从 Linux 内核 2.6.19 开始,EIDE、IDE 和 PATA 使用与 SCSI 和 SATA 相同的命名约定。