Linux上的分区和他们的CHS依赖

最近我遇到了分区WD20EARS磁盘(有4k扇区)的问题。 我需要分区正确alignment,所以我刚刚使用了“单元s”模式,并开始在mod8扇区(驱动器本身报告,该扇区是512b)的所有分区,并在mod8-1部门结束所有分区。

但后来我想,这可能是我应该考虑到圆柱体边界(我已经看到了一些networking上fdisk抱怨分区不在圆柱体边界上开始/结束的post)。 然后…我想,如果驱动力在于它的扇形尺寸,可能是对整个几何体的描述?

我应该关心分区与圆柱边界alignment吗? 如果是的话,我如何find这些界限呢? 我想每个驱动器模型可以包含不同的部门每个轨道/汽缸…或者扇区alignment是我应该照顾的?

您不必担心现代(1998年以后,大约)硬盘驱动器上的柱面alignment。 C / H / S值与实际驱动器几何形状没有任何关系。 为了向后兼容,你的BIOS正在select和报告一些便利的虚构值。 (您也可以在启动时通过CMOS设置更改这些值。)

除非你使用的是90年代中期的操作系统或更古老的东西(例如MS-DOS),否则BIOS报告的C / H / S值基本上是不相关的。 现代的Linux和Windows变体使用LBA(逻辑块寻址)来处理磁盘I / O,因此它们直接将磁盘扇区定义为扇区号。 磁盘操作和性能将完全相同,无论C / H / S值与您的分区边界有关。

'fdisk'实用程序可能会抱怨,但您可以放心地忽略它。

错误的是,如果你使用Grub4DOS映射到内存上,它会使用C / H / S而不是LBA,而且有很多VHD文件,MBR会说C / H / S值与分区C / H / S值不同。

当使用Windows本机工具Diskpart创buildVHD文件时,也会使用此类工具创build其自身的分区。

所以有时C / H / S也在2017年。