SATA ホットプラグの謎を解く

SATA ホットプラグの謎を解く

個々のポートでホットプラグを有効にするオプションがある BIOS があります。HDD と SSD 用のスライド式エンクロージャ (電源と SATA ポートへのパススルーのみ) があり、物理的に移動する前にドライブの電源を切ることができます。

毎回コンピューターをシャットダウンせずに、HDD/SSD を挿入したり取り外したりできる便利さが気に入っています。

しかし、SATAホットスワップについて調べているうちに、高価なエンタープライズソリューションの中で、ゼロ信頼性のある情報特許も調べてみました。消費者の世界でホットスワップがどの程度信頼できるか、信頼できないかを教えてくれる信頼できる情報源は 1 つも見つかりませんでした。

つまり、私の BIOS、マザーボード、エンクロージャではサポートされています。ドライバーの仕様には、エンタープライズ版でもホットプラグ対応と記載されているのを見たことはありません。この利便性のために、データ損失のリスクはどの程度になるのでしょうか?

それから、ハードウェアはさておき、ソフトウェアの問題があります。OS のサポートは必要ですか? ドライブを抜くために発行する必要がある AT コマンドはありますか? それとも、電源を切ると自動的にヘッドが停止しますか? ソフトウェア側では、少し情報に基づいた議論があります。ここ


編集: ホットプラグ可能に関する詳細情報を見つけました。Western Digital によると、標準の定義により SATA をサポートするすべてのドライバーは、すでにホットプラグをサポートしているとのことです。

したがって、SATA 準拠のデバイスは、ホットプラグ対応にするために追加の変更を必要とせず、堅牢なホットプラグ ソリューションに必要な構成要素を提供します。これには通常、次のものが含まれます。電源がオフになっているレセプタクルでもデバイスを検出します (サーバー アプリケーションに典型的)

ドライブ挿入時の突入電流を受動的に制限するプリチャージ抵抗器

ドライブ挿入時の突入電流をアクティブに制限するホットプラグコントローラ

ソース:http://wdc.custhelp.com/app/answers/detail/a_id/941/~/ホットスワップまたはホットプラグ-wd-sata-drives


しかし、上記は別の疑問を引き起こします。それは次のように述べています。

シリアル ATA ハード ドライブのホットプラグ機能を利用するには、レガシー (Molex) 電源接続ではなく、シリアル ATA 電源接続を使用する必要があります。レガシー (Molex) 電源接続はホットプラグをサポートしていません。

私のドライバーの一部は、PSU の SATA 電源ポートが不足しているため、Molex から SATA 電源に接続されています。追跡したところによると、Molex と SATA 電源の一部は同じ 12V レールから供給されています。SATA プラグにはロジックがないようです。単なるプラスチックです。これは安全であり、ドキュメントは SATA と Molex の両方をサポートするドライバーについて言及していることを意味しますか?

答え1

この利便性により、データ損失のリスクはどの程度になるのでしょうか? ドライブが壊れない限り、データ損失のリスクはほとんどありません。HDD は予期しない電源喪失の処理に関して非常に信頼性があります。SSD は予期しない電源喪失に関してはそれほど信頼性がありません。とはいえ、ドライブで何も行われていない場合は、ホットプラグはかなり安全です。私はほぼ毎日これを行っています。

OS のサポートは必要ですか? いいえ、ドライブは OS を気にしません。OS がホットプラグをサポートしていない場合、ドライブを検出するために OS を再起動する必要があり、より安全なシャットダウンのためにドライブにコマンドを送信しないことを意味します。最悪のシナリオは OS がクラッシュすることですが、ドライブは正常です。ドライブ上でアクティビティがない限り、プラグを抜いても安全であることを覚えておいてください。

ドライブを取り外すために発行する必要がある AT コマンドはありますか? それとも、電源を切ると自動的にヘッドが停止しますか? ドライブのヘッドを強制的にパークさせるコマンドがありますが、ドライブにアクティビティがない場合でも、そのコマンドは実行されます。十分な電力があるかどうかは保証できないため、電源を切ったときにヘッドが自動的にパークするかどうかは保証できません。

ああ、ここに注意点があります。一部の OS では、ドライブへのデータの送信や、ドライブへのファイル システム情報の保存が遅れる場合があります。このような場合は、「安全な削除」または「アンマウント」機能を使用する必要があります。これは、新しく書き込まれたデータにのみ適用されます。

答え2

SATA プラグにはロジックがないようです。単なるプラスチックです。

それは間違いです。SA​​TA 電源プラグに含まれるロジックはパッシブ ロジックですが、それでも存在します。ハード ドライブ ピンの写真で見るとわかりやすいですが、電源コネクタにも存在します。以下のピンの一部が他のピンより短いことにお気づきですか? これは、ピンが特定の順序で接続されるためです。(どの順序だったかは覚えていませんが、電源線では長いピンが接地され、最初に接続されると思います。) データ ピンも同様に設定されています。

Wikipedia SATA ピン

答え3

物理的にホットスワップが可能な SATA ベイを購入しました。それで、この質問について考えていました。今、奇妙な結果が出ています。NVMe から起動した Linux では、ホットスワップが機能しました。しかし、SATA ドライブからロードされた Linux では、別のドライブをホットスワップすると再起動が発生しました。カーネル パラメータが関係しているかどうかはわかりませんが、後で調べます。また、Windows OS でもテストします。

Linux では、関連すると思われるフィールドを選択して、次のコマンドを使用しました。

$ lsblk -d -o NAME,MAJ:MIN,RM,HOTPLUG,MODEL,ROTA,TYPE,TRAN,SUBSYSTEMS,VENDOR

SSDは取り外しできないと表示されます(注:RMそしてホットプラグ列):

NAME    MAJ:MIN RM HOTPLUG MODEL                     ROTA TYPE TRAN   SUBSYSTEMS         VENDOR
sda       8:0    0       0 Samsung_SSD_850_EVO_500GB    0 disk sata   block:scsi:pci     ATA     
sdb       8:16   0       0 Samsung_SSD_860_EVO_500GB    0 disk sata   block:scsi:pci     ATA     
sdc       8:32   1       1 Portable_2_Plus              1 disk usb    block:scsi:usb:pci Live Gam
nvme0n1 259:0    0       0 Samsung SSD 960 EVO 1TB      0 disk nvme   block:nvme:pci

ただし、lsblk からの情報がどの程度正確であるかはわかりません。少なくとも、sdc は回転可能なディスク (ROTA は 1) として表示されていることに気付きましたが、これは単なる SD カードなので誤りです。

UEFI BIOS で各ポートのホット プラグを有効にした後も、RM および HOTPLUG フィールドは 0 のままでした。奇妙です... 少なくとも HOTPLUG フィールドは 1 になるはずだと思っていました。その後、ハードウェア RAID のない Supermicro サーバー (つまり、バックプレーンに挿入されたいくつかの SATA SSD) でこれらのことをさらに確認したところ、確かにホット スワップ可能ですが、サーバーの BIOS でホット プラグの設定が有効または無効になっているにもかかわらず、RM および HOTPLUG は常に 0 です。

答え4

私の答えは次の場所で確認できます:

https://serverfault.com/questions/690609/in-which-order-do-i-plug-the-sata-power-and-data-cables-for-hotplug/1137222#1137222

まもなく、消費者の世界ではホットプラグはサポートされなくなります。

関連情報