Raid 5 сдохло 2 винта

Поломалось, посыпалось, не работает...

Модераторы: Trinity admin`s, Free-lance moderator`s

Ответить
Dik
Junior member
Сообщения: 1
Зарегистрирован: 05 сен 2006, 18:57

Raid 5 сдохло 2 винта

Сообщение Dik » 05 сен 2006, 19:19

Добрый вечер уважаемые.
У меня следующая проблема. Есть конроллер Mylex AcceleRaid 170 на базе которого собран Raid 5 из 5 дисков по 36Gb.
Вчера сдохли 2 диска, т.е. ушли в offline. Попытки перевести их в online не увенчались успехом.
Сегодня поставил на их место 2 новых винта, причем выставил у новых винтов теже id, что и у горелых.
Перевел новые винты в online. Выполнил Check Consystens.
При загрузке Windows, ОС показывает масив как нерамеченную область.
Сама ОС установлена на другом винте, поэтому неисправность масива не нее не повлияла. Подскажите, что не так. Как вернуть данные на масиве?
Заранее спасибо!

edo
Advanced member
Сообщения: 123
Зарегистрирован: 14 фев 2006, 02:40
Откуда: пенза

Сообщение edo » 05 сен 2006, 19:22

никак. raid 5 переживает потерю максимум одного винта

Leo_T
Junior member
Сообщения: 9
Зарегистрирован: 02 мар 2006, 20:06
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Leo_T » 14 сен 2006, 21:19

Просто для информации, так как скорее всего уже не актуально: инфу в данном случае восстановить теоретически можно было. Но потребовалось бы вытаскивать все с обоих умерших дисков (если новые диски действительно новые, т.е. на них нет ничего, кроме нулей или известного паттерна, то тогда может быть и только с одного), и писать софт для исправления последствий check costintensy.

Аватара пользователя
gs
Сотрудник Тринити
Сотрудник Тринити
Сообщения: 16650
Зарегистрирован: 23 авг 2002, 17:34
Откуда: Москва
Контактная информация:

Сообщение gs » 14 сен 2006, 21:33

Лео, консистенси чек ничего смертельного не делает. Он только проверяет соответствие блоков данных и соответствующих блоков парити. При несоответствии он перезаписывает парити. Если же не читается блок данных, то на основании парити вычисляет данные и пытается заново их записать. Если блок реально бэдовый, винт его ремапит и все едет дальше. Т.е. он может побить данные только в случае наличия бэд секторов на дисках, если при этом парити читается с того самого неправильно поднятого в онлайн винта. Если же бэдов не было, то он ничего не покорчит. Если же бэдов нет - ну перезапишет он парити - ну и хрен с ними.
Хотя конечно всяко может быть :)
Информацию можно спасти только в случае, если винты реально остались живы, а просто логический сбой. Но в этом случае они бы спокойно поднялись в онлайн, что автор сделать не смог. Так что видимо они подохли реально (причем в таких случаях обычно выясняется, что первый винт сдох давно, а ленивый админ не пользовался мониторингом). Ну конечно можно еще было попытаться отнести винты в спецконторы для снятия информации злобными методами типа замены платы электроники, но это весьма недешево и совсем не гарантирует результат (т.е. он может быть только если подохла электроника, а не механика).

Leo_T
Junior member
Сообщения: 9
Зарегистрирован: 02 мар 2006, 20:06
Откуда: Санкт-Петербург
Контактная информация:

Сообщение Leo_T » 15 сен 2006, 11:28

Да, я поторопился и малость ошибся. Если диски не были перепутаны, то были перезаписаны только парити на тех местах, где они и должны быть. Но доставать инфу придется обязательно с обоих умерших дисков, так как избыточность исходной инфы была потеряна при перезаписи парити.
Пересчитывать надо было бы, только если бы была изменена конфигурация массива. Был недавно случай - админы разобрали софтовый RAID5 на трех дисках, взяли еще один диск, собрали аппаратный RAID5 на 4-х, сделали консистенси чек и потом вспомнили, что на софтовом массиве была sql-ная база ;-).
Ну а если диски действительно умерли не одновременно, то восстановить можно было бы только то, что не обновлялось после смерти первого из них...

Ответить

Вернуться в «Массивы - Технические вопросы, решение проблем.»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 23 гостя