web-dev-qa-db-ja.com

LVMスナップショットは書き込み可能ですか? (そして一時的な実験に使用されます)

通常、スナップショットは読み取り専用として話されているようです。 ( スナップショットを作成し、メインボリュームでいくつかの実験を行ってから、古い状態を復元する by スナップショットをメインボリュームに「マージ」する のシナリオ。 )

LVMで代替シナリオは可能ですか?つまり、一時的な実験をメインボリュームに表示したくない場合は、「一時的な」スナップショットを作成して書き込み可能にし、そこで実験をその「ブランチ」で実行してから、スナップショットを破棄します(または、結果に満足している場合は、おそらくそれをマージします)?

また、LVMで書き込み可能なスナップショットが可能な場合、変更されたスナップショットを、いくつかの異なる変更が加えられたメインボリュームにマージするとどうなりますか?

(BTW、 btrfsスナップショットはデフォルトで書き込み可能のようです なので、このシナリオはbtrfsで十分に可能であるようです。)

LVMは、実際にはこれがデフォルトの読み取り/書き込みスナップショットをサポートしています。変更されたスナップショットをマージすると、変更されていないスナップショットをマージするのと同じ方法で、スナップショットOriginボリューム上のデータが削除されます。

変更を破棄する予定の場合は、RWスナップショットを使用し、それらを保持する場合はマージすることをお勧めします。変更を保持する予定の場合は、ROスナップショット(またはRWはマウントしない)を作成し、問題が発生した場合はマージする必要があります。

最初の状況の例は次のとおりです。毎日まったく同じソフトウェアで仮想マシンを起動したい。パッチをインストールしたために変更を保持したい場合もありますが、ほとんどの場合、最初からやり直したいと思います。

2番目の状況は、システムのアップグレードである可能性があります。ほとんどの場合、それは機能し、スナップショットを削除できます。しかし、時々失敗し、マージしたいと思うことがあります。

8
stribika