目錄

簡介

如何發生穿孔塊？

穿孔塊症狀

被刺破的塊的證據

可能的補救

防止穿孔塊

簡介

本文檔介紹硬碟上穿孔塊的含義。它 還描述了穿孔塊是如何發生的，以及補救步驟。

什麼是穿孔塊？

當巡檢讀取或重建操作在源驅動器上遇到介質錯誤時，它會在目標驅動器上穿透塊，以防止使用具有無效奇偶校驗的資料。對穿孔塊的任何後續讀取操作都將完成，但出現錯誤。因此，對塊的穿孔可以防止以後使用該塊時生成任何無效的奇偶校驗。

來源：12Gb/s MegaRAID® SAS軟體使用手冊，修訂版F，2014年8月

如何發生穿孔塊？

在RAID5中，資料以奇偶校驗的形式分佈在所有成員磁碟上。在這種情況下，如果其中一個驅動器出現故障，可以通過計算所有驅動器的奇偶校驗來重建資料。有多種情況可能導致穿孔，但通常首先使用RAID，該RAID具有一個故障驅動器，而該驅動器也具有許多介質錯誤或處於預測性故障狀態。

以下連結提供了一個非常好的場景，可以解釋陣列如何被穿孔：

http://www.theprojectbot.com/what-is-a-punctured-raid-array

讀完它後，您應該清楚瞭解當更換硬碟而不檢查其他磁碟時，一些錯誤的邏輯塊或介質錯誤被重新定位，然後任何其他磁碟都可能顯示為有故障。

在多個驅動器上可能會出現一個被刺破的塊，而只有1個驅動器正式「故障」。 然後，可以將其複製到替換磁碟中，使問題更加複雜。

穿孔塊症狀

伺服器可能會報告多個硬碟故障。僅更換硬碟無法解決問題。此外，I/O效能可能會降低。

被刺破的塊的證據

日誌中可能包含類似於以下行的條目。

6:2014 Jul 27 00:36:06:BMC:storage:-: SLOT-5: Unexpected sense: PD 0c(e0x12/s5) Path 500000e11986c502, CDB: 28 00 0e 71 66 e7 00 00 19 00, Sense: 3/11/01

6:2014 Jul 27 00:36:06:BMC:storage:-: SLOT-5: Unexpected sense: PD 13(e0x12/s7) Path 50000395083063f6, CDB: 28 00 0e 71 66 eb 00 00 15 00, Sense: 3/11/14

在上面的輸出中，e0x12/s5表示它與HDD5相關。以下連結說明了檢測代碼(檢測：3/11/14):

http://en.wikipedia.org/wiki/Key_Code_Qualifier

因此，該感測器指示中等錯誤。

日誌中也可以阻止以下事件：

1:2014 Jul 16 10:42:43:BMC:storage:-: SLOT-5: Unrecoverable medium error during recovery on PD 0c(e0x12/s5) at e7166e7

1:2014 Jul 16 10:42:43:BMC:storage:-: SLOT-5: Puncturing bad block on PD 0c(e0x12/s5) at e7166e7

1:2014 Jul 19 03:46:22:BMC:storage:-: SLOT-5: Consistency Check detected uncorrectable multiple medium errors (PD 13(e0x12/s7) at e7166d9 on (null))

可能的補救

無論何時出現被穿透的塊，都強烈建議進行資料備份。出現上述消息時，可能傾向於查詢出現故障的硬碟並替換它，但可能會有多個錯誤的邏輯塊分佈在整個陣列中。雖然硬碟故障或故障可能是原因，但只有通過重建受影響的虛擬驅動器才能解決被刺破的塊。

1. 建立資料備份

2. 清除RAID陣列配置

3. 從頭開始建立新陣列
附註：附註：建立VD（虛擬驅動器）時，請選擇FULL/SLOW而不是FAST初始化。

4. 重新安裝作業系統

5. 恢複資料備份。

附註：更換硬碟驅動器不會自行修復被刺破的塊。如果有故障驅動器，應更換它，否則需要重建RAID。

防止穿孔塊

- 監控RAID及其成員驅動器的運行狀況。

- 更換任何硬碟之前，請檢視控制器日誌。

- 確保已開啟並運行「Patrol Reads and Consistency Checks（巡檢讀取和一致性檢查）」(檢查錯誤CSCul22968)。