web-dev-qa-db-ja.com

マウントされたMacドライブファイルエラー

私は誤ってMacBookを水害で殺してしまったので、今では最初に画像を抽出します。

ストレージデバイスマネージャーを使用して、固定PCにドライブ(HFS +形式)をマウントしました。

ドライブを参照して、MacドライブのPicuresフォルダー内のいくつかのディレクトリの画像をコピーすることができますが、他のディレクトリ、たとえば3つの画像が含まれるディレクトリについては、ls -l

ls: cannot access DSC00001.JPG: Input/output error
ls: cannot access DSC00002.JPG: Input/output error
ls: cannot access DSC00003.JPG: Input/output error
ls: reading directory .: Input/output error
total 3
drwxrwxrwx 1 501 dialout   1957 2011-12-11 18:22 ./
drwx------ 1 501 dialout     82 2012-01-18 20:51 ../
-????????? ? ?   ?            ?                ? DSC00001.JPG
-????????? ? ?   ?            ?                ? DSC00002.JPG
-????????? ? ?   ?            ?                ? DSC00003.JPG

...そう...これらのファイルはすべてトーストですか、または私にできることはありますか?

PDATE:ファイルでddrescueを使用しようとしましたが、そこにも入出力エラーが発生しました。

4
Theodor

まず、破損したドライブのドライブイメージコピー全体を実行することを強くお勧めします。少なくとも、回復しようとしているパーティションと同じ大きさのハードドライブが必要です。そのドライブのパーティションが/ dev/sda2として/ devにリストされていると仮定すると、バックアップドライブを(たとえば)/ mnt/restoreにマウントします。

そこから、次のコマンドを使用します:dd bs=4096 if=/dev/sda2 of=/mnt/restore/sda2.img conv=noerror,sync

これにより、ハードドライブのイメージが作成されます。これには、「不良」ブロックが含まれます(あると思われる場合は)

次に、ドライブを切断します。損傷したドライブは、使用するにつれて悪化します。

次に、testdiskをインストールする必要があります。

Sudo apt-get install testdisk

信頼できないソースへのリクエストを受け入れます(あなたがそう思うなら)。

最後に、テストを実行します

ここから、testdiskを使用してファイルを見つけて回復する必要があります。

testdisk /mnt/restore/sda2.img

メニューは一目瞭然ですが、テストディスクの使用はおそらくこの「答え」の範囲外です。開始するのに適した場所を次に示します。

http://www.cgsecurity.org/wiki/TestDisk_Step_By_Step

http://www.howtoforge.com/data_recovery_with_testdisk

これらはファイルを回復するのに役立ち、必要以上にハードドライブに損害を与えることはありません。イメージファイルからできるだけ多くの回復を行ったら、安全に削除できます。次に、破損したドライブでテストディスクを直接実行し、完全に欠落しているファイルのみを回復してみてください。

幸運を祈ります。

6
Stephan

ddresucueは、個々のファイルを読み取るために使用するものではなく、ディスク全体(読み取り可能な部分も)を作業ドライブにコピーするのに最適です。その後、ドライブが死にそうになることを心配することなく、試して修復したり、ファイルを掘り下げてファイルを抽出したりできます。

1
tumbleweed

Hfsplusパッケージがインストールされていることを確認したい場合があります:Sudo apt-get install hfsplus

しかし、あなたがそのポイントに到達できるなら、あなたはすでにそうしていると確信しています。これらのシナリオで一般的に行われているのは、その時点でハードドライブが故障していることです。 dmesg | grep -i "I/O error"すべての出力。そこに出力があると、ほぼ間違いなくディスク障害が発生します。また、さらに証拠が必要な場合は、「ディスクユーティリティ」内でドライブを開き、「スマートデータ」ボタンをクリックします。 「再割り当てセクター数」と「シークエラー率」を確認します。または、単に赤い点を探すことができます。

これで問題が解決しない場合はお知らせください。

PS:ディスクを完全に乾燥させましたか?

1
Chuck R