2023/11/28(火)SDHCカードは壊れる(特にRaspberryPiのものは)
2023/11/28 23:07
原因別に3つくらいあるっぽいが、よくわからないことも含めて記載しておく。
・物理的故障
チップ内の接触・接続や端子の損傷。
SDカード形状だと内部問題は起きづらそうだが、microSDカードだと曲げに弱く問題を起こしそう。
認識が怪しくなってきたりしたら要警戒。
・チップ寿命
チップに書き込む度にチップの寿命を消耗する。
温度や放射線ももちろん影響はする。
ファイルの読み書きが遅い・エラーが発生するとなったら要警戒。
・管理領域損傷
SDカードの管理を行っている領域の損傷…と書かれているものを良く見かけるのだがどの領域かわからない。
ここからは推測。
SDカードは著作権保護(CPRM)用の特殊管理領域(ユーザが読み書きできない)、記憶領域(ユーザが読み書きできる)に分かれる。
記憶領域内の先頭部分に、MBRやGPT用のセクタがあるはずでそこが読めなくなったり書き込み不良になると死。
CPRM領域に不良が起きた場合はちょっとよくわからないが、もしかしたらカードごと死ぬのかもしれない。
もしくはCPRM領域と記憶領域のさらに上のMBRのようなものがフラッシュメモリ内に有るのかもしれない。
チップコントローラのプログラム等は流石にSoCのフラッシュ領域とかチップ外に入ってると思う…多分。
ファイルリストが読めない・容量が間違って表示される・安定しないなどになったら要警戒。
発覚直後にOSで認識すらできなくなるケースも。
チップ寿命の特殊ケースということで一旦は理解する。
ざっと調べた限りSDカードでもウェアレベリングはしているとのこと。
そのため書き込み時の局所性はある程度緩和されているはず。
ただ、コスト・構造の両面でSSDのようなリッチなキャッシュ構成にはできないと思う。
SSDの場合は、DRAMや寿命が長いフラッシュメモリをキャッシュとして使用して、
メイン記憶領域のフラッシュメモリの書き込み回数を緩和するような仕組みになっていると理解している。
ウェアレベリングがFATや写真データ記録を前提にしたアルゴリズムになってる可能性も有るとのこと。
特定のファイルシステム、たとえばext4だと死にやすいとか、1kBytesサイズの細かいデータにサボりがちになるとかはあるかもしれない。
最近Raspberry Pi Zero Wで使っていたmicroSDHCカードが突然OSで認識できなくなったことがあった。
これが管理領域の破損だった可能性はある。
ただ、コントローラが生きてれば認識くらいすると思うのだが…
また、
Raspberry Piは本当に壊れやすいのか
あたりにもあるようにRasPiも一般的なLinuxと同様に、電源を気軽に入れたり切ったりしては駄目とのこと。
ただ、この記事のNGケースはファイル単位の問題のようで認識レベルの問題に発展するかは不明。
まとめと、今後の方針。
SDカード特にmicroSDカード形状のものは、
・同じフラッシュメモリをベースとしていてもSSDよりも壊れやすい。HDDよりも壊れやすいと言って良いかも
・壊れ方は様々だが、突然OSからの認識ができなくなるケースも頭に入れておく
・本来OSを入れるような用途に使うべきではない
・RasPiで使う場合はイメージを取っておくのとできるだけSDカードに書きに行かないような設定を行う
・容量には余裕を見る。50%以上空き容量がある状態を常用とする。
・バックアップは当たり前
・なくなって困るデータを入れない
・壊れたら即諦める。使い捨てと心得る
・古いものは壊れる前にどんどん廃棄。アクセスできなくなって入ってるデータがわからない状態になってからでは遅い
・OSから認識しない状態の発生原因は推測レベルまででよくわからず
なお、SDカード廃棄時は中身が読める場合は一応KillDiskでゼロフィル。
その上で、ペンチやニッパーで物理破壊して廃棄するので良さそう。
2023/10/22(日)ディスクのワイプあれこれ
2023/10/22 26:57
加えて、使っていたソフトがバギーだったことにも気づいたので、何年か使える定番の方法を決めたい。
削除対象はPATA, SATA(SSD/HDD), できればM.2 SSDのやり方も定まると嬉しい。
▼削除時の機器構成
メンテ用のサブPCとしてノートPCを確保してある。
そこにUSB HDDスタンドをつなぎ、HDDを挿す。
この状態で削除する。
課題として、この構成時に削除ソフトやOSが削除対象ドライブをきちんと認識してくれる必要がある。
USB接続経由にややハードルがある。
▼消去手法
JEITAの、
「パソコンの廃棄・譲渡時におけるハードディスク上のデータ消去に関する留意事項」
や、
消去方式「米国国防総省方式(DoD 5220.22-M)」 と今日におけるその利用について知っておくべきこと
などを確認。
まとめると、
・現在はDoDではなく、NISTのサニタイズ基準を標準として捉える人が多い
・データの削除には3段階(Clear/Purge/Destroy)の基準があり、このうちClearを目指すなら複数回の消去は効果が薄い。0クリア1回で十分
・複数回書き込むようなDoD Shortを適用するくらいなら、消磁など物理的な手段でPurge以上を選択肢として検討するべし
とのこと。
・HDD
Clearを目指す。ゼロフィルとする。
データ密度が高い現代のHDDにおいては、一度ゼロフィルすると読み出すことはかなり困難なようだ。
データ密度のボーダーは15GBで、それ以上なら複数回書き込みはおまじないレベルっぽい。
それ以上を求めるなら、おとなしく消磁装置か物理破壊装置に送る。
(物理破壊装置に送る場合でもできればゼロフィルはしておくべき)
正直ddコマンドでも良いのだろうが、「デバイス名を間違えたら死」のリスクはできればGUIで回避したいという気持ちがある。
・SSD
Purgeを目指す。というのは、Secure EraseができればそれでPurgeが実現できている。
Secure EraseがないとSSDの原理上消去保証が大変だが、無いやつは最初から買わない方針で。
▼使用ソフト(これまで)
Minitool Partition Wizard9 Free Edition (以下PW9)
パーティション操作の機能が豊富で、ワイプなどツールもたくさん備えている。
10以降はGPTとMBRの変換など一部機能がFree版から消えたため、9を愛用していた。
こいつだとUSB HDDもそこそこきちんと認識してくれる。
が、どうもこいつのワイプは信用出来ない。
何度か試していて、以下の事象が発生した。
・ワイプ処理を開始してもすぐに処理が戻ってくることがある(明らかにワイプが出来ていない)
・ワイプ処理を開始後、対象のディスクのアクセスランプが点灯しないことがある(おそらくワイプが出来ていない)
・ワイプでDoD Shortを選択したときにやたらと速い。
具体的には、MHT2040AT(40GB)を使用しての実験で、
ゼロフィル:37m50s
DoD short:36m40s
であった(DoD Shortを行っていない可能性が高い)
あまりにもあまりなので信用できないと判断する。
Minitool以外にもオールインワンのパーティション操作ツール(Paragon/EaseUS/AOMEI等)があるのだが、
個人的にこれらは共通のOEMかPartedMagicを元にしたツールだと思っている。
PW9が怪しいとなると、PWの新版・有料版、あるいは他社のツールもなんとなく信用し難い。
もちろん有料版もありなのだが、この手のツールは基本的にマイナーバージョンレベルのアップグレードも買い直しになる。
なかなかどれと決めるのが難しい。
▼結論
HDDはゼロフィルで消す。
ソフトはKillDisk Freeware Versionを使用する。
気になるなら2回ゼロフィル。
どうしてもDoD shortをやりたいなら、KillDiskの有料版を購入。
PW9のような複合ツールのワイプはおまけであることが多く、「確実に消した」がどうもスッキリしなさそう。
単機能のKillDiskは証明書の発行機能等があることからもわかるように、そこの信頼性が高い。
また、何回か使ってみたが、下記の機能が気に入った。
・2台同時にワイプできる
・ワイプ完了後に所要時間を表示できる
・Free版でもUSB機器の認識が早くて正確
DoD Shortとかをやりたいなら有料版(4kくらい?)に手を出せば良さそう。
SSDはSecure Eraseで消す。
Windows上でTxBenchからSecure Eraseが使える。
このとき、SATA接続だとセキュリティロックされてSecure Eraseが送れないことが多い。
USBにつないで実行する。
心配なら、前提条件のノートPCに繋いで~を逸脱してしまうが、加えてマザーボードのSecure Eraseで消す。
NVMeとか条件で制約がないかはちょっとまだ試せていない。
一旦方針だけ決めておくが、実践時にまた課題が出てくるかも。
実は、KillDiskの10000円くらいのバージョンにはSecure Eraseがついている。
これを買って1つのソリューションで綺麗さっぱりしてしまう手もありそう。
2023/10/22(日)Ext2Fsdは使うべきではない
2023/10/22 25:53
ext2~4をWindowsでマウントできるソフトとして、有名所でExt2Fsdというソフトがある。
実際これでうまくアクセスできるケースは有るのだが、上手く行かないケースがあまりに厳しいので覚書としてメモ。
今回、Linuxで使用していたHDDからデータを抽出する必要があり、
これを導入して計3回Windows10環境でマウントを行った。
対象はext3のパーティションを含むHDDで、USB HDDケースで接続した。
1回目→マウントできファイルの一覧が返ってくるがアクセスできない。そのうちエクスプローラが無反応になりすべての操作を受け付けなくなったためPC再起動
2回目→マウントでき、ファイルのリードは正常動作。
3回目→マウントできたがファイルの一覧が返ってこない。そのうちエクスプローラが無反応になりすべての操作を受け付けなくなったためPC再起動。無反応となっていたタイミングで、「マウントしようとしていたHDDのみならず、ありとあらゆるディスクライトでデータが0x00に化ける」現象が発生していた。
怖くてとても使えない。
マウントしようとしたHDDだけならまだわかるのだが全ディスク巻き込むのが相当きつい。
USB経由でアクセスしたのが悪さしている可能性は高そうだが、、、
1回目の事象を検知した段階で、2回目も3回目もメインPCでやるべきではなかった。
猛省。