SDカードの用途は、主として携帯型機器のデータ保存場所のはずです。
その使われ方からして、使用機器から抜き差しされることが多いため、
パソコンの内蔵ハードディスクのように常に接続が確立されているものと比べると、
不安定な記憶媒体だと言えます。
また、SDカード使用機器がバッテリー駆動だったりするので、
電気の力で記録するフラッシュメモリなのに、
電力供給が不安定な環境にあることが多いという矛盾を抱えています。
特にデジカメなんて、シャッターを押した瞬間に、
CCD/CMOSから画像処理プロセッサからフラッシュメモリへ記録するところまで、
一気に大仕事が回ってきます。※もちろんバッファはあるわけですが、それでも。
シャッターを押してからSDカードを認識しなくなったなんてのは、よくある話です。
デジカメ等で「カードが異常です」と表示されても、
本当にメモリーカードが異常かどうかとは別問題です。
メモリーカードの内容が、使用機器の側にとって扱えないデータ形式になっていたら、
その時点ですべて「カードが異常」だということになってしまうからです。
フラッシュメモリ自体がハードディスクに比べて書き換え耐性に大きく劣ることもあり、
「SDカードが認識できない」=「SDカードの寿命」とされてしまいがちですが、
本当にそうなのかは調べてみる必要があります。
規格上の問題
SDカードには、何種類もの規格が存在します。
基本的に、上位互換性は保たれています。
でも逆に、旧規格しか対応してない製品に新規格のSDカードを挿入しても、正しく認識されません。
以前に比べると、メモリーカードの価格はずいぶん安くなってきました。
だから購入時にはどうせならと、容量の大きいSDHC、SDXCカードを選ぶことも多いはずです。
でも、SDHC、SDXCカード非対応の製品では、
メモリーカードを物理的に挿入できても、使用することはできないのです。
SDカードが普及してきた初期の頃の製品は、すべてSDHC、SDXCカード非対応です。
※SDHC、SDXCの規格自体がなかったので、当たり前。
また、現行製品でもSDHC、SDXCカードに対応していないことがあるので、注意が必要です。
特に、大きなデータを保存する必要のない製品(ポメラとか)では、
SDHCカードにすら対応する必要がないため、実際に対応してなかったりします。
SDカードの規格の違いは、対応するファイルシステムの違いと言っていいです。
SD(~2GB) | FAT16 |
---|---|
SDHC(4~32GB) | FAT32 |
SDXC(64GB~) | exFAT |
つまり、FAT32に対応したSDカードがSDHCであり、
exFATに対応したSDカードがSDXCだということです。
従って、2GBを超える容量のSDカードは、必然的にSDHCカードになってきます。
FAT16(クラスタサイズ32KB)が、2GBまでの領域しか扱えないからです。
逆に言えば、SDカードの規格の違いは、
物理的なものの違いというより、ソフトウェア的な違いによるものが大部分を占めています。
ファイルシステム上の制約があるため、容量の増大に伴ってソフトウェア的な変更を行う必要があり、
別の規格を設けているような感じ。
現に、SDHC、SDXCカード未対応の製品でも、
ファームウェアのアップデートで対応できるようになることがあります。※カシオ、リコーのデジカメとか。
かといって、上位カードを未対応製品に適合するファイルシステムでフォーマットすれば使えるのかというと、
そういうわけではありません。
当然ですが、使用する製品が対応しているSDカードを、正しく使う必要があります。
どーでもいーはなし
SDHCカードとフォーマットの話について、余談。
しかも、何の保証もない、完全におすすめできない話。
SDHCカードをFAT16でフォーマットして、SDHCカード未対応の製品で使おうとしても、
正常動作しないことがほとんどです。
基本的に、誤作動すると思ってもらったほうがいいです。
SDカードを認識しないどころか、電源を入れることすらままならなくなる場合があります。
しかも、FAT16でフォーマットできる領域は最大2GBまで。
だから、万が一使用できたとしても、
SDHCカードの容量の大部分は、空き領域として使えないことになります。
素直に、2GBのSDカードを使っておくべきです。
ちなみに、SDHCカード対応製品では、FAT16でフォーマットしたSDHCカードでも問題なく使えることが多いです。
まったく、何の意味もありませんけどね。
カードリーダーを疑う
SDカードが認識されないと、SDカードの方ばかりに目が行ってしまいがちですが、
意外とカードリーダーが正常動作していない場合があります。
先に書いたような、対応している規格の問題もありますが、
カードリーダー自体が一時的な不具合を抱えてしまっている場合があるのです。
カードリーダーは、USB接続のものがほとんどです。
接続しっぱなしになっていることも多いんじゃないでしょうか。
パソコン内蔵のカードリーダーでも、内部的にはUSB接続のものが多いです。
ということは、確実に接続しっぱなしです。
これらUSB接続のカードリーダーは、バスパワーで動作しています。
USBメモリの場合でもそうですけど、
USBのバスパワーは、機器が動作不安定になる原因になることがあります。
というわけで、カードリーダーをリセットします。
カードリーダーを一旦取り外し、再接続します。
しかし、パソコンに内蔵されているカードリーダーの場合は、作業が大変です。
パソコンを再起動すればよさそうですが、
実は、パソコンの電源を切っても、USBのバスパワーは給電されていたりします。※マザーボードによります。
じゃあどうしたらいいのかというと、
パソコンの電源を切った後、コンセントからプラグを抜いて1分ほど放置します。
つまり、電源リセットをかけます。
再び起動すると、SDカードを認識できるかもしれません。
パソコン以外の機器を使ってみる
カードリーダーに入れたSDカードを認識できなくても、デジカメ等の使用機器側で認識できる場合、
SDカードを使用機器に入れた状態で、パソコンとUSBで接続し、
機器をWindows上から確認すると、ファイルを正常認識できる場合があります。
これでうまくいけば、簡単に中のデータを取り出せます。
また、中のデータが必要ないのであれば、
パソコン以外の機器でSDカードをフォーマットしてみることを、強くおすすめします。
Windowsでフォーマットできなくても、SDカード使用機器の側ではフォーマットできることがあります。
これは、SDカード使用機器が単純な動作しかしていないことが、逆にメリットにはたらいています。
データに多少問題があっても、無視して動作してしまうことが多いのです。
Windows上から操作する
Windows上から操作するといっても、SDカードを認識できないから困ってるわけですが、
以上書いてきたような内容で、SDカードをデバイスとして認識していない場合を別とすれば、
Windowsなだけに操作の自由度は高いです。
ただし、デバイスとして認識していなければ、Windows上からは一切操作できません。
SDカードがデバイスとして認識されているかどうかは、
SDカードにドライブレターが割り当てられているかを確認すれば、ある程度判別できます。
ドライブレターが割り当てられていれば、Windowsはデバイスとしては認識しています。
たとえそのドライブにアクセスできなくても、「リムーバブルディスク」としてでも、
ドライブレターが割り当てられていれば、それでいいです。
フォーマッタを使う
SDカード内のデータが不要なのであれば、フォーマッタを使うという手段があります。
フォーマッタとは、フォーマット専用ツールのことです。
Windowsではフォーマットできなくても、フォーマッタを使うとフォーマットできることがあります。
SDカードの規格を作ったSDアソシエーションから、SDカード用のフォーマッタが提供されています。
いわば、SDカード公式のフォーマッタです。
トップページ | SDアソシエーション |
---|---|
ダウンロードページ | SDフォーマッター |
当たり前ですが、SDカードに特化して作られています。
規格の項で書いたとおり、SDカードは容量によって異なるファイルシステムを使用していますが、
このSDカード専用フォーマッタは、自動的に適切なファイルシステムを選択してフォーマットしてくれます。
フォーマットせずに復旧する
SDカードを認識できない原因が論理障害であり、しかもその程度が軽い場合は、
フォーマットせずに復旧することも可能です。
ただし当然のことながら、完全に元に戻せるかは状況次第です。
原因を探るための大きな手がかりは、Windowsのエラー表示にあります。
これがすべてではありませんが、最大のヒントであることは確かです。
よくあるのは、「フォーマットしますか?」という表示。
もうちょっと具体的には、
という表示が現れます。
XP以前では、「ドライブ○のディスクはフォーマットされていません。」という表示でした。
これらはほとんどの場合、ブートセクタの異常が原因です。
詳細はリンク先ページにまとめてあります。
似たような症状で、「ディスクを挿入してください」と表示されることがあります。
この場合は、WindowsがSDカードの記憶領域を認識できていないため、フォーマットすることもできません。
が、復旧できないわけでもありません。
また、SDカードに一部アクセスできるものの、
保存してあったファイルが消えることがあったり、削除できないファイルができたり、
調べてみると0バイトのファイルだったり、ということがあります。
これは、ファイルシステムの不整合が原因です。
Windowsのエラーとしては、
ファイルまたはディレクトリが壊れているため、読み取ることができません。
と表示されたりします。
これも、詳しくはリンク先ページにて。
SDカードで主として用いられているFATは、シンプルなファイルシステムで、
NTFSのようにロールバック(障害発生前の状態に戻すこと)できるような仕組みを持ち合わせていません。
だから、もともと不整合が起こりやすいファイルシステムではあります。
そのうえ、SDカードは抜き差しされることが前提のメディアなので、
データ書き込み中に接続が途絶えると、ほぼ確実にファイルシステムに問題が生じます。
最後に
ここでは主に、SDカードの論理障害についてまとめてきました。
というのも、SDカードに物理障害、すなわち故障があった場合、
個人レベルでそれ以上どうすることもできないからです。
SDカードの製品構造は、USBメモリに近いものがあります。
でも、USBメモリと違って、SDカードはスロットの剛性や端子の耐久性に優れるため、
SDカード自体が壊れてしまうことは、比較的少ないんじゃないかと。
ただ、SDカードそのものが実際に故障してしまい、それでも中のデータを取り出したい場合は、
データ復旧業者に依頼するしかないと思います。
フラッシュメモリチップが死んでいなければ、データ救出の可能性はあります。