Упал программный RAID-5. Нужна помощь.
Модераторы: Trinity admin`s, Free-lance moderator`s
Упал программный RAID-5. Нужна помощь.
ОС - Linux-RH-7.3, ядро 2.4.26. Программный RAID-5 из 9-ти дисков IBM-36Gb Model: IC35L036UWD210-0 Rev: S5BS
Биосом сервера все диски определяются верно. Контроллер встроенный (Adaptec AIC-7896) на материнке (Supermicro P6DGH)
Uptime до краха приблизительно около года (последние регламентные работы).
конфигурация при запуске:
raiddev /dev/md0
raid-level 5
nr-raid-disks 9
chunk-size 32k
persistent-superblock 1
nr-spare-disks 0
device /dev/sda1
raid-disk 0
device /dev/sdb1
raid-disk 1
device /dev/sdc1
raid-disk 2
device /dev/sdd1
raid-disk 3
device /dev/sde1
raid-disk 4
device /dev/sdf1
raid-disk 5
device /dev/sdg1
raid-disk 6
device /dev/sdh1
raid-disk 7
device /dev/sdi1
raid-disk 8
Как я понял из вывода lsraid -A -a /dev/md0 -d /dev/sda1
[dev 9, 0] /dev/md0 87D59135.545CB76A.C41A16E1.E06FE57D offline
[dev 8, 1] /dev/sda1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 17] /dev/sdb1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 33] /dev/sdc1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 49] /dev/sdd1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 65] /dev/sde1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev ?, ?] (unknown) 00000000.00000000.00000000.00000000 missing
[dev 8, 97] /dev/sdg1 87D59135.545CB76A.C41A16E1.E06FE57D failed
[dev 8, 113] /dev/sdh1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 129] /dev/sdi1 87D59135.545CB76A.C41A16E1.E06FE57D good
произошёл отказ двух дисков, но в то же время диски вроде как живы:
fdisk -l
Disk /dev/sda: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdb: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdc: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdd: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sde: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sde1 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdf: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdf1 1 35003 35843056 fd Linux raid autodetec
Disk /dev/sdg: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdg1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdh: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdh1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdi: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdi1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/hda: 255 heads, 63 sectors, 5005 cylinders
Units = cylinders of 16065 * 512 bytes
на команду raidstart /dev/md0 выдаёт следующее:
md: superblock update time inconsistency -- using the most recent one
md: kicking non-fresh sdg1 from array!
md0: removing former faulty sdg1!
raid5: not enough operational devices for md0 (2/9 failed)
RAID5 conf printout:
--- rd:9 wd:7 fd:2
disk 0, s:0, o:1, n:0 rd:0 us:1 dev:sda1
disk 1, s:0, o:1, n:1 rd:1 us:1 dev:sdb1
disk 2, s:0, o:1, n:2 rd:2 us:1 dev:sdc1
disk 3, s:0, o:1, n:3 rd:3 us:1 dev:sdd1
disk 4, s:0, o:1, n:4 rd:4 us:1 dev:sde1
disk 5, s:0, o:0, n:5 rd:5 us:1 dev:[dev 00:00]
disk 6, s:0, o:0, n:6 rd:6 us:1 dev:[dev 00:00]
disk 7, s:0, o:1, n:7 rd:7 us:1 dev:sdh1
disk 8, s:0, o:1, n:8 rd:8 us:1 dev:sdi1
raid5: failed to run raid set md0
md: pers->run() failed ...
md :do_md_run() returned -22
команда fsck /dev/md0 не проходит. матерится на суперблок.
бэкапа нет. т.е. он есть, но хранится на этом же массиве .
общий объём информации ~200Gb.
нужно как-то восстановить всю информацию. как - незнаю .
прошу помощи.
С уважением.
Биосом сервера все диски определяются верно. Контроллер встроенный (Adaptec AIC-7896) на материнке (Supermicro P6DGH)
Uptime до краха приблизительно около года (последние регламентные работы).
конфигурация при запуске:
raiddev /dev/md0
raid-level 5
nr-raid-disks 9
chunk-size 32k
persistent-superblock 1
nr-spare-disks 0
device /dev/sda1
raid-disk 0
device /dev/sdb1
raid-disk 1
device /dev/sdc1
raid-disk 2
device /dev/sdd1
raid-disk 3
device /dev/sde1
raid-disk 4
device /dev/sdf1
raid-disk 5
device /dev/sdg1
raid-disk 6
device /dev/sdh1
raid-disk 7
device /dev/sdi1
raid-disk 8
Как я понял из вывода lsraid -A -a /dev/md0 -d /dev/sda1
[dev 9, 0] /dev/md0 87D59135.545CB76A.C41A16E1.E06FE57D offline
[dev 8, 1] /dev/sda1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 17] /dev/sdb1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 33] /dev/sdc1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 49] /dev/sdd1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 65] /dev/sde1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev ?, ?] (unknown) 00000000.00000000.00000000.00000000 missing
[dev 8, 97] /dev/sdg1 87D59135.545CB76A.C41A16E1.E06FE57D failed
[dev 8, 113] /dev/sdh1 87D59135.545CB76A.C41A16E1.E06FE57D good
[dev 8, 129] /dev/sdi1 87D59135.545CB76A.C41A16E1.E06FE57D good
произошёл отказ двух дисков, но в то же время диски вроде как живы:
fdisk -l
Disk /dev/sda: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdb: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdc: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdd: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sde: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sde1 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdf: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdf1 1 35003 35843056 fd Linux raid autodetec
Disk /dev/sdg: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdg1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdh: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdh1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/sdi: 64 heads, 32 sectors, 35003 cylinders
Units = cylinders of 2048 * 512 bytes
Device Boot Start End Blocks Id System
/dev/sdi1 * 1 35003 35843056 fd Linux raid autodetect
Disk /dev/hda: 255 heads, 63 sectors, 5005 cylinders
Units = cylinders of 16065 * 512 bytes
на команду raidstart /dev/md0 выдаёт следующее:
md: superblock update time inconsistency -- using the most recent one
md: kicking non-fresh sdg1 from array!
md0: removing former faulty sdg1!
raid5: not enough operational devices for md0 (2/9 failed)
RAID5 conf printout:
--- rd:9 wd:7 fd:2
disk 0, s:0, o:1, n:0 rd:0 us:1 dev:sda1
disk 1, s:0, o:1, n:1 rd:1 us:1 dev:sdb1
disk 2, s:0, o:1, n:2 rd:2 us:1 dev:sdc1
disk 3, s:0, o:1, n:3 rd:3 us:1 dev:sdd1
disk 4, s:0, o:1, n:4 rd:4 us:1 dev:sde1
disk 5, s:0, o:0, n:5 rd:5 us:1 dev:[dev 00:00]
disk 6, s:0, o:0, n:6 rd:6 us:1 dev:[dev 00:00]
disk 7, s:0, o:1, n:7 rd:7 us:1 dev:sdh1
disk 8, s:0, o:1, n:8 rd:8 us:1 dev:sdi1
raid5: failed to run raid set md0
md: pers->run() failed ...
md :do_md_run() returned -22
команда fsck /dev/md0 не проходит. матерится на суперблок.
бэкапа нет. т.е. он есть, но хранится на этом же массиве .
общий объём информации ~200Gb.
нужно как-то восстановить всю информацию. как - незнаю .
прошу помощи.
С уважением.
Можно поробовать указать fsck использовать другой суперблок, их в ext2 (ext3) много , и они равномерно распределены по всей ёмкости носителя:
Первый за основным суперблок лежит в 8193 для FS с 1k blocksizes, в
16384 для 2k blocksizes и в 32768 для 4k blocksizes.
Последующие номера, на случай неисправности второго, можно выписаить отформатировав любой hdd (не из рейда ) или просто найти в интернете.
В общем примерно так :
#fsck -b 8193 /dev/md0
Первый за основным суперблок лежит в 8193 для FS с 1k blocksizes, в
16384 для 2k blocksizes и в 32768 для 4k blocksizes.
Последующие номера, на случай неисправности второго, можно выписаить отформатировав любой hdd (не из рейда ) или просто найти в интернете.
В общем примерно так :
#fsck -b 8193 /dev/md0
я пробова в явном виде указывать суперблок:
fsck -b 8193 /dev/md0
никаких результатов
fsck -b 8193 /dev/md0
fsck 1.27 (8-Mar-2002)
e2fsck 1.27 (8-Mar-2002)
fsck.ext2: Invalid argument while trying to open /dev/md0
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
ума не приложу, как токое могло случиться, а более того, как это исправить
fsck -b 8193 /dev/md0
никаких результатов
fsck -b 8193 /dev/md0
fsck 1.27 (8-Mar-2002)
e2fsck 1.27 (8-Mar-2002)
fsck.ext2: Invalid argument while trying to open /dev/md0
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
ума не приложу, как токое могло случиться, а более того, как это исправить
там ext2 или ext3 стояла ?
попробуй :
#fsck -t ext2 -b 8193 /dev/md0
или
#fsck -t ext3 -b 8193 /dev/md0
Впрочем подозреваю что это не поможет,
т.к. суперблок как раз недоступен по причине неработы raid.
сейчас попробую посмотреть имеются ли методы прямого управления состоянием винтов в raid массиве,
я как то сталкивался с такой проблеммой, но решения быстрого не нашёл, просто переставил всё заного, благо данных у меня важных не было.
Основное преимущество аппаратного Raid как раз в нормальных средствах манипулирования при режимах восстановления raid.
попробуй :
#fsck -t ext2 -b 8193 /dev/md0
или
#fsck -t ext3 -b 8193 /dev/md0
Впрочем подозреваю что это не поможет,
т.к. суперблок как раз недоступен по причине неработы raid.
сейчас попробую посмотреть имеются ли методы прямого управления состоянием винтов в raid массиве,
я как то сталкивался с такой проблеммой, но решения быстрого не нашёл, просто переставил всё заного, благо данных у меня важных не было.
Основное преимущество аппаратного Raid как раз в нормальных средствах манипулирования при режимах восстановления raid.
вот что я нашёл, похоже это ваш случай
http://unthought.net/Software-RAID.HOWT ... html#ss8.1
http://unthought.net/Software-RAID.HOWT ... html#ss8.1
спасибо за ссылку, но у меня нет уверенности, что в этом случае я не потеряю данные.
я было хотел попробовать команду mkraid -R /dev/md0, но получил серьёзное предупреждение:
....If your /etc/raidtab file is not in sync with the real array configuration,
then --force might DESTROY ALL YOUR DATA. It's especially dangerous to use
-f if the array is in degraded mode.....
или я просто не совсем уверен в перводе этой фразы
я было хотел попробовать команду mkraid -R /dev/md0, но получил серьёзное предупреждение:
....If your /etc/raidtab file is not in sync with the real array configuration,
then --force might DESTROY ALL YOUR DATA. It's especially dangerous to use
-f if the array is in degraded mode.....
или я просто не совсем уверен в перводе этой фразы
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 15 гостей