У меня есть два тома RAID 10, где только один раздел на / dev / sda был выгнан из одного из двух томов. Вот / dev / mdstat (в процессе восстановления):
md1: активный raid10 sda3 [4] sdd3 [3] sdc3 [2] sdb3 [1] 11719732224 блокирует super 1.2 512K фрагментов 2 почти копии [4/3] [_UUU] [=========== ========>.] восстановление = 97,7% (5725121408/5859866112) окончание = 100,5 мин скорость = 22334 К / с
md0: активный raid10 sda2 [4] sdd2 [3] sdc2 [2] sdb2 [1] 1043456 блокирует super 1.2 512K фрагментов 2 почти копии [4/4] [UUUU]
Основываясь на следующем сообщении ядра, я вижу, что раздел sda3 был удален с md1 только после 21 ошибки чтения:
17 апреля, 14:25:05 someserver kernel: md / raid10: md1: sda3: Raid устройство превысило порог read_error [cur 21: max 20]
17 апреля, 14:25:05 someserver kernel: md / raid10: md1: sda3: сбой рейдового устройства
Что ж, исходя из моих исследований, на самом деле может оказаться, что эти ошибки произошли в течение короткого периода времени, и это не все ошибки «за все время».
Увидев, что smartctl сообщает о нулевом перераспределении секторов на физическом диске 6 ТБ, я не думаю, что диск нужно выбросить, и у меня есть несколько копий данных, которые хранит этот сервер.
В этом случае я пошел дальше и повторно добавил раздел в массив md1, и через 3 дня после ремонта он почти завершен (система зеркалирует другую систему одновременно с ремонтом, поэтому это очень загруженный сервер , что замедляет ремонт). Меня беспокоит, что как только этот диск или один из трех других дисков по 6 ТБ в массиве столкнется с поврежденным сектором, он будет быстро извлечен из массива, требуя еще одного ремонта.
Есть ли способ увеличить порог read_error выше 20, чтобы он пытался усерднее, прежде чем выйдет из строя устройство?