2023/11/28(火)SDHCカードは壊れる(特にRaspberryPiのものは)

2023/11/28 23:07 PC(全般)
SDカード類はこれまで致命的に壊れた経験がなかったのだが、ここきて立て続けに壊れたのでちょっとメモ。
原因別に3つくらいあるっぽいが、よくわからないことも含めて記載しておく。

・物理的故障
チップ内の接触・接続や端子の損傷。
SDカード形状だと内部問題は起きづらそうだが、microSDカードだと曲げに弱く問題を起こしそう。
認識が怪しくなってきたりしたら要警戒。

・チップ寿命
チップに書き込む度にチップの寿命を消耗する。
温度や放射線ももちろん影響はする。
ファイルの読み書きが遅い・エラーが発生するとなったら要警戒。

・管理領域損傷
SDカードの管理を行っている領域の損傷…と書かれているものを良く見かけるのだがどの領域かわからない。
ここからは推測。
SDカードは著作権保護(CPRM)用の特殊管理領域(ユーザが読み書きできない)、記憶領域(ユーザが読み書きできる)に分かれる。
記憶領域内の先頭部分に、MBRやGPT用のセクタがあるはずでそこが読めなくなったり書き込み不良になると死。
CPRM領域に不良が起きた場合はちょっとよくわからないが、もしかしたらカードごと死ぬのかもしれない。
もしくはCPRM領域と記憶領域をMBRのさらに上のMBRのようなものがフラッシュメモリ内に有るのかもしれない。
チップコントローラのプログラム等は流石にSoC内に積んでると思う…多分。
ファイルリストが読めない・容量が間違って表示される・安定しないなどになったら要警戒。
発覚直後にOSで認識すらできなくなるケースも。
チップ寿命の特殊ケースということで一旦は理解する。

ざっと調べた限りSDカードでもウェアレベリングはしているとのことだが、
SSDのように大きめなメモリや強書き込み耐性のチップをキャッシュとすることが難しい。
ウェアレベリングがFATや写真データ記録を前提にしたアルゴリズムになってる可能性も有るとのこと。
ext4だと死にやすいとかは有るかもしれない。

最近Raspberry Pi Zero Wで使っていたmicroSDHCカードがOSで認識できなくなったので、これだったろうか。
ただ、コントローラが生きてれば認識くらいすると思うのだが…

また、そもそも
Raspberry Piは本当に壊れやすいのか
あたりにもあるようにRasPiも一般的なLinuxと同様に、電源をポンポン入れたり切ったりしては駄目とのこと。

ただ、この記事のNGケースはファイル単位の問題のようでより深刻な問題の発生原因は不明。

まとめと、今後の方針。
SDカード特にmicroSDカード形状のものは、
・同じフラッシュメモリをベースとしていてもSSDよりも壊れやすい。HDDよりも壊れやすいと言って良いかも
・壊れ方は様々だが、突然OSからの認識ができなくなるケースも頭に入れておく
・本来OSを入れるような用途に使うべきではない
・RasPiで使う場合はイメージを取っておくのとできるだけSDカードに書きに行かないような設定を行う
・容量には余裕を見る。50%以上空き容量がある状態を常用とする。
・バックアップは当たり前
・なくなって困るデータを入れない
・壊れたら即諦める。使い捨てと心得る
・古いものはどんどん廃棄。アクセスできなくなって入ってるデータがわからないのは最悪
・OSから認識しないような状態がなぜ発生するのかは結局よく分からなかった

なお、SDカード廃棄時は中身が読める場合は一応KillDiskでゼロフィル。
その上で、ペンチやニッパーで物理破壊して廃棄するので良さそう。
OK キャンセル 確認 その他