
私は Kali Live で hdparm を使用して Micron M600 自己暗号化 SSD に ATA パスワードを追加しようとしています。以下を使用します:hdparm --security-set-pass PASSWORD sda
しかし、私はこう思います:
sda: Issuing SECURITY_SET_PASS command, password="PASSWORD",
user=user, mode=high SG_IO: bad/missing sense data, sb[]: 70 00 05 00
00 00 00 0a 04 51 60 00 21 04 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00
では、なぜこのようなことが起こるのでしょうか?
と入力するとhdparm -I sda
、ドライブが「セキュリティ凍結」されていると表示されます。これは、ATA パスワードの追加を含むセキュリティ設定を変更できないことを意味すると記憶していますが、これが問題でしょうか?
私の BIOS は ATA パスワードをサポートしておらず、これまで設定したことはありません。
編集: セキュリティの部分hdparm -I
:
Security:
Master password revision code = 65534
supported
not enabled
not locked
frozen
not expired: security count
supported: enhanced erase
2min for SECURITY ERASE UNIT.
2min for ENHANCED SECURITY ERASE UNIT.
このウェブサイトのフォーマットはいつも乱れていますが、内容が読みやすいように最善を尽くしています。
答え1
コメントするには長すぎるので、部分的な回答です。
与えられたセンスデータは次のとおりです:
70 response code=Current information (about the error etc.)
00
05 sense code=Illegal Request
00 00 00 00 (not valid)
0a additional 10 bytes
04 51 60 00 (command specific)
21 04 additional sense code=Unaligned Write Command
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
したがって、エラーは「不正な要求、整列されていない書き込みコマンド」です。ATAhdparm
ライトスルー SCSI コマンドを使用している場合、これは特に意味がありません。
なぜこのようなことが起こるのか、私にはわかりません。これが「セキュリティ凍結」状態に対する反応だとしたら、実に奇妙な反応です。おそらく、SCSI から SSD への変換レイヤーの何かが、ATA ライトスルー コマンドを好まないのでしょうか?
Micron M600 SSD が ATA パスワードをサポートしていることをご存知ですか?
編集: リンクしたマニュアルには次のように書かれています:
マイクロンのSEDサポートどちらかTCG Opal 2.0仕様またはATA セキュリティ機能セット。ATA セキュリティ モードは、通常、システム BIOS またはレガシー モードの一部の UEFI (Universal Extensible Firmware Interface) ベースのシステムによって開始されます。関連する業界標準化団体の仕様では、TCG Opal と ATA セキュリティは相互に排他的です。つまり、一方が有効になっている場合、もう一方は無効になります。
したがって、BIOS で有効になっていない場合は動作しません。「Frozen」は状態を変更できないことを意味します。
完全な出力を添えて質問を編集してください。安全のセクションhdparm -I
。
編集
出力hdparm -I
には明らかに「有効になっていません」ではなく「フリーズしています」と表示されています。つまり、BIOS は有効にせずフリーズしたため、状態を変更できません。
つまり、SSD は TCG Opal モードになっているのですが、Linux でこれにアクセスする方法がわかりません。
プラグを差し込んだ状態で電源を入れ直すことは試してみる価値があります。
パスワードを設定できる、またはフリーズしない BIOS を搭載した別のコンピュータが見つかった場合は、その方法も試すことができます。
答え2
同じ問題があり、他の場所でデバイスの電源またはホットプラグサイクルでフリーズが解除されると読みました。ラップトップの場合はシステムをサスペンドすることを勧める人もいたので、それを試してみることにしました。うまくいきました!
そこで、ドライブを「解凍」するために私が行ったことは次のとおりです (ドライブは、hetzner ホスティング会社のリモート サーバー上にあります)。
まず、サーバーを nfs ブートのレスキュー環境で起動しました。次に、ログインしてシステムをサスペンドしました。
local $> ssh root@server
server #> apt-get install pm-utils
server #> pm-suspend
この時点でシステムはサスペンドされ(SSD も)、当然ながら ssh シェルは応答しなくなります。
ホストのコントロール パネルを使用して WOL (Wake on Lan) 信号を発行しました (ping でうまくいったかどうかはわかりません)。しばらくすると (20 秒ほど)、シェルが復活し、SSD の凍結が解除されたため、多くのハウツーで説明されているように、hdparm を使用して --secure-erase コマンドを発行できるようになりました。
答え3
この質問が 5 年前に出されて以来、1 つの回答やコメントでも言及されていませんが、実際には、ローカル マシン上で Sense エラー メッセージをデコードする非常に簡単な方法があります。
sg_decode_sense
すべての主要な Linux ディストリビューション (Arch Linux のパッケージなど) で利用可能なコマンドを使用しsg3_utils
、16 進数のエラー メッセージを渡して、人間が読める形式に変換します。
user@host$ sg_decode_sense 70 00 05 00 00 00 00 0a 04 51 60 00 21 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Fixed format, current; Sense key: Illegal Request
Additional sense: Unaligned write command
PS: 質問のタイトルは、hdparm
Sense エラーを出力するときに常に印刷される一般的なメッセージであるため、この正確な 16 進 Sense エラー メッセージが表示されていない人の役に立つと思います。
答え4
私も同じ問題に遭遇しました。同じフォルトコードです。これはデルのシステムでした。私はArch Wikiに従いました。https://wiki.archlinux.org/index.php/Solid_state_drive/メモリセルクリアリング
そこには明確にこう記されている。
BIOS で内部 HDD パスワードを設定します (キーマップは en_US / qwerty なので注意してください)。
キーボードのレイアウトが異なるため、基本的にずっと間違ったパスワードを使用していました...