如何确定外部硬盘驱动器上的扇区大小?


15

硬盘驱动器正在从512字节的扇区大小过渡到4096字节的扇区大小,并且看起来Windows XP如果没有其他软件(例如Western Digital的WDalign)将不支持这些更新的驱动器。

我的问题是:这如何影响外部硬盘驱动器?我将购买一个1TB的USB外置驱动器,并将其插入Windows 7和XP计算机的混合体中。有没有一种简单的方法可以判断外部硬盘驱动器上的扇区大小?


1
请注意,操作系统报告的硬盘驱动器扇区大小!=文件系统分配单位(也称为“群集”)大小。例如,NTFS使用4kB大小的分配单元,但是(在旧HDD上)它们由8个HDD扇区组成。en.wikipedia.org/wiki/Allocation_unit
sigint 2010年

2
我想在如何确定Windows中的扇区大小的问题上有更多的信息,并且在“堆栈溢出”方面有一个更好的答案。建议使用该命令fsutil fsinfo ntfsinfo <volume pathname>
不合理的约翰·约翰·

Answers:


12

wmic partition get BlockSize, StartingOffset, Name, Index从Windows命令提示符运行。输出如下:

BlockSize  Index  Name                   StartingOffset
512        0      Disk #0, Partition #0  1048576
512        1      Disk #0, Partition #1  105906176
512        0      Disk #1, Partition #0  32256

其中块大小是驱动器的扇区大小。不幸的是,它没有列出驱动器号。

另外据我所知文章,驱动仍将列表,它具有512个字节扇区,即使在内部它采用4KB扇区。因此,唯一的方法可能是获取驱动器的规格表。


1
HDD的确可能会将块大小错误地报告给OS。但是,如果我在Win7(支持4k扇区)上尝试此操作,则应该报告正确的块大小。至少这样,我可以在外部硬盘驱动器上贴上“不要在没有WDAlign的XP上使用”标签。有4k扇区驱动器的任何其他评论者,请听取您的经验。谢谢!
西吉特(Sigint)2010年

2
在Stack Overflow上的此答案中解释了实际上不起作用的原因。该wmic命令报告的块大小显然是逻辑扇区大小,可能与驱动器的物理扇区大小不一致。关于SO的建议是使用fsutil命令。
不合理的约翰

这个答案是错误的。wmic partition告诉您有关分区的信息,而不是驱动器的信息,即使驱动器以每个逻辑扇区4096字节的形式将其自身呈现给主机计算机,或者当驱动器具有每个物理扇区的4096字节时,它也会返回512。
西装外套

8

我刚刚在Windows XP机器上使用WMIC对此进行了验证。这是查询:

C:\>wmic DISKDRIVE get bytespersector, caption  
BytesPerSector  Caption  
512             WDC WD1600AAJS-60M0A0  
4096            TrekStor HDD USB Device

据报道,较新的东芝外部磁盘为4096字节。


wmic DISKDRIVE get bytespersector告诉您提供给主机的逻辑扇区大小。物理扇区大小可以不同。
西装外套

2

我知道您不使用linux,但仅作记录:

smartctl -i /dev/...

表演

Sector Size:      512 bytes logical/physical

1

您可以通过命令提示符执行此操作。打开CMD(Windows+,r然后键入cmd)并运行chkdsk driveletter:chkdsk c:它将列为x bytes in each allocation unit

替代文字


2
我相信这是在谈论文件系统,而不是磁盘本身。
乔伊

这帮助我获得了想要的信息。谢谢。
dimitarvp

获取块大小的另一种方法是保存一个空的文本文件,右键单击,查看属性,并注意“磁盘大小”值(Windows通常默认为4k)
没必要

分配单位与扇区大小无关,除了分配单位必须包含X个扇区外。这是大小这是一件好事的Windows文件系统的支持,以防止MFT / FAT相对于要存储在设备上的实际数据太大作为。随处可见512字节扇区磁盘上的4k分配单元。
LawrenceC

1

Windows XP可以与每个物理扇区具有4096字节的现代驱动器配合使用。主要问题是,如果分区与物理扇区不对齐,则每个物理扇区具有4096字节,每个逻辑扇区具有512字节(512字节仿真或“ 512e”)的驱动器将无法达到最佳性能。Windows XP的内置分区工具无法对这些现代驱动器进行正确的对齐。要以适当的对齐方式对驱动器进行分区,请在较新的操作系统中进行分区,或者使用现代的3rd-party工具或硬盘驱动器供应商提供的工具进行分区。无论驱动器每个物理扇区使用512还是4096字节,都建议这样做。

您可以使用msinfo32(Windows XP和更高版本)检查现有分区的对齐方式:

  • msinfo32.exe>组件>存储>磁盘>分区起始偏移量(确保它是物理扇区大小的倍数,或SSD的1,048,576字节的倍数)

涉及三个不同的扇区大小:驱动器的物理扇区大小,驱动器的逻辑扇区大小以及提供给主机的逻辑扇区大小。如果驱动器是通过进行扇区大小转换的网桥连接的,则提供给主机的逻辑扇区大小可能与驱动器的逻辑扇区大小不同。外部USB驱动器通常会将与机箱内部驱动器相连的SATA接口上每个逻辑扇区的512字节转换为与主机之间的USB接口上每个逻辑扇区的4096字节。 这种转换使Windows XP可以使用超过2 TB的驱动器

Windows 10中的fsutil可以告诉您驱动器的物理扇区大小和呈现给主机的逻辑扇区大小:

C:> fsutil fsinfo sectorInfo c:
LogicalBytesPerSector :                                 512
PhysicalBytesPerSectorForAtomicity :                    4096
PhysicalBytesPerSectorForPerformance :                  4096
FileSystemEffectivePhysicalBytesPerSectorForAtomicity : 4096
Device Alignment :                                      Aligned (0x000)
Partition alignment on device :                         Aligned (0x000)

要获取USB桥后面的SATA驱动器的逻辑和物理扇区大小,您可以使用smartctl(包含在Windows 的GSmartControl软件包中)通过SMART查询通过桥向SATA驱动器传递:

C:\Program Files\GSmartControl> smartctl -a -d sat pd11
smartctl 6.5 2016-05-07 r4318 [i686-w64-mingw32-xp-sp3] (sf-6.5-1)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Green
...
Sector Sizes:     512 bytes logical, 4096 bytes physical

Windows XP的内置工具无法获得驱动器的物理扇区大小。您需要使用smartctl或类似工具来查询驱动器。

要获得呈现给主机的驱动器的逻辑扇区大小:

  • msinfo32.exe>组件>存储>磁盘>字节/扇区。(适用于Windows XP和更高版本)
  • wmic DISKDRIVE get bytespersector, caption (仅适用于Windows XP)
  • fsutil fsinfo ntfsinfo c: (“每扇区字节数”。在Windows XP和更高版本中适用)
  • fsutil fsinfo sectorInfo c: (“ LogicalBytesPerSector”。在Windows 10及更高版本中适用)

通过更改提供给主机的逻辑扇区大小,可以将许多2 TB以上的外部USB Western Digital驱动器配置为与Windows XP兼容


-1

您的物理HDD将具有由制造商定义的物理扇区大小(在较新的存储上为512或4096),然后在该文件系统之上创建逻辑扇区大小。

如果两者未对齐,则如果要修改的数据跨越两个块,则您将从两个块进行读取,修改和写入。

对于SSD,尽管它们在逻辑上在数据访问上的工作方式相同,但我相信它们的物理扇区为1024(由于闪存),因此您需要相应地分配分区Align=1024


2
这并没有真正解决作者的问题。
拉姆猎犬,2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.