LINUX.ORG.RU

Как загрузиться с софтового RAID0?


0

0

Есть P4P800 Deluxe с VT6410 котнроллером. На нём два PATA по 80Гб.

Задача - свести их в Software Raid 0 (stripe). В загрузочном варианте.

/dev/hde и /dev/hdg.

Было сделано так:

Какждый винт симметрично разбит на:
128М /boot
2048М swap
остаток - /

Планировался boot в raid1 (mirror), но потом для упрощения задачи было на это забито. Просто grub, стоящий в /dev/hde

Есть ещё /dev/hda3 с точной копией системы.

grub грузится сейчас как:

title=Gentoo Linux (2.6.17-gentoo-r6)
root (hd1,0)
kernel /kernel-genkernel-x86-2.6.17-gentoo-r6 root=/dev/md0 real_root=/dev/md0 md=0,0,4,0,/dev/hde3,/dev/hdg3
initrd /boot/initramfs-genkernel-x86-2.6.17-gentoo-r6

Симптомы.

Ядро грузится успешно.

Как только дело доходит до монтирования root'а, происходит облом. Система говорит, что не может смонтировать root. Выход в shell показывает наличие /dev/md0, но он не монтируется. В dmesg:

Kernel command line: root=/dev/md0 real_root=/dev/md0 md=0,0,4,0,/dev/hde3,/dev/hdg3
md: Will configure md0 (raid0) from /dev/hde3,/dev/hdg3, below.
...
...
...
md: raid0 personality registered for level 0
md: raid1 personality registered for level 1
md: md driver 0.90.3 MAX_MD_DEVS=256, MD_SB_DISKS=27
md: bitmap version 4.39
device-mapper: 4.6.0-ioctl (2006-02-17) initialised: dm-devel@redhat.com
...
...
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
ReiserFS: md0: warning: sh-2006: read_super_block: bread failed (dev md0, block 2, size 4096)
ReiserFS: md0: warning: sh-2006: read_super_block: bread failed (dev md0, block 16, size 4096)

Если в этот момент ввести в качестве root /dev/hda3, то система грузится успешно. raid под именем /dev/md0 не монтируется (mount: you must specify the filesystem type), если же его описать в /etc/mdadm.conf под другим именем (но с теми же девайсами), скажем, как /dev/md3 - всё ок, монтируется, работает, летает. Более того, когда в fstab прописывал в качестве root'а /dev/md3, то загрузка после указания в качестве root'а /dev/hda3 проходит успешно с монтированием root'а на /dev/md3.

В общем, уже сутки с этим вожусь.

Хелп! :)

★★★★★

Дурацкий вопрос, может, какие-то файлы подкинуть на пустующий /dev/hdg1 (который намечался зеркалом /boot) и указать root'ом его? Ибо переключение на /dev/md3, указанный в fstab проходило почти мгновенно. Что туда для этого закинуть нужно?

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

Вот же, блин.

Скопировал на /dev/hdg1 файлы с minimal CD Gentoo. Грузится. Только не перемонтируется нифига, так и остаётся контент /dev/hdg1.

Хотя по mount пишет, что отмонтировано /dev/md/3

Если /dev/md/3 смонтировать на другой каталог вручную - всё корректно, показывается содержимое raid'а.

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

Судя по гуглю, такие же проблемы сплошь и рядом в Ubuntu, SuSe, LFS.

Только нет ни одного ответа по существу.

Впрочем, как и тут пока...

Если у тебя есть готовое решение простой загрузки с софтового рейда - давай. Или так, позвиздеть вышел?

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

У меня? Решение? У меня два десятка машин с софтового рейда грузятся. Проблем не видел вообще никаких, как явления.

Zulu ★★☆☆
()

Ну вот, как всегда, стоило только написать... (надо было вчера этот постинг вывесить :D)

Главная проблема была в том, что коды партиций у меня были 83 (Linux), а не fd (Linux raid auto).

KRoN73 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.