/dev/lvm/home
2つの論理ボリューム(および)を含むLVグループがあるとします/dev/lvm/root
。誤って重要なデータを削除し、/dev/lvm/home
それを実現したときにコンピュータをシャットダウンし、/dev/lvm/home
fstabをfstabから読み取り専用モードでマウントするように変更し、起動して/dev/lvm/root
使用を開始し、内容を書き始めたとします。私のものですか?削除されたデータは安全ですか? LVMがどのように機能するのかわかりません。同じLVグループの別の論理ボリュームにデータを書き込むことで、1つの論理ボリュームから削除されたデータを上書きできますか?fdisk -l
論理ボリュームの幾何学的構造が表示されないので、論理ボリュームの幾何学的構造というものがないのでしょうか?
ベストアンサー1
短い答え:はい、この場合、削除されたデータはできるだけ安全です。
通常の論理ボリューム(「シン」論理ボリュームとは反対)を構成すると、各論理ボリュームに特定のディスクブロック拡張が割り当てられ、これらのディスクブロックは、LVM構成コマンドを再使用しない限り変更されません。論理ボリュームのサイズ変更を開始しない限り、削除されたファイルを保持してhome
いるLVのブロックはそのLVに割り当てられたままであり、他のファイルシステムには触れません。
lvdisplay -m /dev/lvm/home
またはを使用して、pvdisplay -m /dev/sdXX
各LVに割り当てられているブロック拡張のリストを表示できますdmsetup table
。
(「薄い」LVの場合、問題はファイルシステムがこのオプションでマウントされてdiscard
いるかどうかです。)このオプションが設定されている場合、ファイルシステムは削除された基本ブロックで利用可能になり、薄いLVの場合、これらのブロックは「Thin Pool」再リリースすると、同じプールに属する別のThin LVに再割り当てできますが、discard
マウントオプションはデフォルトではなく、一般的な用途には推奨されません。
注意すべきはプログラムの実行ですfstrim
。特にディスクがSSDの場合はさらにそうです。多くの最新のディストリビューションでは、マウントされた各ファイルシステムに対して/ジョブまたはsystemdデバイスを介してfstrim
週に1回、このジョブを実行する傾向があります。削除されたデータを回復するには、安全のために無効にする必要があります。cron
anacron
*.timer
リバースエンジニアリングに興味がある場合、または8 GB未満のHDDで作業していない場合は、次の点を考慮する必要があります。ディスク幾何学〜のように「私たちは互換性のために古いソフトウェア/ファームウェアについて嘘をついています。」。これより大きいディスクは、デフォルトでブロック番号である論理ブロックアドレス(LBA)を使用します。
ディスク自体のファームウェアだけが実際のディスク構造に興味があり、これは既存のC / H / Sトリプルが表すことができるよりも複雑になる可能性があります。例えば、外側シリンダが内側シリンダよりも多くのセクタを含むことが標準である。 。報告されたすべてのC / H / S番号は、非常にfdisk
古いシステムに新しいディスクを挿入する場合に備えて、事実上完全にフィクションです。