Linux 中的硬盘驱动器/设备分区命名约定

Linux 中的硬盘驱动器/设备分区命名约定

Linux 中的硬盘驱动器/设备分区命名约定是什么?例如,,[hd0,0]等等sd0。它到底是什么意思?

当我需要在同一台机器上安装多个操作系统时,这有什么意义?

我们如何将它与 Windows 分区(例如:C:\驱动器或D:\驱动器)联系起来?

答案1

约定会根据您所查看的内容而变化;hd0,0看起来与 GRUB 类似,而sd0与 中的条目类似/dev,但都不符合我通常看到的内容。

/dev

  • IDE 驱动器以 开头hd,而 SATA(我相信任何类型的串行设备)以sd
  • a驱动器按电缆顺序以字母开头,/dev/sda第一个串行驱动器也是如此,/dev/hdb第二个 IDE 驱动器也是如此
  • 驱动器上的分区编号从 1 开始,/dev/sdb1第二个串行驱动器上的第一个分区也是如此

GRUB 1 不区分驱动器类型,它始终采用以下形式(hdX, Y)

  • X是驱动器的编号,从 0 开始,所以sdais hd0sdbishd1等。
  • Y是分区的编号,从0(不是 1 之类的/dev),也是sda1如此(hd0, 0)

我相信 GRUB 2 使用不同的语法,但我不知道


当您安装多个操作系统时,如果您想将它们放在单独的分区上,这一点很重要——您需要跟踪哪个操作系统位于何处。每当您处理未安装的驱动器时,这都非常重要;你需要知道它/已经打开/dev/sda1并且/home正在打开/dev/sda2(例如)

据我所知,Windows磁盘从磁盘0开始,分区没有任何特定的编号。驱动器盘符可以根据您的喜好进行分配,并且不与特定分区绑定

答案2

(hd0,0)蛴螬句法。 (请注意,这些是括号,而不是方括号。)Grub 是一个引导加载程序,即由计算机 BIOS 启动的一个小程序,其任务是加载操作系统。hd0引用检测到的第一个驱动器BIOShd1参考第二个。第二个数字是分区号; Grub 1 从 0 开始,而 Grub 2 从 1 开始。参见Grub 手册中的“命名约定”如果您想了解更多详细信息。

/dev/sda/dev/sdb等是默认名称硬盘(以及其他类似的存储,例如各种闪存盘,但不包括 CD 或磁带驱动器)Linux。最后一个字母按照检测到磁盘的顺序增长。您可能会在某些 Linux 发行版上找到/dev/hda/dev/hdb等。sd表示磁盘驱动程序内部使用SCSI接口,而hd表示驱动程序内部使用IDE接口。这只是一个内部内核问题,您可以而且经常将 IDE 磁盘显示为sd.额外的数字是分区号,从 1 开始。

您可能会遇到的分区如下PC分区方案。一个磁盘最多有 4 个主分区,编号为 1 到 4(在 Grub 1 中为 0 到 3)。它还可以具有任意数量的逻辑分区,在这种情况下,主分区之一不能包含文件系统,而必须是扩展分区(逻辑分区的容器)。逻辑分区从 5 开始编号(Grub 1 中从 4 开始)。

Linux 使用的设备文件(例如 )的名称/dev/sda实际上是由乌德夫程序,并且可以配置。这在涉及可移动介质的高级情况下通常很有用。

大多数时候,您不需要关心设备名称。它们在极少数地方被引用,通常只有两个:引导加载程序配置(正如我们所见,Grub 无论如何都有自己的名称)和/etc/fstab列出要在引导时挂载的文件系统的文件。 (甚至/etc/fstab并不总是通过诸如 之类的名称引用分区/dev/sda1。)重要的是挂载点,即每个文件系统挂载的位置(目录)。

Windows 使用完全不同的命名方案,很难与底层硬件结构联系起来。c:d:等被分配给 Windows 按特定顺序识别的分区类型(并且有多种方法可以影响此顺序)。维基百科有详细信息。

答案3

在我的 slackware 机器上,/dev/hda 是检测到的第一个硬盘驱动器。
/dev/hda1 和 /dev/hda2 是前两个分区。

我可以使用 fdisk 查看分区。

/dev/hda1               1         124      995998+  82  Linux swap
/dev/hda2   *         125        1662    12353985   83  Linux

在我的 Fedora 盒子上,/dev/sda 是检测到的第一个硬盘驱动器。
/dev/sda1 和 /dev/sda2 将是前两个分区。

相关内容