見出し画像

SDカードをフォーマットしたら動作中のOSが吹っ飛んだ話!

このあいだ信じられないことが起こってたので話のネタにしましょう~。
去る2024年12月4日のことです。
SDカード規格の公式ツールでSDカードをフォーマットしたらなぜか動作中のOSが初期化されました
何を言っているのかわからないと思いますが表題の通りのことが起きました。私にも信じられなかったのでみなさんも信じられないと思います。

発生環境とか

SDAのSD Memory Card Formatter!!とは!

前置きとしてSDカードというのは複数の企業が参画して運営しているSDA、SD Associationという団体が規格を策定、推進しています。最初はSandiskと東芝、パナソニックの三社で設立されました。↓

このSDAからSDカード規格の公式かつ強推奨のフォーマットツールとしてSD Memory Card FormatterというWin/Mac用のソフトが配布されていて、私は長年これを愛用していました。↓

事件当日時点のダウンロードページのスクショ

だってOS標準のフォーマットではなくこれを使うことを強く推奨します!って力強く書いてあるしね~。SDカードを作った団体のツールなら間違いないって思うじゃないですか。

その他の環境

お勤め先のdellのvostroというふた昔くらい前のスリムデスクトップ、本体内蔵のSDカードリーダー、起動ドライブはSATA接続の500GBのHDD、OSはWindows7 Home 64bit。
さっきのスクショは事件直前の2024年12月1日時点のweb Archiveなのですがこの時点ではWindows7もシステム要件にばっちり入っており何も問題ありません。

具体的に何が起きたのか~

こんな感じで普通にフォーマットボタンを押した

会社の備品デジカメで使っているPanasonic製の64"MB"(これまた超古い)SDカードをカードリーダーに挿し、SDカードフォーマッタを起動し、「上書きフォーマット」、「CHSフォーマットサイズ調整」、ボリュームラベルは「なし」に設定してフォーマットボタンをクリックしました。

設定はこんな感じ

※余談
CHSというのはLBA以前に使われていたシリンダ、ヘッダ、セクタの3つの数値で記憶装置のアドレスを指定する領域確保方式のこと。DOSとかWin95(こいつらもまだまだ会社で現役)の頃までよく使われていました。
この調整オプションというのは容量から逆算してシリンダ、ヘッダ、セクタ数もいい感じに設定することでそういう古いPCに挿しても正しく読み書きできるようにしまっせ、という後方互換性のためのものですね。
CHSで定義できる上限が7.9GB(8.4GB?)くらいだそうで、8GB以下のSDカードが接続された場合にのみこのオプションが選択できます。

話を戻します。
フォーマットボタンをクリックした瞬間OSが応答停止しました
Ctrl+Alt+Delを押してもメニューが出ず「セキュア・アテンション・シーケンスを呼び出せませんでした」という初めて見るダイアログが起動するのみでタスクマネージャーの起動も本体の再起動もできません。

MBR消えてるー?

嫌な予感がしてPC本体の電源ボタンを長押しして電源を切り、もう一度電源を入れます。SSDの突然死に似ていたのでSATAケーブルが抜けたかHDDの認識が無くなったか?と即座に考えていたのを憶えています。
DelとF2を交互にトントンしてBIOSを開くとのHDDの認識は正常でした。
そのまま起動すると黒い画面の左上に「_ 」が点滅するのみでOSは起動しない。MBRが吹っ飛んでいること、物理障害ではなく論理障害(HDDの故障ではなくデータの破損ってこと)っぽいことまでは1分くらいで判断できました。

その日が納期のお仕事のデータが入っていたので、このPCからの起動はあきらめてHDDだけを他の動いているPCに繋いで案件のファイルを取り出すプランBに切り替えます。ねこまちさん判断が速い~。
私むかし某メーカーでPC修理のお仕事もしていまして、この時点では全然焦っていませんでした。

パーティション構造が変わってる!

別のWindowsPCにUSB-SATA変換で接続しました。
マイコンピューターに新しいドライブは出てこなかったのでドライブレターを割り当てるためにディスクの管理を開きます。
「フォーマットしますか?」
んー?
んーーーー???
知らないパーティションが作られてる!

もとあったのは10GBのRECOVERY領域+465GBくらいのC:
2つのNTFSパーティション

それが全領域が1つのRAWパーティション
で切り直されている
異常な状態。

これがどれだけ異常な状態かというと、
ふつう故障で管理領域が吹っ飛んだ場合や、消去ソフトやdiskpartのcleanコマンドでデータを消去した場合は装置全体が「未割り当て」となります。
新しいパーティションが作られてるというのは故障やエラーではなく作為的にパーティションを再構成する操作がされたってことなんですね。

プランC!サルベージソフト出動!!

さすがにこれは想定してなかったので頭真っ白になりながらサルベージソフトを全速力で検索して使えるものを探し当て、その日のお仕事はなんとかしました。
(上司さんには何もしてないのにPCがこわれました!としか言えず)

※余談
ちなみにファイル復元系のフリーソフトは全滅でした。あれって間違ってゴミ箱からも消しちゃった~程度の状況を想定しているらしくて、パーティション情報が書き換わってるともうスキャン対象として選べないんですね。
最終的にEaseUSの無料版に助けられたのですがさらに2つ罠があって、
EaseUSには試用版と無料版があってデーター復旧ができるのは「無料版」だけ。試用版は無料版の200倍くらい痕跡のスキャンに時間がかかるうえに一覧を見るだけでした、お昼休み全部潰して得られたのが一覧だけだった時は頭の毛が全部なくなるかと思いました。なんで二種類あるんだ!
・2GBまでサルベージできる無料版のほうも日本語パスを復元ファイルの保存先に指定するとコピーに失敗して残り復元容量だけが減るというバグあり。マイドキュメントを保存先にしたら空フォルダが出来て「残り1.2GBです」とか言われた時は頭の毛が全部~・・。

推測される原因

SD Memory Card Formatterのバグやろな~という感じなのですが、これまでに一度も起きていないこと、似たような現象を聞いたことがないことから会社のそのPCでだけ起きたのはどうしてだろう?という純粋な疑問をもちました。
OSは古いけど動作要件には入ってる。

たぶんUSB接続のFDDか仮想光学ドライブが影響?

未だにわたしの勤め先ではフロッピー納品があるのでPCには普段からUSB接続のFDDを繋いでいてA:として認識されているのですが、これがなぜかSD Memory Card Formatterの処理対象のプルダウンに出てくることが前からよくあったんです。
当然HDDはフォーマット先として選べないようになっていて、SDカード以外のメモリーカードや、SDカードのスロットがあっても未挿入だと認識されないようになっているのでおかしいなーとは思っていました。

ここになぜかA:\ (USB-FDD)が出てくることが2回に1回くらいありました

A:\はここに出てこないこともあったのではっきりとした条件はわかりませんが当日は出てきていました。
もちろんA:を選んでフォーマットボタンを押したことはないのですが、この誤認識のせいでフォーマット対象がズレたんじゃないのかなあと推測しています。
他の心当たりとしてはImgDriveという仮想光学ドライブのフリーソフトを試していたところだったのでその影響なのかも知れません。(使い慣れたDaemonToolsLiteに変えました。)

それからどうした

SDAへフィードバックしました!

同じ目に遭う人がいないようにSDAへ報告して対策してもらいました。
こういうときただでは転ばない、道の穴は埋める主義です。
こんなバグに遭遇したのが私でよかったですね。

がんばって英語のメールを描いた(DeepL素通し)

結果どうなったか

  • 新バージョン5.0.3がリリースされました。
    5.0.2のリリースは2022年3月1日なので3年近くぶりの更新になったみたいです。

  • Windows7がシステム要件から外されましたw

2024/12/26付けで5.0.3がリリースされました


対応OSがごっそり減ったw

ChangeLogがないので更新内容が不明ですがきっと対策されたことでしょう~。
面白かったらいいねください!ではでは!

いいなと思ったら応援しよう!