アイノード番号の混乱

アイノード番号の混乱

xfsファイルシステムでは、私の印象は次のとおりです。

# xfs_info /dev/mapper/rootvg-root
meta-data=/dev/sda1              isize=512    agcount=16, agsize=1285043 blks
         =                       sectsz=4096   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=19730834, imaxpct=25
         =                       sunit=64      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=5119, version=2
         =                       sectsz=4096   sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

imaxpct=25- ファイルシステム inode が占めるスペースの割合です。

isize=512- 各単一のinodeのサイズ(バイト)

だから、以下の設定を見ると次のようになります。

# df -h
Filesystem                    Size  Used Avail Use% Mounted on
/dev/mapper/rootvg-root        80G  42G   38G   51% /

# df -hi
Filesystem                   Inodes IUsed IFree IUse% Mounted on
/dev/mapper/rootvg-root        1.3M   27K   1.3M    1% /

私のinodeの数が最大130万個にすぎないことはどのように可能ですか?各 inode が 512 バイトであれば、inode が占めることができるディスク領域全体 (完全に使用されている場合) は 665 MB にすぎません。 80GBの25%は20GBなので、それよりはるかに多くのinodeがあると予想されます。

mkfs.xfsには、inodeの数を決定するオプションがなく、各inodeのサイズとinodeが占めるファイルシステムの割合のみが表示されます。

ここで見逃したアイデアはありますか?これはrhel 7およびxfsファイルシステム用です。

答え1

既存のUnixファイルシステムとは異なり、XFSはすべてのinodeを同時に割り当てるわけではありませんmkfs。代わりに、制限に達するまで、要求に応じて新しいinodeを作成しますimaxpct。これにより、未使用のinodeの「無駄な」ディスク容量が最小限に抑えられます。

デフォルトの制限が使用に適していない場合は、ファイルimaxpctシステムがマウントされアクティブになっている間にユーティリティオプションを使用して-m調整できます。xfs_growfs

これの副作用は、ファイルシステムが実際に制限に達するのに十分なinodeを生成する理由があるまで、ファイルシステムで利用可能な最大inode数をInodes値が反映しないことです。df -iimaxpct

関連情報