ddで作成されたSDカードimgはすべて0です。

ddで作成されたSDカードimgはすべて0です。

コンピュータを知らない家族は、カメラで使用されているSDカードから写真を回復するように依頼しました。コンピュータでデバイスをフォーマットする必要があると通知すると、彼女はデバイスを取りに行きました。彼女はそのフォーマットを使い続けることを誓い、私にそれを修正する方法を知っているかどうか尋ねました。

私はKnoppixブートCDを使用しています。 ddrescueや他のツールがあらかじめバンドルされているので気に入っています。内蔵カードリーダーにカードを挿入しましたが、/dev/sdcの下のデバイスが認識されましたが、自動的にマウントされませんでした。

私はコマンドを実行しました

ddrescue -d /dev/sdc /media/sdb1/test.img /media/sdb1/testimage.log

出力結果は正常に動作することを示します。 16GBをすべて正常に読み取り、エラー0を報告しました。ところで、16進エディタでimgファイルを開くと、16GBのゼロが出ます。 ddrescueが自動的に失敗し、すべての読み取り試行に対して0を書いたかどうかわからないので、通常のddも試しましたが、同じ結果が得られました。

カードのすべてが大丈夫に見えますが、明らかに空です。一般的に、これらのカードのメモリコントローラが不良になり始めると、メモリサイズや不良セクタの存在を誤って報告することに慣れていますが、ここではすべてが工場から新鮮なSDカードのように見えます。

もちろん、彼女は技術的に文盲なので、彼女が誤って項目をゼロに設定した可能性を排除することはできませんが、誤って速いフォーマットをしてパーティションテーブルを飛ばしてアドレスのバイトを新しい状態にした可能性を排除することはできませんありません。 。

私が逃したか間違ったことがありますか?それともカードが完全に消去されましたか?

ベストアンサー1

あなたのLinuxシステムが動作しているSDカードを読むことができるとします。

フォーマットされていないカード(100%0(完全に空白)のカードを含む)を挿入すると、「デバイスをフォーマットする必要があります」というWindowsメッセージが表示されることが予想されます。

データが失われました。

SDカードのフラッシュ再マッピングテーブルがすべて割り当てられていない状態にリセットされている場合(たとえば、デバイス全体blkdiscardでLinuxコマンドを使用して)、次のように表示されます。 (blkdiscardこのコマンドは内部PCIリーダーでは機能する傾向がありますが、USBリーダーでは機能しない傾向があると思います。)

ランダムに推測したい場合は、コントローラはまだ実行中ですが、何らかの理由でマッピングテーブルを再ロードできないエラーである可能性が高いと思います。この場合、カードに書き込むことができず、書き込み内容は自動的に失われます。

SDカードで使用されているコマンドをほとんど聞くことができないので、これはコマンドを意図的に破棄したためだとは思わない。

SDカードが独自にリセットされ、すべてのマッピングテーブルを消去することにした場合は驚きます。デバイス全体のblkdiscardコマンドを実行するのに時間がかかりました。少なくとも自動的にリセットされるように設計する理由はありません。

おすすめ記事