ディスク構造が壊れているため、読み取ることができません。
SDカードのファイルシステムが破損し、アクセスできなくなってしまったSDカード。その復旧をしていく。
※このページは
→【完全復旧】ディスク構造が壊れているため、読み取ることができません。(前編)
の続きです。
4.SDカードのバックアップ
いきなり復旧を始めるのは、入っているデータを喪失しても良いのでない限りはお勧めしない。作業には失敗がつきものだ。それに、いくつかの方法があってどれが最もたくさんのデータを取り戻せるのかも違ってくる。場合によっては復旧しているつもりが、データを完全に消してしまう可能性も・・・
したがって、これ以上悪化することを防ぐためにも、現状を保存する。
通常であればファイルコピーでバックアップが取れるが、残念ながら今回それは不可能。ファイルシステムが破損しているためファイルが見えないし、そもそもデバイスにアクセスすらできないため通常のファイルコピーができないのである。
よって、ソフトの力を借りる。
こちらはEaseUS Todo Backupというソフト。個人用で使うのであれば無料で使用できる。
このソフトの、「ディスク/パーティションバックアップ」の機能を使用し、対象のE:ドライブのバックアップをとっておく。使い方は画面を見れば分かるだろう。とても使いやすいソフトだ。
このソフトが凄いのは、セクタバイセクタバックアップができる点。これは、とりあえずドライブとして認識ができてさえいれば、ファイル構造がどのように壊れてしまっていようとも、純粋な数値(バイナリ値)としてバックアップしてくれる機能だ。
人間に例えるなら、例えば「竹取物語」を書き写しなさい、と言われた時、普通ならば「今は昔、竹取の翁といふものありけり・・・」という文を文として意味を認識しながら書き写していく。
しかしこれがもしも英語版だったらどうだろうか。「Long, long ago, there was an old man who harvests bamboo.」なんていう文。大人ならば理解しながら書き写すこともできそうだが、書き写すのが小学1年生だとしたら。
おそらく多くの子は、理解することができない。でも、単純に書き写すだけであれば、アルファベットさえ書ける子ならば可能だ。「意味は分からないけど、まずはL、その次は小文字のo、次は小文字のn・・・」というように写していけば、意味は分からなくても書き写せる。
セクタバイセクタバックアップとはつまりそういうことだ。通常のバックアップではドライブのデータをデータとして理解しながらコピーしていくが、セクタバイセクタバックアップでは、内容が不明であっても、とにかくドライブに記録されている「010010110010・・・・」というゼロイチデータをそっくりそのままバックアップする。よってファイルシステムが認識できない状況でも可能なのだ。
今回の場合も、Dドライブが「NTFS」と認識できているのに対し、Eドライブは「Unformatted」となってしまっている。こんな場合でも、セクタバイセクタバックアップならばバックアップが可能。
これで、現時点まで立ち返ることは可能になった。もうどのような復旧を試しても安心である。
5.端子を掃除してみる
SDカードの端子に脂や埃が付いていると、これで接触不良になって読み取りができないことがある。ハンカチなどの柔らかい布で端子を優しく拭ってみよう。
今回は、効果なしだった。
6.Windows以外で読んでみる
まずは小手調べ。Windowsで読めないので、Windows以外のOSで読んでみる。読み取りの方式がOSによって微妙に違うため、ごく希にではあるが、別のOSだと読めてしまうことがある。
普段ならば私はLinux系のOSで試すのだが、今日は何をどうしたのかいつも使っているLive CDがどこかへ雲隠れしてしまったので、マカーなPCで試してみよう。
NTFS は基本WindowsのフォーマットなのでMacは対象外なのだが、実は何もソフトを入れたりしていないMacでもNTFSの読み取りだけは対応しているのだ。
まあ普通は、Windowsで無理ならMacでも無理なのだが。
7.Windowsでチェックディスク
さて、本格的にやっていこう。Windowsでのチェックディスクだ。軽い論理障害程度であれば、これで復旧できることもある。
ただし、私はあまりこれを信頼していない。というか、チェックディスクは可能ならやらない方が良いと考えている。最後の賭けくらいに思っておいた方が良い。今回はバックアップ済のためいきなりやってみるが、「バックアップなしでやると、取り戻せたかもしれないファイルを永遠に失うことにもなりかねない」。実際、私も不用意なチェックディスクによって結構重要なファイルを復旧不能にしたことがある。
チェックディスクは、ファイル救出用のコマンドではない。ファイルとファイルテーブルの整合性を取るためのコマンドである。何が言いたいかというと、「Windowsには、どのファイルが重要でどのファイルが重要でないのか判断することはできない」ということ。Windowsが行うことは、「目次と実際のページの対応関係を正しくする」ことであって、ファイルを保全することではないのだ。
例えば竹取物語、かぐや姫、かちかち山という3つの話が収録された本を考える。目次には収録されている題名と、それぞれの最初のページが書かれている。
ここでうっかり目次にコーヒーをこぼして一部が読めなくなってしまった。ここにチェックディスクをかけるとする。
まず竹取物語については、「竹」という字の端っこに少しコーヒーがかかっただけだったため、まあ問題なく読めた。Windowsは竹取物語の題名とページ数を新しい目次に作成する。
次にかぐや姫だが、これはページ数については読めたが、題名全体にコーヒーがかかってしまって、題名が分からなくなっていた。Windowsは仕方がないので、「File0001」という題名で、新しい目次に加えた。
これが、復旧に成功したもののファイル名が破壊された状態だ。ファイル自体はFile0001という名前で見ることはできるが、本来のファイル名は失われてしまう。
最後にかちかち山だが、これはファイル名もページ番号もコーヒーで見えなくなってしまっていた。このような場合には、Windowsはなんと「そんな話は存在していなかった」ということで、実データもろとも削除してしまう。
でもWindowsとしては問題が無いのだ。目次にもなく、データもなく、これで目次の整合性は完璧で、破損そのものも直ったのだから。
Windowsにとってはファイルをできるだけ読めるようにすることよりも、目次と実際のデータの整合性がとれていることが重要なのだ。しかも、チェックディスクは一度実行すると元に戻すことはできない一方通行。チェックディスクとはそういう危険をはらんだコマンドだ。安易にこのコマンドを勧めて来る人がいるが、私はこのコマンドは本当に他に手段がない場合以外は実行しない方が良いと思っている。
それでは実際に実行してみる。Cortanaにcmdと入力。コマンド プロンプトが検索されるので、右クリックして「管理者として実行」。
そして起動したコマンド プロンプトへチェックディスクのコマンド「chkdsk E:\ /f」。
このコマンドの意味は、
chkdsk・・・チェックディスクを実行しなさい。
E:\・・・対象はEドライブです(環境ごとに異なる)。
/f・・・ファイルシステムを検査し、修復しなさい。
ということである。
ほらね、言わんこっちゃない。ファイルが消えるようなことはなかったが、そもそもファイルシステムを全く認識できていない状態ではチェックすらできないことが判明。
8.復元ソフトを試す
いよいよ大技を出す。「Wondershare データリカバリー」だ。これは残念ながら有料ソフトなのだが、非常に優秀な復元ソフトだ。私は何度このソフトに助けられたことか・・・5回ほど、ファイル消失の危機をこのソフト一本で乗り切ってきた。
それまではフリーソフトで頑張ってきたのだが・・・SDカード関連で、どうしてもフリーソフトでは検出すらできない状況に陥ったことがある。その際にYahoo!知恵袋で相談して教えてもらったのがこれ。フリーでは検出すらかなわなかったファイルを、見事復元してくれた。
この手の復元ソフトは、有料のくせにいかがわしい物やまがい物が多いのが現実。しかしこのソフトの強力性と有効性は、私工場長が保証しよう。また、信頼できる点として、「100MBまでは無料で試用できる」という点が挙げられる。「買ってみたけど結局復元できなかった」という悩みは無用だ。実際にスキャンして、一部復元してみて、いけるようならば買う、これでも検出できないようならば意味がないから買わない、ということができる。作者もこのソフトに自信を持っていて、安心して買って欲しいからこういうサービスをする。信頼できるソフトの見分け方の一つだ。
このソフトは、RAWになってしまったディスク、つまりファイルシステムを見失ったディスクのスキャンにも対応している。結構時間がかかるのだが、こんな感じでざくざく検出していく。
ただ・・・見て分かる通り、ファイル名は喪失していてただの連番になってしまっているようだ。しかも、RAWのディスクをそのままこのソフトにかけて復元したファイルというのは、基本的に使い物にならないことを経験上知っている。
ほら、やっぱり。
ファイルっぽいものが復元できたっぽく見えるが、画像ファイルなのにサイズ0KB?そんなバカな。
案の定、全て全く開くことのできない破損ファイルだった。
※このようなファイル復元ソフトで復元を行う場合、復元したファイルの出力先は【絶対に】「ファイルが見えなくなった問題のドライブ以外」の場所を指定する。復元では、見えなくなっている問題のドライブに残されたデータの痕跡を読み取って拾い集めながら、データを復元していく。この時に問題のドライブに新たなデータが書き込まれてしまうと、読み取るべきデータの痕跡の上に上書きされてしまう。こうなると、データの痕跡すらなくなってしまい、もはやデータ復旧の専門業者であっても復旧不能な、壊滅的な状況になってしまう。
その後、こういうページ
→「理系院生の適当な日記」
も参考にして、ディスクのバイナリ値を直接編集するというハイレベルな方法も試してみたが、失敗に終わった。
しかし、まだ方法はあるのです。
次回、完結編!
→【完全復旧】ディスク構造が壊れているため、読み取ることができません。(前編)
→【完全復旧】ディスク構造が壊れているため、読み取ることができません。(後編)