======SSD を Secure Erase する======  NANDフラッシュメモリを使った**SSDは、総書込量が増えるにつれて、書き込みが遅くなっていく**。それを緩和するために **Trim** コマンドが新設された。だが、手に入れたSSD[[ts64gssd25s-m]]は Trim をサポートしていない古い機種だ。\\  そんな古い機種でも ATA の SECURE ERASE UNIT コマンドを使って、ドライブ全体を初期化するという手段を使うことで、初期の性能を取り戻すことができる。では、どうやって **Secure Erase** コマンドを発行したらよいのか。\\  ネット上で好評なのは Texim(テクシム)社の **[[http://www.texim.jp/txbench.html|TxBench]]** だ。これはSSDやHDDのベンチマークソフトだが、Secure Eraseや全域Trimのコマンドを発行する機能がある。だが、Windows 8以降はOSが SECURE ERASE UNIT コマンドをフィルタしてしまうために、TxBenchによるSecure Eraseはできなくなった。\\  というわけで、**非Windows環境でSecure Erase**を行うことを目指した。その顛末記である。\\ =====Parted Magic=====  Secure Erase のソフトをオンラインで探していると、**[[https://partedmagic.com|Parted Magic]]** を勧めているサイトが多かった。CDブートのLinux環境にGPartedを組み込んだもので、Secure Eraseの機能もある。\\  フリーウェアとして紹介されていたが、すでに有償化されていた。わずか$9ではあるのだが、期待通りの動作をしてくれなければ悔しいので、購入はためらわれる。**最後のフリーバージョンは 2013_08_01** (ライセンスはGPL)。このバージョンをネットで探していると、**ふうえん氏**の**[[http://blog.phooen.com/blog-entry-63.html|Parted Magicについて]]**というエントリを見つけ、貴重な情報を得ることができた。氏に感謝である。それによると\\ * Parted Magic の 2013_08_01 のLinuxカーネルには、USBコントローラを破損させうる致命的なバグが含まれている。 * Parted Magic LLC では、これに対処した 2013_08_10 というバージョンを急遽リリースした。 * このバージョンはネットではなかなか見つからないが、ポーランドの**mrsebe氏**が再構成した2013_08_10のISOファイルを公開している。 * さらに、これらのバージョンの Secure Erase 機能ではデフォルトのパスワードがNULLになっている(これはパスワードなしを意味する)が、Lenovo BIOSではSSDがbrick(=文鎮)化するリスクがある。なので、Lenovoで使う場合にはSecure EraseのパスワードをNULLにしてはいけない。  [[http://mrsebe.bplaced.net/blog/wordpress/?p=80|mrsebe氏のエントリ]]からたどって **pmagic_2013_08_10_reconstructed_v2.iso** をダウンロードする(ニュージーランドのMEGAというオンラインストレージを使っている)。これをCD-Rに焼いて起動すると・・・。\\ {{ ::pmboot.png?nolink |Parted Magic ブート画面}}  どれを選んでも良いが、私のPCは1GB以上のメモリを積んだ64bit機なので、**2**を選択した。\\ {{ ::pmtimezone.png?nolink |タイムゾーン選択}}  タイムゾーンの選択画面では **Asia/Tokyo** を選ぶ。\\ {{ :pmscreen.png?nolink |Parted Magic画面}}  無事にLinuxが起動した。ここで画面上のアイコンから **Erase Disk**(消しゴムのアイコン)を選ぶ。\\ {{ ::pmerasemenu.png?nolink |Erase Disk選択画面}}  消去手法の選択画面が表示される。一番下の **Internal Secure Erase** を選択。\\ {{ ::pm10.jpg?nolink |ドライブ選択画面}}  ドライブ選択画面。安全のためHDDのコネクタを抜いておいたので、SSDだけが表示されている。チェックを付けてOKを押す。\\ {{ ::pm11.jpg?nolink |frozen警告画面}}  SSDドライブが**frozen**状態になっているという警告が表示された。悪意あるウィルスなどがSecure Eraseコマンドを発行してドライブデータが全部消えてしまったら大損害である。それを防ぐために起動時にBIOSなどがドライブをfrozen状態にして、Secure Eraseコマンドを受け付けないように設定してしまう。これを解除しなければならない。その方法は、\\ - **別のPC**を使う(frozenにしないBIOSを積んだPCを使えば良い)→却下。 - **PCをいったんスリープさせる**(スリープすることでドライブの電源が切れ、frozenが解除される)→今回はこれを。 - PCを起動したままドライブの**電源コネクタを抜き差しする**(ドライブ破損のリスクがあるのでお薦めできないが、他の方法がダメならこれしかない)。  ここでは**Sleep**を選んで押してみた。PCがスリープ状態になったところで、電源ボタンを押して目覚めさせ、再度Erase Diskを選ぶところからやり直したところ、frozenの警告は表示されなかった。\\ {{ :pm12.jpg?nolink |Secure Eraseパスワード設定}}  Secure Eraseのパスワード設定画面。NULLのままにすると、パスワードなしになる。(ただし、Lenovo+USB接続の場合にはNULLにするとSSDが文鎮化するリスクがあるそうだ)。\\ {{ ::pm14.jpg?nolink |Enhanced Secure Erase選択画面}}  ドライブにエンハンスドSecure Eraseの機能がある場合には選択画面が表示される。エンハンスドだとユーザーがアクセスできない領域(エラー代替用の予備ブロックとか)までクリアされるようだが、unsureならNOを選んで通常のSecure Eraseを使え、というので**No**を選択。\\ {{ ::pm13.jpg?nolink |最終警告画面}}  **すべてのデータが消去される**という警告。Secure Eraseには約2分かかるという。\\ {{ :pm15.jpg?nolink |エラー表示}}  どうやら**ドライブがエラーを返してきて消去できなかった**ようだ。パスワードはNULLにしておいたし、エンハンスドを選んでもエラーになる。これ以上は手の打ちようがなく、Parted Magicを使ったSecure Eraseは**未完**に終わることになった。  であるものの、Parted Magicは良いソフトだ。今回はたまたまSSDとの相性でうまくいかなかったが、非常用に1枚備えておくべきソフトだと思う。  (その後、Parted Magicの新しいバージョンで試してみたら、SSDがSecure Eraseの対象として表示されなかった。このSSDの製品仕様なのか、個体の問題なのかは不明だが、Secure Eraseの機能に何らかの不具合が生じているようだ)。 \\ \\ =====HDDErase=====  もう少しLinux環境でSecure Eraseを行ってみようと思い、hdparm コマンドを試してみた(参考 [[http://qiita.com/nvsofts/items/f46c8a1b3541894ad382|nvsofts氏のエントリ]])・・・が、それもエラーになってしまった。  そこで、**[[http://cmrr.ucsd.edu/people/Hughes/secure-erase.html|HDDErase]]** というソフトを使ってみた。カリフォルニア大学サンディエゴ校(UCSD)にあるCMRR(磁気記憶研究センター)で開発されたソフトだ(UCSDと聞くとPascalという言語を思い出すのは中年以降だろう)。HDDEraseは**DOS**ベースの古くさいソフトで、しかも担当研究者が退職したのでテクニカルサポートが提供できないとある。**最新版4.0の日付が9/20/2008**。とはいえ、非Windows・非Linux環境で試せるソフトとしては筆頭であろう。  まず、[[http://forest.watch.impress.co.jp/library/software/rufus/|Rufus]] というソフトを使ってUSBメモリに**FreeDOSをインストール**し、そこへHDDERASE.EXEを転送した。  次に、**BIOS**のストレージの設定を変更し、**Legacy**とか**IDE互換**のモードにした(つまり、昔ながらのPrimary/Secondary, Master/Slaveの扱いをしてくれるモード)。 {{ ::hdderase1.jpg?nolink |FreeDOSを起動しHDDERASE.EXEを実行 }}  USBからFreeDOSを起動させ、HDDERASE.EXEを実行。 {{ ::hdderase2.jpg?nolink |ドライブ選択}}  確認画面を通過していくと、**ドライブ選択**が現れるので、ここでは **s0** を選択した。 {{ ::hdderase3.jpg?nolink |frozen状態}}  ATAのセキュリティ機能をサポートしている、エンハンスドSecure Eraseの機能がある、さらに**frozen状態**になっている、とある。frozen状態だとSecure Eraseができない。そこで、PCを起動したまま**ドライブの電源コネクタを抜き差しする**という荒技を使って**frozen状態を解除**し、**HDDERASE.EXEの起動からやり直し**たら、frozenの警告が消えた。 {{ ::hdderase4.jpg?nolink |}} {{ ::hdderase5.jpg?nolink |選択メニュー}}  選択メニューが表示されたので、**1**を選んで通常の**Secure Erase**を実行。 {{ ::hdderase6.jpg?nolink |}}  ドライブの最大アドレスと最大LBAアドレスが違っている、とある。これはドライブの終わり部分に**HPA**あるいは**DCO**という領域を確保してあることを示している。Secure Eraseするとその領域も消えてしまう、という警告が表示された。もちろん消えてしまっても私はかまわない。  問題なのは、そのHPA/DCO領域の大きさが4,169,760,769セクタもあると表示されていることだ(約2GB)。SSDの容量を完全に上回っている。なにかの不調が潜んでいるようだ。**このSSDがきちんと動作するのにジャンク品として売られていた**理由は、このあたりにあるのかも。 {{ ::hdderase7.jpg?nolink |エラー}}  **Unable to remove HPA/DCO area(s)**と**エラー表示**があり、選択メニューに戻ってしまった。HDDEraseを使ったSecure Eraseも成功しなかった。ジャンク品手強しである。  終わったらBIOSのストレージ設定を元に戻しておくのを忘れないように。  HDDEraseについてのより詳しい操作は [[http://www.dosv.jp/other/0910/05.htm|DOS/V POWER REPORの記事]] がある。\\ \\ =====TxBENCH=====  **Parted Magic** もダメで、**HDDErase** もダメとなったら、どうすればいいのか? 結局、**[[http://www.texim.jp/txbench.html|TxBENCH]]**を使うしかなかった。Windows 10(や8)上ではSecure Eraseができないのだから、そのためにわざわざWindows 7をインストールした。 {{ ::txbench1.jpg?nolink |TxBENCH}}  TxBENCHの**データ消去**画面。右上の**Securty Frozen**が緑色に点灯している。すでにHDDEraseの時にやったように、PCを起動したまま**ドライブの電源コネクタを抜き差し**するという技を使ってSecurity Frozen状態を解除した({{::txbench6.png?nolink|}} 表示になる)。 {{ ::txbench2.png?nolink |確認画面}}  確認画面(約2分かかると表示されている)。 {{ ::txbench3.png?nolink |}}  正常終了した。・・・はあ、ずいぶん回り道をさせられたものだ。  他のSSDで試してみないとならないが、Secure EraseのためにWin7環境をHDDに残さなければならないのはウザい。WinPE3.0でブータブルなUSBメモリを作っておいた方がいいかもしれない。 =====Secure Erase前後でベンチマーク比較=====  せっかくTxBENCHをインストールしたので、Secure Eraseを行う前後でベンチマーク結果を比較した。 {{ ::txbench4.png?nolink |Secure Erase前}}\\  上がSecure Erase実行前、下が実行後。\\ \\ {{ ::txbench5.png?nolink |Secure Erase後}}  ランダムアクセスに有意な差はなかった。シーケンシャルリードが速くなった。理由は謎だ。散々苦労してSecure Eraseを成し遂げたのに、**あまり差がない**というのは残念だが、SSDの前のオーナーがSecure Eraseしてから手放したのかもしれない。  ともかく、無事Secure Eraseができたので、このSSDにWindows 10をインストールしてみた。もちろんプチフリは起きているが、それについては稿を改めよう。