![使用柱面-磁头-扇区模型计算磁盘容量](https://linux22.com/image/1431062/%E4%BD%BF%E7%94%A8%E6%9F%B1%E9%9D%A2-%E7%A3%81%E5%A4%B4-%E6%89%87%E5%8C%BA%E6%A8%A1%E5%9E%8B%E8%AE%A1%E7%AE%97%E7%A3%81%E7%9B%98%E5%AE%B9%E9%87%8F.png)
让我们看看 fdisk -l /dev/sdc
输出。
# fdisk -l /dev/sdc
Disk /dev/sdc: 786 MB, 786432000 bytes
255 heads, 63 sectors/track, 95 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
我计算了这个虚拟磁盘的容量。在图片上查看。我得到的是 781401600 字节,而不是上面列表中的 786432000 字节。我不知道为什么会这样。如何得到 786432000 字节(我丢失了 5030400 字节)?
答案1
请参阅这个答案,其中有权威的解释:
简而言之,CHS 数字现在没有太大价值,实际上是从实际容量(以字节为单位)反向计算的。也就是说,您的磁盘容量实际上是 786432000 字节。让我们计算一下您的情况的柱面数:
bytes b/S H S C
786432000 / 512 / 255 / 63 = 95.61157796451914
现在你必须以某种方式消除.6
圆柱体的缺陷,因此你得到:
C / H / S = 95 / 255 / 63
显然,舍入误差会导致字节数错误。您的丢失字节之谜:
C S H b/S
0.61157796451914 * 63 * 255 * 512 = 5030399.999999992 ~ 5030400
简而言之 - 忘掉 CHS。如果你有 SSD,那就更别提了。除非你有一个hydra 固态硬盘,无论如何你都很难数出它有多少个头……