在 NTFS 中,扇区大小、块大小和簇大小有什么区别?

在 NTFS 中,扇区大小、块大小和簇大小有什么区别?

例如,我有一个从中提取了以下信息的卷ntfsinfo

$ sudo ntfsinfo -m /dev/sdb1
Volume Information
        Name of device: /dev/sdb1
        Device state: 11
        Volume Name: Photos 250GB
        Volume State: 27
        Volume Version: 3.1
        Sector Size: 512
        Cluster Size: 65536
        Index Block Size: 4096
        Volume Size in Clusters: 3815583

之前是通过以下方式创建的:

$ sudo mkfs.ntfs -c 65536 -Q -L "Photos 250GB" /dev/sdb1

我读过簇的大小是相同的分配单元大小stat在 Windows 中。因此我预计文件至少会占用 64KB,就像在 Windows 中一样。但是,从调用小文件来看,这似乎并不明显:

$ stat lsfsdf
  File: `lsfsdf'
  Size: 9               Blocks: 1          IO Block: 4096   regular file
Device: 811h/2065d      Inode: 80          Links: 1

我试图弄清楚这一切,所以想知道扇区大小簇的大小索引块大小在 输出的音量信息中ntfsinfo

答案1

“扇区大小”描述的是存储设备本身的原子单位大小。“簇大小”描述的是 NTFS 分配非常驻流的原子单位(见下文)。索引块用于存储目录。“索引块大小”描述的是索引块存储的原子单位大小。

由于常驻流的存在,您会看到小文件的子群集分配。小文件直接存储在主文件表 (MFT) 中(“常驻流”) 并且不需要分配集群。

相关内容