Hard-Drive

目前在 RAID 5 linux 驅動器上不可讀的扇區

  • September 4, 2013

我每 30 分鐘在 /var/log/messages 上有一條 smartd 消息:

智能

$$ 3588 $$: 設備: /dev/sdc, 176 目前不可讀(待處理)扇區 此驅動器 (sdc) 是使用 mdadm 配置的 RAID 5 的一部分。Mdadm 監視器告訴 RAID 沒問題,但我想知道是否需要更換驅動器。此外,如果有必要將此扇區或作業系統標記為壞,則已經這樣做了。如果我需要更換驅動器,我該如何選擇替換驅動器?我在硬碟規格中找不到塊的數量,所以如果我選擇一個塊比原來少的塊,我會遇到麻煩。謝謝。

是的,換個驅動。

不可讀(待處理)扇區是其內容無法讀取的扇區。在正常的非 RAID 情況下,當驅動器嘗試一次又一次地讀取扇區直到成功(或直到它最終放棄)時,會導致讀取錯誤或長時間延遲。

使用 RAID 會發生兩件事:

  1. 您的磁碟可能配置了較短的 TLER 值。因此,它將放棄在合理時間內讀取該扇區的嘗試。(從而防止長時間掛起)。
  2. 您的 RAID 陣列注意到故障並從另一個磁碟讀取數據。這是 RAID 5 的優勢;你有一個備用副本。

你想做的是:

  1. 檢查您的備份。*如果一切順利,*您應該不需要它們。
  2. 獲取相同或更大尺寸的替換磁碟。您可以使用 來檢查尺寸smartctl -a /dev/sdc。不要假設所有大小為 X 的驅動器都具有相同的容量。製造商喜歡整數;一個 500 GB 驅動器可能比另一個 500 GB 驅動器小。
  3. 使有問題的磁碟離線。( mdadm --manage --remove /dev/mdX /dev/sdc)
  4. 用新硬體更換磁碟並讓陣列自行重建。( mdadm --add /dev/mdX /dev/sdc)

如果您使用大磁碟,那麼這將花費大量時間。有時,從頭開始重建 RAID 陣列並從備份中恢復會更快。(首先測試這些備份!)

當 RAID 正在重建時,您沒有冗餘。因此,如果另一個磁碟出現故障(例如,由於重建的壓力),那麼您就有問題了。這有時會發生在大磁碟(重建時間長)和同一日期的成批驅動器上。

引用自:https://serverfault.com/questions/535870