Я робив багато досліджень на цю тему протягом останніх тижнів - і, думаю, я близький до завершення відновлення, наскільки це можливо, принаймні. Щоб коротко розповісти, я просто опишу проблему, не заповнюючи кожну дрібну технічну деталь.
Припустимо, у вас є декілька масивів RAID-5, кожен з яких має 8 дисків, а потім об'єднали їх у єдиний логічний том LVM. Потім один з дисків гине в одному з масивів, і під час перебудови ви натрапляєте на невідправну помилку читання на другому диску в цьому масиві. І звичайно, резервних копій немає.
Я вже ddrescue'd дані з накопичувача з URE на новий диск, тільки 5K даних пошкоджено всі згруповані в дуже невелику область диска. Я також припускаю, що, як тільки я збираю цей пристрій MD за допомогою копії ddrescue'd, я помножую розмір своєї втрати даних на кількість дисків без паритету в моєму масиві (так 35 КВ втрати даних), як паритет розрахунки смуг за допомогою цих блоків будуть неправильними.
Я читав і розумію процедуру на веб-сайті http://smartmontools.sourceforge.net/badblockhowto.html, щоб визначити, які файли будуть пошкоджені подібною ситуацією, але моя проблема полягає у з'ясуванні, які саме блоки будуть пошкоджені після md rebuild використовувати для введення в налагодження. Зрозуміти всі компенсації, коли md та lvm зберігають метадані, теж не буде цікавим, але я думаю, що я можу впоратися з цією частиною.
Чи можу я просто помножити всі мої погані блоки на 7, а потім припустити, що наступні 6 блоків після кожного з них також будуть поганими, а потім дотримуйтесь інструкцій LVM у посібнику, зв'язаному вище?
І щоб було зрозуміло - я не переймаюся ремонтом чи повторним картографуванням поганих блоків, як описано в посібнику, я замінив диск і дозволяю md обробляти подібні речі. Мені просто хочеться знати, на які файли у файловій системі ext4 вплинуло.