ddrescueはエラーなしで私のパーティションのイメージを作成しましたが、イメージをループデバイスとしてマウントできませんでした。

ddrescueはエラーなしで私のパーティションのイメージを作成しましたが、イメージをループデバイスとしてマウントできませんでした。

2つのパーティションを持つ疑わしいntfsドライブがあります(安全モードに入ることを除いて、起動が完全に停止したwin2kシステムで)。 ddrescueを使用して2つのパーティションを別々にコピーしました。

最初は成功しました。

  • パーティションに「システム」というラベルが付けられています。
  • sudo ddrescue /dev/sdd1 /media/chris/WINDOWS/win2k_machine/sdd1/sdd1.img ~/sdd1_rescue.logエラーなしで実行され、不良セクタは報告されません。
  • sudo mount -o loop /media/chris/WINDOWS/win2k_machine/sdd1/sdd1.img /media/win2ksys/mkdirマウントポイントを最初に作成するために使用されました。したがって、私のアプローチはよさそうです。

2番目のものはインストールできません:

  • パーティションには「データ」というラベルが付けられ、 sudo ddrescue /dev/sdd2 /media/chris/WINDOWS/win2k_machine/sdd2/sdd2.img ~/sdd2_rescue.log エラーなしで実行され、不良セクタも報告されません。前のコマンドを編集してこのコマンドを生成しました。出力ファイルのサイズはパーティションと同じです(gpartedで確認)。
  • sudo mount -o loop /media/chris/WINDOWS/win2k_machine/sdd1/sdd2.img /media/win2kdata/(最初にmkdirマウントポイント生成を使用してコマンドを生成するには、履歴内のコマンドを編集して再利用します)失敗しました。

これは失敗し、イメージmount: /media/win2kdata: wrong fs type, bad option, bad superblock on /dev/loop8, missing codepage or helper program, or other error. に実際のバグがあるか、インストールしようとしたときに問題が発生したかどうかはわかりません。 ntfsfixレポート

mounting volume... ntfs_mst_post_read_fixup_warn: magic: 0x00000000  size: 1024   usa_ofs: 0  usa_count: 0: Invalid argument
Record 0 has no FILE magic (0x0)
Failed to load $MFT: Input/output error
FAILED
Attempting to correct errors... ntfs_mst_post_read_fixup_warn: magic: 0x00000000  size: 1024   usa_ofs: 0  usa_count: 0: Invalid argument
Record 0 has no FILE magic (0x0)
Failed to load $MFT: Input/output error
FAILED
Failed to startup volume: Input/output error
Checking for self-located MFT segment... ntfs_mst_post_read_fixup_warn: magic: 0x00000000  size: 1024   usa_ofs: 0  usa_count: 0: Invalid argument
OK
Unrecoverable error
Volume is corrupt. You should run chkdsk. 

これは本当に破損したドライブがイメージされているという信号ですか、それともマウントしようとしているのに問題がありますか?イメージに対してWindows chkdskを実行できるかどうか疑問であり、動作するイメージがあることが確実になるまで物理ドライブで実行したくありません。

答え1

2回にわたって同じログ/​​ステータスファイルを使用したようですddrescue。このファイルは、どのブロックとセクタが正常に(または失敗した)コピーされたかを追跡するために使用されます。

ddrescueforの最初のインスタンスは/dev/sdd1ログ/ステータスファイルを作成して更新します~/sdd1_rescue.logddrescue(今回は)の2番目のインスタンスで/dev/sdd2同じログ/​​ステータスファイルを誤って使用しました。ファイルには多くのブロック/セクタが正常にコピーされたことを記録するため、ddrescueスキップできます。残念ながら、これは、2番目のブロックデバイスでキャプチャされたデータがほとんど無視され、結果の画像ファイルが不完全であることを意味します。

関連情報