
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
。これは、大規模なボリュームでは一般的に行われることです。