質問 :既存の LVM ボリュームを縮小して、Ubuntu マシンのスペースを解放するにはどうすればよいですか?
既存のデータをバックアップ
システムを変更する前に、まずバックアップを作成することを常にお勧めします。これは、LVM サイズを縮小するとデータ破損のリスクが高まるためです。ほとんどの場合、lvreduce コマンドはデータ損失の可能性について警告し、確認を求めます。ただし、論理ボリュームが非アクティブである場合や –resizefs コマンドが実行された場合など、これらのプロンプトが表示されない場合があるため、データの損失を防ぐためにこれらの確認プロンプトに依存しないでください。 オプションは使用しません。 –test を使用することに注意してください lvreduce コマンドのオプションは、ファイル システムをチェックしたり、ファイル システムのサイズ変更をテストしたりしないため、操作が安全な場所を示すものではありません。
縮小したい論理ボリュームの名前を見つけます (この例では、論理ボリューム /dev/vg0/lv_data を使用しています):
# lvs
この例では、現在および予想されるボリューム サイズは次のとおりです。
現在のボリューム サイズ:100 GB予想されるボリューム サイズ:80 GB
FS チェックを実行
lvreduce を実行するには、ディスクをアンマウントする必要があるため、ディスク上でアクティビティが必要ないときにこれを実行する必要があります。次に、ファイルシステム チェックを実行して、データの整合性を確認します:
# umount /dev/vg0/lv_data # e2fsck -f /dev/vg0/lv_data
音量を下げる
lvreduce を使用して論理ボリュームのサイズを変更します 指図。このコマンドは、論理ボリュームとともにファイル システムを縮小できます。
# lvreduce -r -L 80G /dev/vg0/lv_data
-r に注意してください ここにフラグを立てます。 lvreduce の man ページによると:
-r|--resizefs Resize underlying filesystem together with the LV using fsadm.
ボリュームをマウントする
論理ボリュームを再度マウントできます:
# mount /dev/vg0/lv_data
これで、ボリューム グループに 20G の空き容量ができました。その後、lvcreate を使用して、20G の空き容量を使用して新しい論理ボリュームを作成できます。
結論
古い Linux システムでは、lvreduce に「-r」オプションがありませんでした。これは、基になるファイルシステムのサイズ変更を処理するため、論理ボリュームを縮小する前に resize2fs が必須です。しかし、これはもはや必要ありません。