LINUX.ORG.RU
ФорумAdmin

Linux killed my RAID


0

4

Собсно надо было за каким-то лешем мне загрузиться в гентушный лайв-усб, а линух у нас же нынче умный, знает про фейкрейд интеловский, и пытается его детектить и запускать при запуске.

А у меня рейд10 из 4 дисков был(!). После ребута интеловский биос сказал мне что все диски массива - «Not configured» или что-то в этом духе. WTF was that?

Причем линух видит этот массив как degraded 3/4 дисков, дальше пока не разбирался.

Помогите оживить :)

На крайняк конечно я попробую из линуха считать с него данные, но это осложняется тем, что массив зашифрован трукриптом и нужно будет его в лайвсд как-то пихать.

Блин, всё это грустно. Даже не представляю, можно ли заставить тупой контроллер заново собрать рейд, не инициализируя его. Просто скажу всё что знаю по этому поводу, надеюсь более опытные люди меня поправят. Не обижайся если для тебя всё сказанное очевидно.

1) интеловский (недо)рейд работает по принципу, схожему с LVM - сначала диски объединяются в группу, потом на этой группе создаются тома. Т.е. в любом случае нужно будет вспомнить как оно было собрано, либо искать метаданные imsm.

2) я бы стал искать системную плату без встроенного недорейда, в крайнем случае с возможностью отключить его в биосе. Для того, чтобы сделать бекап всех четырёх дисков перед экспериментами, и чтобы недорейд не мешал попыткам реанимации.

3) raid10 - это ещё повезло. Можно понять, какие диски были в парах ( просто сравнивая одинаковые по номеру блоки ближе к середине диска, с помощью dd и hexdump -C ). А если не было чередования, то в принципе можно найти начало раздела и вытащить твой true crypt контейнер как есть через dd, не собирая рейд.

4) testdisk поможет найти, где располагалась ФС ( не уверен, знает ли он о true crypt )

router ★★★★★
()
Ответ на: комментарий от router

1) Да, я уже понял что там не все так просто, как в md-raid :)

2) Рейд конечо отключается, выставляю просто AHCI, но тому же линуксу то эти настройки до фонаря, он видит диски по-отдельности и так и эдак

3) Линух показывает этот RAID10 как stripe=64k,near=2 что в общем-то достаточно стандартно.

Но вытянуть что-то с него из линуха пока не получилось - массив активен, но truecrypt отказывается монтировать его с ошибкой вида «Not a truecrypt volume or wrong password», т.е. скорее всего линух собрал массив криво.

Не то чтобы вообще на нем что-то особо ценное было, но на будущее хочется как-то научиться от таких приколов защищаться.

Сейчас буду пробовать взять его из винды всякими raid reconstructor...

Спасибо за советы!

blind_oracle ★★★★★
() автор топика
Ответ на: комментарий от blind_oracle

3) Линух показывает этот RAID10 как stripe=64k,near=2 что в общем-то достаточно стандартно.

А ты только контейнер собрал ( просто raid group, аналог LVM volume group ), или и тома в этом контейнере тоже?

Посмотри Помогите победить RAID1 (комментарий)

З.Ы. попробуй на http://serverfault.com спросить. Там народу больше :)

router ★★★★★
()
Последнее исправление: router (всего исправлений: 1)
Ответ на: комментарий от router

Да, и контейнер и тома, оно это сделало само при запуске. Я, на всякий случай, остановил все массивы и собрал их заново, сначала контейнер, потом тома. Все то же самое.

Но! Я тут вытянул последний SysrescueCD, с ядром 3.10.12 и проделал на нем все то же самое, и о чудо! :)

После сборки массива ручками неожиданно образовался /dev/md126p1, который трукрипт без проблем открыл и я смонтировал его через ntfs-3g безо всяких проблем.

Что осталось странным, так это то что контейнер он собирает из всех 4 дисков:

root@sysresccd /root % mdadm --detail /dev/md127
/dev/md127:
        Version : imsm
     Raid Level : container
  Total Devices : 4

Working Devices : 4


           UUID : a46dbc28:bbb887c5:5f4eb99a:80eb6bc5
  Member Arrays :

    Number   Major   Minor   RaidDevice

       0       8       48        -        /dev/sdd
       1       8       64        -        /dev/sde
       2       8       80        -        /dev/sdf
       3       8       32        -        /dev/sdc

А том только из 3-ех:

root@sysresccd /root % mdadm --detail /dev/md126
/dev/md126:
      Container : /dev/md/data, member 0
     Raid Level : raid10
     Array Size : 1250258944 (1192.34 GiB 1280.27 GB)
  Used Dev Size : 625129600 (596.17 GiB 640.13 GB)
   Raid Devices : 4
  Total Devices : 3

          State : clean, degraded
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 64K


           UUID : ed894674:9f8e62fe:3027266f:970ffdd8
    Number   Major   Minor   RaidDevice State
       2       8       32        0      active sync   /dev/sdc
       1       8       48        1      active sync   /dev/sdd
       0       8       64        2      active sync   /dev/sde
       3       0        0        3      removed
Но и на том спасибо :)

В общем, спасибо за помощь, а всем я советую грузить всяческие лайвцд с параметрами вида nodmraid, nomdadm чтобы не иметь мешок геморроя, как я :)

blind_oracle ★★★★★
() автор топика
Последнее исправление: blind_oracle (всего исправлений: 1)
Ответ на: комментарий от blind_oracle

После сборки массива ручками неожиданно образовался /dev/md126p1

Возможно, в последних версиях SysrescueCD просто добавили немного магии для автоматического обнаружения встроенных контейнеров ( msdos таблица в mdadm рейде не самое распространённое явление ). Вручную то же самое можно было сделать через kpartx -a /dev/md126

когда у меня есть сомнения, я просто натравливаю blkid и fdisk -l на всё подряд, и смотрю что удалось найти

router ★★★★★
()
Последнее исправление: router (всего исправлений: 2)

просто на будущее, если знаете, что рейд фейковый, никогда не используйте утилиты биоса для создания рейда, проще и надежнее использовать только средства системы

IvanR ★★★
()
Ответ на: комментарий от IvanR

Средства винды для настройки рейда еще хуже, чем биосные. И это никак не гарантирует отсутствие проблем в результате загрузки всяких лайвцд...

blind_oracle ★★★★★
() автор топика
Ответ на: комментарий от IvanR

В некотором роде умеет, можно поставить винду на одиночный диск и после этого сконвертировать его в массив, но как с «этого» грузиться если упадёт один из винтов еще неизвестно...

blind_oracle ★★★★★
() автор топика
Ответ на: комментарий от blind_oracle

да уж, жуткая вещь, тогда или отказаться от загрузки с любого лайв сиди или вообще не использовать рейд в винде

IvanR ★★★
()
Ответ на: комментарий от IvanR

Ну, десктоп на линухе мне не подходит по ряду причин, поэтому пользуюсь виндой и как-то хочу данные обезопасить :) Отдельный контроллер рейдовый пихать некуда (корпус mini ITX), так что извращаюсь встроенным.

Он меня, в общем, более чем устраивает, да и не виноват он не в чем, скорее всего дело именно в mdadm, который при сборке массива портит как-то метаданные интеля...

blind_oracle ★★★★★
() автор топика
Последнее исправление: blind_oracle (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.