среда, апреля 29, 2009

Как чинить совсем развалившийся mdadm raid5

Недавно приключилась неприятность: в работащем raid5 в процессе rebuild'а после замены диска вылетел второй диск. Rebuild был завершен где-то на 90%. Ценные данные на массиве занимали только первую треть диска, а значит были теоретически спасены. Но raid не запускается, т.к. нет двух дисков. Как быть?

Рецепт спасения следующий:
0. Данные действия могут быть деструктивными для ваших данных. Настоятельно рекомендуется скопировать все диски, и эксперименты по восстановлению проводить на копии.
1. Проверить параметры старого raid. Для этого сделать mdadm -E на любой из имеющихся дисков.
2. Собрать raid в деградировавшем состоянии. Для этого выполнить:
mdadm --create /dev/md0 -n XXX -c YYY -l 5 -p ZZZ --assume-clean /dev/sda1 /dev/sdb1 /dev/sdc1 missing /dev/sde1
Здесь XXX - число дисков в raid, YYY - размер chunk'а, ZZZ - используемая геометрия, все эти параметры от старого raid'а выдает mdadm -E. Важно соблюсти порядок дисков таким же, какой был в оригинальном массиве, и поставить missing на месте именно сбойного диска.
3. Готово. Можно проверить целостность данных, и "доткнуть" оставшийся диск, чтобы запустить repair на восстановленный raid.
Comments: Отправить комментарий

<< Home

This page is powered by Blogger. Isn't yours?