man resize2fs
説明する
resize2fsプログラムは、ext2、ext3、またはext4ファイルシステムのサイズを変更します。デバイスにマウントされていないファイルシステムを拡大または縮小するために使用できます。 ...この
size
パラメーターは、要求されたファイルシステムの新しいサイズを指定します。
size
指定するパラメータをどのように選択しますかresize2fs
?だけでなく:
ファイルシステムのサイズはどのように定義されますか?
外部断片化および/または内部断片化も計算されますか?外部断片化を計算せずに内部断片化を計算する場合は、resize2fs
既存のファイルが変更または削除されない限り、ファイルシステムのサイズは同じでなければなりません。
それは重要ですか?デフラグなどの inode を格納するために使用されるスペースとルートで使用されるスペース?
df
「使用済み」列にgparted
各ファイルシステムのサイズが表示されますか?size
選択したパラメータに「使用された」数字を使用できますかresize2fs
?の「使用済み」列には、df
同じgparted
パーティションに対して異なる使用番号が表示されますが、その理由は不明です。
ありがとうございます。
ベストアンサー1
resize2fs
(および他の同様のツール)で使用されるファイルシステムのサイズmke2fs
は、ファイルシステムの外部サイズです。つまり外部で占めるスペースの量を見てください。ファイルシステムの内部データ構造はここでは重要ではありません。ファイルシステムのすべて(メタデータ、データ、およびファイルシステムの未使用領域)は、ファイルシステムのサイズに適しています。これには、設定可能なファイルシステムと同じパーティションでホストされているすべてのブートローダも含まれます。Ext2/3/4付属、たとえば、XFSには適用されません。
ファイルシステムの現在のサイズを決定する最良の方法は、ファイルシステムから読み取ることです。たとえば、ext2/3/4 ファイルシステムでは、ブロック数にブロックサイズを掛けることができます。
dumpe2fs -h /path/to/file/system | grep -E 'Block (count|size):'
デフォルトでは、ファイルシステムのサイズは通常、そのコンテナのサイズです。例えばこれには、パーティションまたは論理ボリュームが含まれます。resize2fs
サイズを明示的に指定しないと、この値が使用されます。size
指定は、ファイルシステムとそのコンテナを縮小したい場合に便利です。まずresize2fs
、ターゲットサイズで実行し、一致するようにコンテナ(パーティション、論理ボリュームなど)を縮小します。
ファイルシステムを縮小できる最小サイズを決定する最善の方法は、それresize2fs
自体を使用することです。
resize2fs -M -P /path/to/file/system
使用されるブロックサイズを決定するために、最小のファイルシステムが占めるブロックの数を示します。
dumpe2fs -h /path/to/file/system | grep Block\ size
以下を追加して計算の詳細を取得できます-d 32
。
resize2fs -d 32 -M -P /path/to/file/system
ファイルシステムの最大サイズは通常、そのコンテナ(パーティションまたは論理ボリューム)のサイズです。パーティションまたは論理ボリュームのファイルシステムは、パーティションまたは論理ボリュームより大きくすることはできません。ファイルシステムが拡張できる範囲を制限する他の制約があるかもしれません。 (画像ファイルに保存されているファイルシステムは動作が異なり、resize2fs
ファイルサイズが大きくなったり縮小したり、ファイルシステムのサイズに合わせて変更されます。)