如何检查 Windows 上 exFat 分区的簇大小(分配单元大小)?

如何检查 Windows 上 exFat 分区的簇大小(分配单元大小)?

我想重新格式化一个 exFAT USB 驱动器,其分配大小与当前工厂 exFAT 分区相同,所以当它询问我分配大小时,我不知道该回答什么:

格式对话框中的簇大小

因此问题是:如何在 Windows 上检查 exFAT 分区的扇区大小?例如,在 Linux 上,您可以执行以下操作:

echo print all | parted /dev/sda

输出:

GNU Parted 3.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print all
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
  • 这里显示扇区大小为 512 字节。

答案1

使用文件系统工具

fsutil fsinfo sectorInfo D:

输出

LogicalBytesPerSector :                                 4096
PhysicalBytesPerSectorForAtomicity :                    67108864
PhysicalBytesPerSectorForPerformance :                  67108864
FileSystemEffectivePhysicalBytesPerSectorForAtomicity : 4096
Device Alignment :                                      Not Aligned (0x1000)
Partition alignment on device :                         Not Aligned (0x100000)
Performs Normal Seeks
Trim Not Supported
Not DAX capable
Not Thinly-Provisioned

答案2

部门大小与磁盘驱动器的关系比与分区/卷的关系更密切,因为分区中的文件系统会将扇区组合成相反。“分配单元大小”您的屏幕截图中簇的大小不是扇区大小!要检查簇大小,请参见检查 Windows 上 exFAT 驱动器的簇大小

无论如何重新格式化驱动器与当前工厂 exFAT 分区具有相同的分配大小毫无意义,因为分配单元大小与扇区大小无关,而是取决于您的数据。例如,如果您主要存储大型媒体文件,则选择较大的分配大小以获得更好的性能,而如果您主要将驱动器用于非常小的文件,则需要选择较小的分配大小,否则开销会很大,并且会发生类似情况

它似乎是中国产的假容量 U 盘,固件经过精心设计,容量为 8TB,但当我尝试将 200GB 的数据移入其中时,文件就损坏了,所以它的实际容量应该小于 200GB

没有哪个糟糕的 USB 驱动器是 4GB,更不用说 200GB 或 8TB 了。您没有机会恢复数据。最有可能的是,当您写入超过驱动器大小的内容时,它已经回到开头并覆盖文件系统的元数据,使得扇区大小看起来很大,但实际上并非如此。而且您也找不到刷新驱动器固件来获取实际大小的方法,所以只能把它扔掉


有很多方法可以获取扇区大小,其中之一是通过查询威盛wmic

C:\> wmic diskdrive get DeviceID,BytesPerSector,DefaultBlockSize,MinBlockSize,MaxBlockSize
BytesPerSector  DefaultBlockSize  DeviceID            MaxBlockSize  MinBlockSize
512                               \\.\PHYSICALDRIVE0

或者Get-WmiObject在 PowerShell 中

PS C:\> (Get-WmiObject win32_diskdrive).BytesPerSector
512

虽然WMI 已弃用并且新代码应该使用Get-CimInstance反而

PS C:\> (Get-CimInstance win32_diskdrive).BytesPerSector
512

您还可以通过fsutil旁边的按钮来检查sectorInfontfsInfo

> fsutil fsinfo ntfsinfo C: | findstr /c:"Bytes"
Bytes Per Sector  :                512
Bytes Per Physical Sector :        4096
Bytes Per Cluster :                4096  (4 KB)
Bytes Per FileRecord Segment    :  1024

答案3

运行以下命令:

chkdsk d:

从下往上第三行输出显示{每个分配单元中有 XXX 字节}。

相关内容