web-dev-qa-db-ja.com

iノード番号に関する混乱

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-iノードが占有する可能性のあるファイルシステムスペースのパーセンテージ

isize=512-各iノードのバイトサイズ

したがって、以下の設定を見ると、

# 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% /

どうすれば最大130万のiノードしか持てないのでしょうか。各iノードが512バイトの場合、iノードが占有できるディスク容量の合計(完全に使用されている場合)はわずか665MBであることを意味します。 80gbの25%は20gbでしたが、これよりもはるかに多くのiノードが期待されます。

Mkfs.xfsには、iノードの数値を決定するオプションがありません。各iノードのサイズとファイルシステムのiノードのパーセンテージのみが使用できます。

ここで私が見逃していることについてのアイデアはありますか?これは、rhel 7、xfsファイルシステム用です。

3
Jacob

従来のUnixファイルシステムとは異なり、XFSはmkfs時にすべてのiノードを割り当てません。代わりに、imaxpct制限に達するまで、要求に応じて新しいiノードを作成します。これにより、未使用のiノードに「浪費」されるディスクスペースが最小限に抑えられます。

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

これの副作用は、Inodesdf -iの値は、ファイルシステムが実際にimaxpct制限。

2
telcoM