web-dev-qa-db-ja.com

Desmistifiinging SATA hotplug

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

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

しかし、SATAホットスワップについて調査していると、高価なエンタープライズソリューションからゼロ信頼できる情報があります。特許も見てみました。消費者の世界でホットスワップがどの程度信頼できる/信頼できないかを示す単一の信頼できるソースを見つけることができません。

だから、私は私のBIOS、マザーボード、エンクロージャーをサポートしています。エンタープライズでさえ、仕様でホットプラグ対応について言及したことがないドライバー。この便利さのために、データ損失のリスクはどれくらいありますか?

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


編集:ホットプラグ対応に関する詳細情報を見つけました。 Western Digitalから:標準の定義でSATAをサポートするすべてのドライバーが、すでにホットプラグをサポートしていると述べています。

したがって、SATA準拠のデバイスは、ホットプラグ対応にするための追加の変更を必要とせず、堅牢なホットプラグソリューションに必要なビルディングブロックを提供します。これには通常、次のものが含まれます。

ドライブ挿入中の突入電流を受動的に制限するための事前充電抵抗

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

ソース: http://wdc.custhelp.com/app/answers/detail/a_id/941/~/hot-swap-or-hot-plug-wd-sata-drives


しかし、上記は別の疑問を引き起こします。それは言う:

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

pSUのsata電源ポートがなくなったという理由だけで、私のドライバの一部はmolex-> sata電源から接続されています。私がトレースできることから、モレックスとSataの電力の一部は同じ12Vレールから供給されます。 SATAプラグにはロジックのようなものはありません。ばかばかしいプラスチックです。それは私が安全であり、ドキュメントがsataとmolexの両方をサポートするドライバーを指していることを意味しますか?

21
gcb

sATAプラグにはロジックのようには見えません。ばかばかしいプラスチックです。

それは間違いです。 SATA電源プラグに含まれているロジックはパッシブロジックですが、まだ存在しています。ハードドライブピンの図で見ると簡単ですが、電源コネクタにも存在します。以下のピンの一部が他のピンよりもどれだけ短いかに注意してください。これは、ピンが特定の順序で接続されるようにするためです。 (どの順序を思い出せないかと思いますが、電源線では長いピンが最初にグランドに接続されていると思います。)データピンも同じようにセットアップされます。

Wikipedia sata pins

14
birdman3131

この利便性のために、データ損失のリスクはどの程度発生しますか?ドライブが故障しない限り、データ損失のリスクはあまりありません。 HDDは、予期しない電力損失を処理することで本当に信頼できます。 SSDは、予期しない電力損失に関してはそれほど信頼できません。とはいえ、ドライブでアクティビティが発生していない場合、ホットプラグは安全です。私はほとんど毎日これをします。

OSのサポートは必要ですか?いいえ、ドライブはOSを気にしません。 OSがホットプラグをサポートしていない場合は、ドライブを検出するためにOSを再起動する必要がある可能性があり、より適切なシャットダウンのためにドライブにコマンドを送信しません。最悪のシナリオ、OSのクラッシュですが、ドライブは問題ありません。ドライブにアクティビティがない限り、プラグを抜いても安全です。

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

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

6
tchau.dev

私の2セントで解決できます... molexの電源について話すと、ディスクがホットスワップできなくなります。それは、ディスク自体にあるmolexコネクターを使用してディスクに電源を供給することです。

言い換えると、モレックスからサテック電源アダプターまでのモレックス電源コネクターを電源から使用する場合、ディスク自体はそのSATA電源コネクターから電力を供給されるため、ホットスワップ可能である可能性がありますが、モレックス電源はモレックスに接続されている場合ディスク上の電源コネクタ(sata power to molex power adapterも使用)は、リスクなしではディスクをホットスワップできません(接続および切断の電気的ピーク)。

非常に明確にするために:

モレックス電源コネクターが搭載されている一部のディスクについては、そのようなコネクターを介して電源を供給しないでください。モレックスコネクターはホットスワップには安全ではありません

使用されているディスクの電源コネクタがsata電源コネクタである場合、電源がどこにあっても問題はありません。sola電源コネクタからディスクに電力が供給されるため、molexを使用してsata電源アダプタを使用できます。

リスクは、一部のディスクに存在するmolexコネクタを使用することです。すべてのSATAドライブがディスクにそのようなmolexコネクタを持っているわけではありません。

また、molexからsataへの電源アダプターを備えたsata電源コネクターを電源とするディスクは、molexの接続がしっかりしていない場合や、molexの部品を外した場合に死ぬ可能性があります。

だから再開:モレックスの電源コネクタを切断しないでください。SATA電源コネクタのみを切断してください。

それが今明らかであることを願っています。

2ºポイント:ホットスワップのサポート。SATAドライブではなく、SATAポートでサポート(推奨)する必要があります。また、オペレーティングシステムでサポートされている必要があります。

OSは、切断の前にSATAポートのドライブが切断される時期を知る必要があります(最新のOSは断絶を検出して機能し、他のOSはフリーズするだけです)。そのため、ユーザー(またはソフトウェアアプリ)はOSにディスクが削除されます(Linuxではイジェクト、Windowsでは安全に削除など)。

OSがホットスワップ用に設計されていない場合、別のディスクを接続すると奇妙なことが発生する可能性があります。たとえば、OSが古いディスクが再び稼働すると考えている場合など...新しいディスクが異なるとOSが認識しない...現代OSはハードウェアの変更を検出しますが、他のOSは検出しません。

そのため、はい、sataホットスワップはsataコントローラーハードウェアとOSに実装する必要がありますが、ディスクではなく、ディスク自体はホットスワップに関連していません。

ディスクをホットスワップするには、OSがすべてのデータをフラッシュし、ディスクにコマンドを送信して、すべての内部キャッシュをフラッシュしてからスピンダウンする必要があることを通知します。その後、OSがSATAドライバーにデータポートを切断するように指示します。電源ポートも適切に設計されているため、ユーザーはディスクを安全に取り外すことができます(データを送信できない、電気的ピークを引き起こす可能性のある電力がないなど)。SATAハードウェアは、SATAデータポートで無限インピーダンス(ドライブが接続されていない)を検出する必要があります。とsata電源ポート、そして新しいドライブの準備をし、無限のインピーダンスをリッスンするので、他のドライブが接続されるとすぐに電源とデータポートを再接続します...そして、新しいハードウェアが接続されたことをOSに通知する必要があります、 OSはそれが何であるかを確認し、ドライバなどをロードする必要があります。

Sataホットスワップはハードウェアに実装する必要があります。そうです、そうでなければなりません...一部のメーカーは少し遅延していて、Sata仕様に準拠していない、ホットプラグ、ホットスワップなどを実装していません。

システムに電源が供給されているときにドライブを接続すると、SataIIIポートが停止することがありました。

OSをロードしてテストする前に1つのテストをお勧めします... sataに接続されたドライブなしでBIOSを起動し、BIOSがドライブを検出しないことを確認してから、BIOSを終了せずにドライブを非常に慎重に接続し、BIOSを再確認しますディスクを検出します...続行しない場合は、BIOSを終了せずにPCの電源をすぐにオフにします。

BIOSがホットプラグ後にディスクを認識できる場合、それはホットプラグであることがわかりますが、それでもホットスワップであるかどうかはわかりません...別の別のディスクが必要です(同じモデルではありません)/brand/capacity)とBIOS内のテストを続行します...次に、ディスクを取り外し、BIOSがハングするかどうかを確認する必要があります。または、BIOSが検出された場合、そのようなディスクがないことを確認してください...ホットスワップしない...ディスクがないことを検出した場合は、テストを続行して、ホットスワップかどうかを確認します。

取り外した後、BIOSがディスクを検出しない場合は、別のディスクを確認してください...不要なディスクを1つ使用してください。接続するとすぐに停止します。警告が表示されます!...差し込み、BIOSが検出するかどうかを確認しますそれは、すぐに電源が切れない場合は、ホットスワップが実装されていません...ディスクが前のディスクと同じように見える場合は、すぐに電源がオフになり、ホットスワップは行われません... 1つは、ラッキーです。ハードウェアにはホットスワップの実装があります。

そのようなテストで、ハードウェアが完全にホットスワップされていないことが示されている場合、OSが何であっても、ホットスワップ手順は不可能ではないにしても非常に危険です。スワップ前。

しかし、BIOSに、ドライブが表示され、プラグが抜かれていることが表示され、他のディスクが接続されていることが表示されている場合、そのSATAポートでホットプラグのハードウェアサポートがあります...そのSATAポートで繰り返します。ああ、はい、私の友人、一部の怠惰な製造業者は、一部のポートにのみホットスワップを実装し、それらのすべてに実装していません。

あなたがサポートしなければならないこのテストのリスク:BIOSに接続しているときにドライブを差し込むとsataポートが死ぬので、SATAポートが失われます... OSを実行している場所でOSを実行すると、他のデバイスにも損傷を与える可能性があります。 SATAポート。

最悪のシナリオ:SATAルートコントローラーが停止しました。ホットスワップに対応していないため、BIOSでデータが危険にさらされていませんが、OSを実行している場合、すべてのデータが失われ、グラフィックスカード、RAMなどの他のコンポーネントも損傷する可能性があります。 efc。

Biosでテストを行うのが最も安全です...そして、sataポートに損傷が発生した場合、mosyは1つのポートのみが死亡します...とにかく、保証されている場合は、修正する必要があります。適切に接続/切断して損傷を引き起こさない。

繰り返しになりますが、ディスクがディスクに固定されているmolexコネクタから給電されている場合は、ホットプラグ、ホットリムーブ、ホットスワップを試さないでください(すべてのドライブにmolex電源コネクタがあるわけではなく、ほとんどのコネクタにはありません)...また、モレックスのSATA電源アダプターのモレックス部分も切断しません。

Molexコネクターは、ホットプラグ、ホットリムーブ、ホットスワップ用に設計されていません...それらは電気的なピークを引き起こします。

PD:一部のモレックスピンでは、流れる電流が3.5Aを超える可能性があり、人を殺す可能性があります(一般的ではありませんが、可能です)。電圧(12V)は人を殺すものではなく、アンペア数(> 0.3Aは、電圧に関係なく殺すことができます。殺すのはアンペア数です。

2
Anonymous