HDD と SSD Linux: ハードリセット リンク

HDD と SSD Linux: ハードリセット リンク

私の現在のストレージ セットアップは、Linux ボックス内の 2 つの従来の HDD と 2 つの SSD で構成されており、それぞれが luks 経由で暗号化された独自の RAID 1 アレイ上に 2 つずつあります。具体的な質問というよりは、ある種のストーリーがあります。

1 年以上前から、一部のドライブのカーネル ログに「リンクのハード リセット」エラーがランダムに表示されるようになりました。問題のあるドライブを RMA すると、新しいドライブで問題は解決しました。数か月後、結局、ランダムなタイミングで同じエラーが再び表示されるようになりました。ドライブは RAID で障害としてマークされ、 に表示されなくなりましたfdisk -l。コンピューターを再起動すると、ドライブが再び表示され、アレイに再度追加すると再構築されました。遅かれ早かれ、通常は数時間後に、その問題が再び発生しました。

約 6 か月前、従来の HDD 2 台を SSD に交換しました。従来のドライブほど故障率が高くないことを期待したからです。しかし、ここ数日、新しい SSD の 1 台と従来のドライブの 1 台の両方で問題が発生し始めました。

パターンが見え始めています。新しいドライブを購入して、数か月後に問題が発生し始めます。HDD の故障率が高いためだといつも思っていましたが、SSD でも同じことが起きているので、ドライブのせいではないと思います。他に何が問題なのでしょうか? 問題が発生し始めてから複数の OS をインストールしたので、ソフトウェアの問題を排除したいです。残るのは SATA ケーブルかマザーボードのどちらかです。ディスク暗号化がドライブに過度のストレスをかけているのでしょうか? 詳細情報を確認するためにできることはありますか? いつもありがとうございます。

dmesg以下は、数か月前に同じ問題を抱えていたときに私が尋ねた質問からの問題の出力です。

[43161.734107] ata3: ATA_REG 0x41 ERR_REG 0x84
[43161.734110] ata3: tag : dhfis dmafis sdbfis sactive
[43161.734113] ata3: tag 0x0: 1 1 0 1  
[43161.734123] ata3.00: exception Emask 0x1 SAct 0x1 SErr 0x180000 action 0x6 frozen
[43161.734127] ata3.00: Ata error. fis:0x21
[43161.734130] ata3: SError: { 10B8B Dispar }
[43161.734134] ata3.00: failed command: READ FPDMA QUEUED
[43161.734142] ata3.00: cmd 60/08:00:a8:03:00/00:00:00:00:00/40 tag 0 ncq 4096 in
[43161.734144]          res 41/84:04:a8:03:00/84:00:00:00:00/40 Emask 0x10 (ATA bus error)
[43161.734148] ata3.00: status: { DRDY ERR }
[43161.734150] ata3.00: error: { ICRC ABRT }
[43161.734155] ata3: hard resetting link
[43161.734158] ata3: nv: skipping hardreset on occupied port
[43162.220095] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43162.260202] ata3.00: model number mismatch 'WDC WD2002FAEX-007BA0' != 'C WD2002FAEX-007BA0                   �'
[43162.260206] ata3.00: revalidation failed (errno=-19)
[43162.260211] ata3.00: limiting speed to UDMA/133:PIO2
[43167.220123] ata3: hard resetting link
[43167.220127] ata3: nv: skipping hardreset on occupied port
[43167.710060] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43167.750228] ata3.00: model number mismatch 'WDC WD2002FAEX-007BA0' != 'C WD2002FAEX-007BA0                   �'
[43167.750232] ata3.00: revalidation failed (errno=-19)
[43167.750236] ata3.00: disabled
[43172.710100] ata3: hard resetting link
[43173.620110] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43173.640455] ata3.00: failed to IDENTIFY (INIT_DEV_PARAMS failed, err_mask=0x80)
[43178.620116] ata3: hard resetting link
[43179.530113] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43179.550748] ata3.00: ATA-8: WDC WD2002FAEX-007BA0, 05.01D05, max UDMA/133
[43179.550753] ata3.00: 3907029168 sectors, multi 16: LBA48 NCQ (depth 31/32)
[43179.570208] ata3.00: model number mismatch 'WDC WD2002FAEX-007BA0' != 'C WD2002FAEX-007BA0                   �'
[43179.570213] ata3.00: revalidation failed (errno=-19)
[43179.570220] ata3: limiting SATA link speed to 1.5 Gbps
[43179.570224] ata3.00: limiting speed to UDMA/133:PIO3
[43184.530066] ata3: hard resetting link
[43184.530070] ata3: nv: skipping hardreset on occupied port
[43185.020091] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43185.060949] ata3.00: configured for UDMA/133
[43185.060969] sd 2:0:0:0: [sdd]  Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[43185.060974] sd 2:0:0:0: [sdd]  Sense Key : Aborted Command [current] [descriptor]
[43185.060980] Descriptor sense data with sense descriptors (in hex):
[43185.060983]         72 0b 47 00 00 00 00 0c 00 0a 80 00 00 00 00 00 
[43185.060995]         00 00 03 a8 
[43185.061000] sd 2:0:0:0: [sdd]  Add. Sense: Scsi parity error
[43185.061006] sd 2:0:0:0: [sdd] CDB: Read(10): 28 00 00 00 03 a8 00 00 08 00
[43185.061017] end_request: I/O error, dev sdd, sector 936
[43185.061023] Buffer I/O error on device sdd, logical block 117
[43185.061044] sd 2:0:0:0: rejecting I/O to offline device
[43185.061048] sd 2:0:0:0: killing request
[43185.061062] ata3: EH complete
[43185.061075] sd 2:0:0:0: rejecting I/O to offline device
[43185.061123] sd 2:0:0:0: rejecting I/O to offline device
[43185.061134] sd 2:0:0:0: rejecting I/O to offline device
[43185.061140] sd 2:0:0:0: rejecting I/O to offline device
[43185.061145] sd 2:0:0:0: [sdd] READ CAPACITY(16) failed
[43185.061147] sd 2:0:0:0: [sdd]  Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
[43185.061152] sd 2:0:0:0: [sdd] Sense not available.
[43185.061155] sd 2:0:0:0: rejecting I/O to offline device
[43185.061166] sd 2:0:0:0: rejecting I/O to offline device
[43185.061175] sd 2:0:0:0: rejecting I/O to offline device
[43185.061185] sd 2:0:0:0: rejecting I/O to offline device
[43185.061193] sd 2:0:0:0: rejecting I/O to offline device
[43185.061198] sd 2:0:0:0: [sdd] READ CAPACITY failed
[43185.061202] sd 2:0:0:0: rejecting I/O to offline device
[43185.061209] sd 2:0:0:0: [sdd]  Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
[43185.061215] sd 2:0:0:0: [sdd] Sense not available.
[43185.061226] sd 2:0:0:0: rejecting I/O to offline device
[43185.061235] sd 2:0:0:0: rejecting I/O to offline device
[43185.061245] sd 2:0:0:0: rejecting I/O to offline device
[43185.061254] sd 2:0:0:0: rejecting I/O to offline device
[43185.061263] sd 2:0:0:0: rejecting I/O to offline device
[43185.061274] sd 2:0:0:0: rejecting I/O to offline device
[43185.061280] sd 2:0:0:0: [sdd] Asking for cache data failed
[43185.061283] sd 2:0:0:0: [sdd] Assuming drive cache: write through
[43185.061289] sdd: detected capacity change from 2000398934016 to 0
[43185.061610] ata3.00: detaching (SCSI 2:0:0:0)
[43185.062444] sd 2:0:0:0: [sdd] Stopping disk
[43249.120042] ata4.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
[43249.120046] ata4.00: failed command: FLUSH CACHE EXT
[43249.120051] ata4.00: cmd ea/00:00:00:00:00/00:00:00:00:00/a0 tag 0
[43249.120052]          res 40/00:00:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout)
[43249.120054] ata4.00: status: { DRDY }
[43249.120059] ata4: hard resetting link
[43249.120060] ata4: nv: skipping hardreset on occupied port
[43249.610042] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[43249.650323] ata4.00: configured for UDMA/133
[43249.650326] ata4.00: retrying FLUSH 0xea Emask 0x4
[43249.650452] ata4.00: device reported invalid CHS sector 0
[43249.650458] ata4: EH complete

答え1

ここで質問があります。(私の理解が正しければ)この障害の原因を特定するプロセスは何でしょうか?

私はネットワーク セキュリティ エンジニアです。ですから、これを入力しながら身震いしていることは理解してください。これは暗号化の問題として排除してください。ドライブを復号化して、まだ問題が発生するかどうかを確認してください。欠点は、数か月間は復号化して使用する必要があることです。

ケーブルは簡単なテストです (まずそこから始めるべきです)。ケーブルを交換してください。ただし、ケース内にネオン ライトが付いていない限り、それが問題であるとは信じがたいです。

残るはマザーボードです。他の 2 つでなければ...

私のトラブルシューティングに同意できない人は、きっと口を挟むでしょう。ケーブルを交換するのは費用がかかりませんし、暗号化を一時的に無効にすることは、受け入れるかどうかはあなただけが決められるセキュリティ リスクです。

答え2

SATA リンクに多くのエラーがあるようです。その結果、ホストはリンクを介して確実にコマンドを取得できず、取得できたとしても返されるデータが破損している場合があります。

メッセージには、速度が制限されているか、または予期されたドライブ識別子が受信されなかったことが示されています。また、SATA のハードウェア レベルで何が起こっているかを必ずしも反映していない、ドライバーのさまざまなレイヤーからの混乱を招くメッセージも表示されます。たとえば、「速度を UDMA/133:PIO3 に制限しています」は、厳密にはパラレル ATA ドライブにのみ適用されます (ドライバーがエラーが解消されるかどうかを確認するために、より遅いインターフェイス速度を試していることを意味します)。ただし、エラー メッセージは、実際にハードウェアを処理する最下位レベルが、SATA ドライブと通信していることを理解していることを明確に示しています。

SATA ケーブルが原因かもしれないという考えは正しいです。ケーブルを交換して、SATA 3.0 Gb/秒 (「SATA 2」または「SATA II」とも呼ばれる) の定格であることを確認してください。ドライブに問題があるとは思いません。ドライブを交換した後、エラーが表示されるまでに数か月かかるのはなぜですか? ケーブルが何らかの理由で緩んでいて、ドライブを交換するとケーブルが元通りになるのかもしれません。あるいは、偶然かもしれません。

関連情報