[Comm] root raid
Aleksey Avdeev
=?iso-8859-1?q?solo=5Foboroten_=CE=C1_mail333=2Ecom?=
Чт Май 22 11:48:04 MSD 2003
Борис Ревякин пишет:
> On Wed, 21 May 2003 12:10:48 +0400
> "Aleksey Avdeev" <solo_oboroten на mail333.com> wrote:
>
>
>>Michael Shigorin пишет:
>>
>>>On Fri, May 16, 2003 at 11:00:00AM +0400, Борис Ревякин wrote:
>>>
>>>
>>>>>http://search.altlinux.ru/?q=root+raid1 по части обсуждения
>>>>
>>>>Михаил, обсуждения кое какие и правда есть, но я решения не нашел.
>>>>Пожалуйста, ткните в решение. Ну _ОЧЕНЬ_ прошу.
>>>
>>>
>>>Оно там было, ищите -- я тоже буду искать, но не сейчас, а
>>>скоро...
>>
>> Только загрузка на raid1 в ДЕГРАДИРОВАННОМ режиме... Как
>>загрузить систему с корнем на raid1 в штатном режиме, мне лично -
>>найти не удалось.
>>
>>
>>>Еще что-то вроде Root-RAID-Boot HOWTO содержало указание на то,
>>>что стоит делать /boot первым разделом и ставить загрузчик
>>>(точнее, именно LILO) на него. В случае для зеркала.
>>
>> При пользовании мини HOWTO "Boot + Root + Raid + Lilo :
>>Программный Raid" нужно учитывать что подменой корня в Мастере
>>занимается не linuxrc а кто-то другой (возможно
>>BusyBox или код в ядре)... А так, подобная схема у меня работала
>>на ядре 2.4.20-alt5-up, сейчас делаю её же для ядра 2.4.20-alt7-up.
>>
>>
>>>Эх, блин -- на шляпе-то работает...
>>>
>>
>> ИМХО: В Мастере проблема в том, что автодетект рейда
>>выполняется ДО загрузки необходимых модулей средствами
>>linuxrc (помоему, даже до монтирования initrd). При этом, запись
>>в initrd /sbin/modprobe (бинарник с необходимыми либами, или как
>>линк на существующий там insmod) и /etc/modules.conf не помогло.
>> (depmod -a в контексте initrd - тоже.)
>
>
> Полностью с Вами согласен.
> Если собрать ядро с md внутрях, то загрузка происходит нормально.
> Cкажите, что надо править для решения этой проблемы?
> Уж очень не хочется пересобирать ядра из-за этой фишки. :-(
Править надо initrd. Пока делаю это примерно так:
1. $ sudo mkinitrd --with raid1 --pause <initrd-image>
<kernel-version>
2. Скрипт выведет имя каталога (у меня /tmp/initrd.*) где он
создал заготовку образа и предложит нажать на ENTER после
корректировок.
3. Я выполнял следующие (от root, всё относительно /tmp/initrd.*):
а) mkdir proc
б) ln -s bin sbin
в) в bin скопировал системные umount и raidstart
г) в lib - требуемые библиотеки (2 штуки + 2 софт линка на них
какие именно - непомню: сделано дома)
д) в etc - /etc/raidtab
е) в dev - используемые устройства (в моём случаи -
требующиеся sd* и md*)
ё) дополнить linuxrc следующим кодом (шаблон):
/bin/mount <опции, устройство> /proc
/bin/raidstart <md*>
/bin/umount /proc
4. Нажать на ENTER :-)
Разумеется решение не очень красивое (например, umount можно
реализовать средствами BusyBox). :-( Над болие красивым я
работаю, но это займёт время, а его - мало.
--
С уважением. Алексей.
Подробная информация о списке рассылки community