[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