lvextendの後に2fsのサイズを変更する必要があるのはなぜですか?

lvextendの後に2fsのサイズを変更する必要があるのはなぜですか?

LVM2パーティションのサイズを変更するには、次の2つのコマンドを実行する必要があります。

# lvextend -L+1G /dev/myvg/homevol
# resize2fs /dev/myvg/homevol

ただし、を実行すると、lvextend変更がパーティションに適用されていることがわかります(Gnome Diskに表示されます)。それでは、なぜまだこれを行うべきですかresize2fs

ベストアンサー1

lvextendオプションなしでこのコマンドを--resizefs使用すると、LVM側はブロックデバイスを論理ボリュームに拡張するだけです。 LVのファイルシステムの種類(またはファイルシステムが存在するかどうかにかかわらず)、これらの操作は常に似ています。

LVにext2/3/4ファイルシステムが含まれている場合、次の手順はファイルシステムのメタデータを更新し、追加されたスペースを管理するために必要なメタデータ構造を作成し、ファイルシステムがより多くの空き容量を持つことを知るようにします。拡張することです。 ext2/3/4ファイルシステムの場合、これには少なくとも以下が含まれます。

  • 追加スペース用の新しいinodeの作成
  • ファイルシステムがスペースを追加するブロックが使用中か使用可能かを知ることができる拡張ブロック割り当てデータ構造
  • 前述のデータ構造の拡張を妨げると、一部のデータブロックが移動する可能性があります。

ext2/3/4ファイルシステムの種類は非常に似ており、resize2fs単一のツールを使用してサイズを変更できますが、この部分はファイルシステムの種類によって異なります。 XFSファイルシステムでは、ツールを代わりに使用できますxfs_growfs。他のファイルシステムには独自の拡張機能があります。論理ボリュームにファイルシステムが含まれていないが、代わりに「raw」データベースやOracle ASMボリュームなどが含まれている場合は、別の手順を適用する必要があります。

すべてのファイルシステムは内部の仕組みが異なるため、ファイルシステムの拡張条件も異なります。ファイルシステム拡張用の共通APIを設計するのに時間がかかりました。これにより、fsadm resizeさまざまな種類のファイルシステムを拡張するための統合構文を提供するコマンドを実装できます。オプションはこのコマンド--resizefsのみを使用します。lvextendfsadm resize

つまりlvextend、。lvsvgslvdisplayvgdisplaydf

おすすめ記事