LV のすべてのデータを最初の PV に移動し、他のデータを削除します。

LV のすべてのデータを最初の PV に移動し、他のデータを削除します。

論理ボリュームがあり、/dev/echohome/home01

これには3つの物理ボリュームがあります。/dev/sda1, /dev/sdb1, /dev/sdc1

sda1は4TBで、使用可能なエクステントは0です。 sdb1は4TBで、利用可能なエクステントは476930です。 sdc1は1TBで、使用可能なエクステントはゼロです。

現在、ext4ファイルシステムは3.1TBで約45%を占めています。論理ボリュームサイズは6.37TBです。

すべてのデータをsda1またはsdb1に移動してから、他の2つのPVを削除したいと思います。私が読んだことに基づいて、私が望むことを達成するためにresize2fs pvmoveいくつかの組み合わせを試してみることができます。lvreduce

他の質問で取り上げていないような具体的な詳細は、保存したいデータの物理的な場所です。ファイルが物理的にどのPVにあるのかわからない場合は、どのように自信を持ってresize2fs終了できますかpvremove

編集:最も簡単な解決策は、ファイルシステム全体をより大きなディスクにバックアップして縮小し、再構成されたLVに戻すことです。 :(

答え1

他の質問で取り上げていないような具体的な詳細は、保存したいデータの物理的な場所です。ファイルが物理的にどのPVにあるのかわからない場合は、どのように自信を持ってresize2fs終了できますかpvremove

これを知る必要はありません。これがまさにLVMがすることです。 resize2fs は論理ボリュームで動作するため、複数のディスクにわたって使用できます。ファイルシステムが1つのディスクを収容できるほど小さい場合は、LVMにそれを移動して別のディスクを削除するように指示できます。


これを行うには5つのステップがあります。

  1. ファイルシステムのサイズを4TB未満に縮小します。 ( resize2fs)

  2. 論理ボリュームのサイズを4TB未満に縮小します。 ( lvreduce)

    (この段階はデータが失われる可能性があります。ファイルシステムより小さく論理ボリュームを切り捨てるには、マンページを読んでください。 )

  3. 各ドライブで論理ボリュームを移動します。 ( pvmove <source pv> <dest pv>)

    (これは一度に1つのディスクで行う必要があります。)

  4. ディスクを取り出します。 (vgreduceその後pvremove

  5. (オプション)手順2で論理ボリュームをファイルシステムより大きくした場合は、スペースが無駄にならないように、論理ボリューム全体を使用するようにファイルシステムを拡張します。 ( resize2fs)

関連情報