論理ボリュームの使用率は 100% ですが、50G が空きとして表示されます

論理ボリュームの使用率は 100% ですが、50G が空きとして表示されます

CentOS サーバーで論理ボリュームのサイズを変更しているときに、ボリュームが 100% と表示されるという問題が発生しました。ただし、「サイズ」列と「使用済み」列には、さらにスペースが必要であることが示されているようです。

df -h /volume_name
Filesystem  Size   Used  Avail  Use%  Mounted on
/dev/blah   1014G  963G  24M    100%  /volume_name

問題の原因となっている場合に備えて、私のサイズ変更プロセスは次のとおりです。

umount /dev/volume_name
lvresize -L 1014G /dev/volume_name
e2fsck -f /dev/volume_name
resize2fs /dev/volume_name
mount /dev/volume_name /volume_name

未使用の領域がこれほど多いのは普通でしょうか? ボリュームに対して e2fsck を実行すると、ほとんどのボリュームに約 2 ~ 3% の非連続領域があると表示されます。これが問題の原因となっている可能性がありますか?

ご協力いただければ幸いです。問題を検索してみましたが、間違った用語を使用している可能性がありますので、正しい方向を指し示していただければ幸いです。

答え1

それはどのようなタイプの FS ですか? ext2/3/4 の場合、予約ブロックを指定せずに FS を作成すると、デフォルトで 5% の予約ブロックがあり、1TB ファイルシステムの場合は 50GB になります。

以下を試してください:

tune2fs -l /dev/blah |grep -i reserved

これらは、ユーザー root 用に予約されたブロックです。これは、OS の実行に不可欠なファイルシステム (rootfs、/var、/tmp など) には意味がありますが、/home、/apps などには極めて逆効果です。

予約を削除する場合は、次のように入力します。

tune2fs -m0 /dev/blah

答え2

システムで「dumpe2fs -h /dev/blah |grep -E "lock count"」を実行し、ブロック数と予約ブロック数を確認します。ファイルシステムを作成すると、管理目的で 5% の領域が予約されます。簡単な計算をすると、1014G の 5% は約 50G であることがわかります。これを調整する場合は、tune2fs コマンドの -r および -m オプションを使用して調整できます。

答え3

デフォルトでは、ファイルシステムを作成するときに、ブロックの 5% がスーパーユーザー (root) 用に予約されます。ext[2-4] ファイルシステムのプロパティは、 で確認できますdump2fs

-mオプションを使用してそのパーセンテージを変更できますtune2fs。これは、大規模なボリュームでは一般的に行われることです。

関連情報