Maksym Tiurin writes: > Загружаюсь с rescue cd и пытаюсь восстановить рейд на последних трех > работающих дисках. Не восстанавливается > > mdadm --assemble --force /dev/md0 --force /dev/sdb /dev/sde /dev/sdd > mdadm: /dev/md0 assembled from 2 drives and 1 spare - not enough to > start the array. > > mdadm считает что sdd - hot spare > > cat /proc/mdstat > Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] > md0 : inactive sdb[0](S) sdd[4](S) sde[3](S) > 1465159488 blocks > > unused devices: <none> > > > cat /sys/block/md0/md/array_state > inactive
\skip > В суперблоке sdd и записано что он spare. > > Два диска видно что активные \skip Рассказываю как восстановил (пусть для истории будет). Для восстановления нужно знать какой был рейд, его уровень, количество дисков и какой диск в каком слоте был. Ну и порядок их вылета тоже совсем не помешает. У меня был raid5 из 4-х дисков с таким раскладом по слотам HDD slot sdb 0 sdc 1 sdd 2 sde 3 Сначала вылетел sdc, потом sdd Зная это восстановить просто: # mdadm --create --verbose /dev/md0 --assume-clean --level=raid5 --raid-devices=4 --spare-devices=0 /dev/sdb /dev/sdc /dev/sdd /dev/sde mdadm: layout defaults to left-symmetric mdadm: chunk size defaults to 64K mdadm: /dev/sdb appears to be part of a raid array: level=raid5 devices=4 ctime=Wed Apr 16 19:31:35 2008 mdadm: /dev/sdd appears to be part of a raid array: level=raid5 devices=4 ctime=Wed Apr 16 19:31:35 2008 mdadm: /dev/sde appears to be part of a raid array: level=raid5 devices=4 ctime=Wed Apr 16 19:31:35 2008 mdadm: size set to 488386496K Continue creating array? y mdadm: array /dev/md0 started. Рейд запустился # cat /proc/mdstat Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid5 sde[3] sdd[2] sdc[1] sdb[0] 1465159488 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU] unused devices: <none> # cat /sys/block/md0/md/array_state clean После этого для минимизации количества сбойных файлов переподключаю первый вылетевший диск # mdadm /dev/md0 --fail /dev/sdc && mdadm /dev/md0 --remove /dev/sdc && mdadm /dev/md0 --add /dev/sdc Подождал пока рейд синхронизируется, обновил описание рейда в mdadm.conf (mdadm --create создает новый рейд с другим UUID). После чего запустил LVM который был на рейде и fsck на все файловые системы. Вот в принципе и вся success story ;) -- With Best Regards, Maxim Tyurin JID: mrko...@jabber.pibhe.com