Xfs 文件大小、索引节点大小和块大小


ll /srv/node/dcodxx/test.sh
-rw-r--r--. 1 root root 7 Nov  5 11:18 /srv/node/dcodxx/test.sh

文件大小以字节为单位显示。此文件存储在块大小为 4096 字节的 xfs 文件系统中。

xfs_info /srv/node/sdaxx/
meta-data=/dev/sda               isize=256    agcount=32, agsize=7630958 blks
         =                       sectsz=4096  attr=2, projid32bit=0
data     =                       bsize=4096   blocks=244190646, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=119233, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

这是否意味着一个块可以容纳多个文件,如果不是,剩余字节 (4096-7( 会发生什么?另外,为索引节点保留的 256 字节存储在哪里,如果它与文件存储在同一个块中,文件大小不应该更大 (256+7(?

文件数据以文件系统块大小为单位存储,目前无法在 XFS 上的多个文件之间进行块共享。 因此,已用磁盘空间始终是文件中舍入到下一个块大小的字节数 - 一个 1 字节的文件将在 4k 块大小的文件系统上占用 4k 的磁盘空间。

索引节点本身包含文件元数据,例如大小、时间戳、范围数据等 - 在 xfs 上,它还可以包含扩展的属性信息。

磁盘上的索引节点与文件数据块是分开的,并且无论使用的元数据量如何,在具有 256 字节索引节点的文件系统上将始终消耗 256 字节。 如果需要超过 256 个字节来存储其他范围信息或扩展属性数据,则将分配其他文件系统块大小的元数据块。

这是否意味着一个块可以容纳多个文件,如果不是,剩余字节 (4096-7( 会发生什么?

一个块不能包含多个文件。如果文件大于一个块,则使用多个块。

像XFS这样的现代文件系统具有称为"内联"的功能,其中足够小(不超过60字节(的文件可以存储在inode中,存储在存储指向块的指针的空间中。

为索引节点保留的 256 字节存储在哪里,如果它与文件存储在同一个块中,文件大小不应该更大 (256+7(吗?

索引节点

信息存储在索引节点表中。

相关内容

  • 没有找到相关文章