今回はUSB接続としたため、secure erase対象のデバイスはda0となっている。ここは適宜読み替えのこと。
まずはデバイスがセキュアイレースに対応しているかどうか調べる。
# camcontrol security da0 pass9: <C400-MTFDDAK128MAM 08TH> ACS-2 ATA SATA 3.x device pass9: 400.000MB/s transfers Security Option Value supported yes enabled no drive locked no security config frozen no count expired no security level high enhanced erase supported yes erase time 2 min enhanced erase time 2 min master password rev fffe
特に重要なのは、supported, security config frozen, enhanced erase supportedの項目で、意味は以下のとおり。
以下のコマンドでセキュアイレースが実行できる。
# camcontrol security da0 -U user -s password -e password
パラメータの意味は以下のとおり。
実際に実行してみた結果が以下のとおり。
# camcontrol security da0 -U user -s password -e password pass9: <C400-MTFDDAK128MAM 08TH> ACS-2 ATA SATA 3.x device pass9: 400.000MB/s transfers You are about to ERASE ALL DATA from the following device: pass9,da0: <C400-MTFDDAK128MAM 08TH> ACS-2 ATA SATA 3.x device Are you SURE you want to ERASE ALL DATA? (yes/no) yes Issuing SECURITY_SET_PASSWORD password='erase', user='user', mode='high' Issuing SECURITY_ERASE_PREPARE Issuing SECURITY_ERASE_UNIT password='erase', user='user' camcontrol: ATA SECURITY_ERASE_UNIT via pass_16 failed
最後にfailedしてるのは、コマンドがタイムアウトしたためらしい。
camcontrolはデバイスが返すerase time/enhanced erase timeの時間を見てタイムアウト時間を決めているそうだが、割と高確率でタイムアウトが発生する。
以下のコマンドで拡張セキュアイレースが実行できる。
# camcontrol security da0 -U user -s password -h password
パラメータの意味は割愛。セキュアイレースと違うのは-eが-hになっただけ。
# camcontrol security da0 -U user -s erase -h erase pass9: <C400-MTFDDAK128MAM 08TH> ACS-2 ATA SATA 3.x device pass9: 400.000MB/s transfers You are about to ERASE ALL DATA from the following device: pass9,da0: <C400-MTFDDAK128MAM 08TH> ACS-2 ATA SATA 3.x device Are you SURE you want to ERASE ALL DATA? (yes/no) yes Issuing SECURITY_SET_PASSWORD password='erase', user='user', mode='high' Issuing SECURITY_ERASE_PREPARE Issuing SECURITY_ERASE_UNIT password='erase', user='user' Erase Complete
なぜかこちらはタイムアウトすることなく、すぐに終了。対象のデバイスによっても挙動が違うかも?
本当にSecure Erase出来てるかは、正直なところ良くわからない。
デバイスごとに結構挙動が違うようで、今回のRealSSD C400+CSDRU3B6Gの場合、Secure Eraseコマンド発行後はアクセスランプが点滅し何かしら動いてそうではあるが、一晩経っても点滅しっぱなしだった。一方でEnhanced Secure Eraseの方は特に点滅することもなくすぐ終わるし。
ついでにハマったのが、gpart
コマンドの挙動。消去できたかの確認でgpart show da0
してたんだけど、なぜか一旦デバイスを外さないと情報が更新されなかった。
とりあえずデバイスの先頭1GiBが0になってるのは確認できたので、一応消去はされてるっぽい。
# hd -n 1073741824 /dev/da0 00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 40000000