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文件大小,inode大小和块大小
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)会发生什么? 另外,如果保存在与文件相同的块中,为存储的inode保留256个字节,那么文件大小是不是应该更大(256 + 7)?
我不认为XFS实际上内嵌小文件。 http://xfs.org/index.php/Unfinished_work#Inline_data_in_inodes。 reiserfs可以选择将多个小文件打包到同一个块中。实际上在大多数文件系统中发生的是内部碎片(http://en.wikipedia.org/wiki/Fragmentation_%28computing%29#Internal_fragmentation)(除非文件大小是FS块大小的倍数)。 – 2015-03-02 07:37:47
它也会更多有用的说,inode被拼装成块。任何地方都没有一个“inode表”。据我了解,一块inode可以分配到任何地方。 (这是新crc = 1磁盘格式的动机的一部分,https://www.kernel.org/doc/Documentation/filesystems/xfs-self-describing-metadata.txt) – 2015-03-02 07:41:10