LVMのdm-X(例:dm-0、dm-1、dm-2、dm-3など)ノードの内容を調べることは可能ですか?
Linuxシステムで緊急に多くのデータを回復する必要がありますが、このノードで見つけることができると思います。
(私のデータが残りの表示可能なdm-Xノードにない場合は、フォレンジックIT技術者を雇って何らかの方法ですべてのハードドライブをスキャンする必要があるようです)。
答え1
/dev/dm-*
各ノードが何に該当するかを知りたい場合は、dmsetup ls -o blkdevname
お知らせします。
各ノードにどの物理デバイスが含まれているかを知る必要がある場合に役立ちますdm-X
。dmsetup ls --tree -o blkdevname
このオプションがサポートされていないほど年齢が多い場合は省略でき、テーブルにデバイス番号がdmsetup
表示されます。実行すると、ファイルサイズの代わりにデバイス番号が形式で表示されます。-o blkdevname
(major:minor)
ls -l /dev/dm-*
major, minor
各マッピングの種類を識別するのに役立ちますdmsetup table
。
各デバイスノードの「コンテンツ」は、dm-X
単にマッピングによって表示される基本デバイスのコンテンツである。file -s /dev/dm-X
そのファイルシステムの種類(LABELとUUIDも可能)を識別できます。デバイスにファイルシステムがある場合は、すべてが正常であると仮定して、簡単にマウントして正常にアクセスできます。しかし、あなたがその言葉に言及したので、また覆う、ディスクエラーなどの問題があり、状況が複雑になるようです。
したがって、回復状況で必要な場合に備えて、いくつかのヒントは次のとおりです。
失敗したシステムがまだ実行されている場合は、dmsetup table
可能であればシステムを再起動する前に情報を入手してください。システムが再起動すると、/etc/lvm/backup
現在のLVM構成のバックアップが人が読める形式で含まれ、各構成変更前/etc/lvm/archive
の複数の古い構成バックアップが含まれます。
linear
最も簡単なマッピングでは、ディスクブロックセグメントを別のディスクデバイス上の同じサイズのセグメントにマッピングします。linear
LVを作成するときにより高度な機能(ストライピングやミラーリングなど)を明示的に指定しない限り、LVMはマッピングを使用します。
たとえば、実行すると、dmsetup table /dev/dm-3
次のように表示されます。
0 293601280 linear 8:1 2048
293601280 209715200 linear 8:1 817891328
これは、デバイスがdm-3
2つの線形マップで構成されていることを意味します。最初のブロック(ブロック#0から始まるdm-3
)は293601280ブロックのセグメントで、/dev/sda1
ブロック#2048(ブロックデバイス、週番号8、サブデバイス1 =)から始まり、デバイス8:1に線形にマッピングされます。 2番目のマッピングはブロック#293601280からdm-3
209715200ブロックに対して続き、/dev/sda1
ブロック#817891328で線形にマッピングされます。これは、一度拡張されたデフォルトのLVM論理ボリュームを見ると次のようになりますdmsetup table
。
その中に含まれているファイルシステムをdm-3
イメージファイルまたは他のデバイスにコピーするには、次の2つのdd
コマンドを実行できます。 (またはddrescue
ディスクにエラーがある場合)
dd if=/dev/sda1 bs=512 skip=2048 count=293601280 >/rescue/image
dd if=/dev/sda1 bs=512 skip=817891328 count=209715200 >>/rescue/image
一般的な状況では、これは単に次のこととまったく同じでなければなりません。
dd if=/dev/dm-3 bs=512 >/rescue/image
最初。