私たちのサーバーの1つで複数の60G論理ボリュームをフォーマットしています(そして、vg01-logs
このvg01-monitoring
パーティションには多くの小さなファイルが保存されているので、デフォルトよりもinodeを増やしたいと思います)。
root@mercury20:/root : lvs /dev/mapper/vg01-logs /dev/mapper/vg01-monitoring
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
logs vg01 -wi-ao---- 60.00g
monitoring vg01 -wi-ao---- 60.00g
vg01-logs
に設置予定です/logs
。最大数のinodeを生成ext4
するために(inodeごとのバイト)オプションを使用してフォーマットし、-i 1024
予想通りフォーマット後にパーティションに62914560個のinodeがありました。
mkfs.ext4 -i 1024 /dev/vg01/logs
ポストフォーマットとインストール:
root@mercury20:/root : tune2fs -l /dev/mapper/vg01-logs | egrep 'Inode count|Inode size'
Inode count: 62914560
Inode size: 256
root@mercury20:/root : df -h /logs
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg01-logs 45G 61M 42G 1% /logs
パーティションをマウントした後、df -h
60G論理ボリュームパーティションの出力サイズは45Gです。つまり。 15Gが消えた。 inodeサイズが256バイトで15Gが62914560*256
バイトなので、このスペース(15G)はinode生成用に予約されており、出力df
で失われますか?
vg01-monitoring
マウントする他の論理ボリュームはデフォルトオプションを使用してフォーマットされて/monitoring
います。作成されたパーティションにはパーティション(62914560)と同じ数のinodeがありますが、ここではフォーマットしてマウントした後に表示されるドライブサイズは元の60Gです。 15Gは失われません。 XFSパーティションのinodeサイズは256バイトで表されます。XFS
mkfs.xfs
ext4
df -h
xfs_info
ext4
root@mercury20:/root : mkfs.xfs -f /dev/mapper/vg01-monitoring
root@mercury20:/root : df -h /monitoring
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg01-monitoring 60G 33M 60G 1% /monitoring
root@mercury20:/root : xfs_info /dev/mapper/vg01-monitoring
meta-data=/dev/mapper/vg01-monitoring isize=256 agcount=4, agsize=3932160 blks
私の質問は次のとおりです。
1)最初のケースであるパーティションの場合、60Gのうち15Gがinode用に予約されているため、空き容量が45Gにすぎないとext4
仮定しますdf -h
。そうですか?
2)上記の仮定が正しい場合、XFSパーティションに45Gの代わりに60Gが表示されるのはなぜですか?これは、XFSがinodeが作成されたときにのみ「使用済み」としてinodeによって消費されたサイズを表示することを意味しますか?これは、XFSが60Gを使用できることを示していても、両方のドライブのユーザーデータの有効スペースは45Gであることを意味します。
オペレーティングシステムはSUSE Linux Enterprise Server 12(x86_64)です。
root@mercury20:/root : cat /etc/os-release
NAME="SLES"
VERSION="12-SP1"
VERSION_ID="12.1"