LVM2論理ボリュームの最適化

LVM2論理ボリュームの最適化

Q:LVM2論理ボリュームの最適化をサポートするツールはありますか? (範囲を一貫した順序にする)

これは望ましい範囲の順序です。「パーティションAはディスクの先頭にあり、BはAの後ろにありますが、XはPVの端にあります」)

もちろん、次の点を考慮する必要があります。

  • VGは1つのPVで構成されています。
  • VGは複数のPVで構成されていますが、各LVはPVに配置されています。
  • VGは複数のPVで構成され、LVの範囲は複数のPVにまたがっています。

パーティションを削除できるかどうかについて議論できます。

ヒント:移動範囲範囲を使用できますpvmove(例:)pvmove --alloc anywhere /dev/sdb1:1000-1999 /dev/sdb1:0-999

理由:多くの範囲を手動で移動するのはpvmove純粋に反復可能な作業なので(脳がないかどうかは疑問です)、このプロセスを自動化/サポートするツールがあるかどうか疑問に思います。そうでなければ...多分私は自分で作ることができます。そのようなツールが他の人に役立つと思いますか?

答え1

使ったLVM2デフラグこれから。最も単純で最もよく書かれたものではありませんが、うまくいきます。

答え2

最適化を実行するもう1つの理由は、論理ボリュームを縮小するときのデータ損失の可能性を減らすことです。論理ボリュームを縮小する具体的な理由の1つは、以前のMBRコンピュータのハードドライブで/ bootと同様のパーティションを拡張できるようにすることです。私の場合、LTS 16.04.03からLTS 18.04.1にアップグレードするには、元のデフォルトインストールで/ bootに500 MB以上を割り当てる必要がありました。

lvm2の数千行のソースコードを読んでいませんが、一部のオンラインヘルプ/wikiは、lvm2が単純な論理ボリューム縮小プロセスを使用するときに非常に強力な切り捨てを使用することを示唆しています。まるでファイルが縮小解除された領域に割り当てられているようです。そのファイルのリストを復元する必要があるかもしれません(アプリケーションまたはシステムパッケージが関連しているか、ユーザーファイルのリストが非常に大きい場合、これはそれ自体が難しいかもしれません)。

関連情報