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 -i
imaxpct