From: "Aleksey Avdeev" <solo_oboroten@mail333.com> To: community@altlinux.ru Subject: Re: [Comm] root raid Date: Thu, 22 May 2003 14:20:36 +0400 Message-ID: <3ECCA474.2050307@mail333.com> (raw) In-Reply-To: <3ECC91E6.1070409@symmetron.msk.ru> Владимир пишет: > Aleksey Avdeev пишет: > >> Борис Ревякин пишет: >> >>> 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 > > > > > Я обходился и обхожусь без этого. У меня без него raidstart работать отказывался... > > >> >> >> б) ln -s bin sbin >> >> в) в bin скопировал системные umount и raidstart > > > > > Соответственно, umount мне не нужен. > > >> >> >> г) в lib - требуемые библиотеки (2 штуки + 2 софт линка на них какие >> именно - непомню: сделано дома) >> >> д) в etc - /etc/raidtab > > > > > Вот здесь у меня получается основная "засада". > "Теоретически", если корневой raid находится на разделе тип fd, то этот > файл не требуется - > команда raidstart все необходимое должна достать из дескриптора раздела. > А этого не происходит. > С raidtab все стартует, но с руганью. > > md: autorun ... > md: considering sdb2 ... > md: adding sdb2 ... > md: adding sda2 ... > md: created md0 > md: bind<sda2,1> > md: bind<sdb2,2> > md: running: <sdb2><sda2> > md: sdb2's event counter: 0000001c > md: sda2's event counter: 0000001c > md: RAID level 1 does not need chunksize! Continuing anyway. > > Вот это мне не понятно. Для raid1 chunks необходимы. В ядре 2.4.18 этой > ругани не наблюдалось. > > md0: max total readahead window set to 508k > md0: 1 data-disks, max readahead per data-disk: 508k > raid1: device sdb2 operational as mirror 1 > raid1: device sda2 operational as mirror 0 > raid1: raid set md0 active with 2 out of 2 mirrors > md: updating md0 RAID superblock on device > md: sdb2 [events: 0000001d]<6>(write) sdb2's sb offset: 337280 > md: sda2 [events: 0000001d]<6>(write) sda2's sb offset: 337280 > [events: 62c1a1d3] > md: invalid raid superblock magic on md0 > > И вот это мне тоже не понятно, на 2.4.18 не наблюдалось. > > md: md0 has invalid sb, not importing! > md: no nested md device found > md: ... autorun DONE. По моему, это автор эйд ругается. У меня он ещё пытается грузить md-persoanality-3 (надеюсь, название не переврал) и отваливается, т. к. initrd ещё не смонтирован, по моему. Наличие или отсутствие raidtab при этом - значения не имеет. Во всяком случаи у меня. Но может я ошибаюсь. :-) > > > Если не обращать внимания на ругань, все остальное в норме. > > >> >> >> е) в dev - используемые устройства (в моём случаи - требующиеся sd* >> и md*) >> >> ё) дополнить linuxrc следующим кодом (шаблон): >> >> /bin/mount <опции, устройство> /proc >> /bin/raidstart <md*> >> /bin/umount /proc > > > > Соответственно, обхожусь без монтирования - размонтирования /proc. > >> >> 4. Нажать на ENTER :-) >> >> Разумеется решение не очень красивое (например, umount можно >> реализовать средствами BusyBox). :-( Над болие красивым я работаю, но >> это займёт время, а его - мало. >> > > А чтобы было "совсем красиво" и при выключении небыло ругани на занятое > устройство raid, в > /etc/lilo.conf можно указать, что корень сидит на "половинке" raid1, а в > /etc/fstab, что корень на md{x} > И для аварийной загрузки так надежнее. На ядре 2.4.18 после правки > rc.sysinit можно было грузиться > обычным образом на половинку raid зеркала и потом инициализировать > корневой raid, с 2.4.20 так не > получается. На мой взгляд данное решение страдает минимум 3 недостатками: 1. Приходится руками править rc.sysinit при после обновлений его меняющих. 2. Загрузка на деградированный raid может не спасти при потере таблицы разделов одного из винтов. Что схема с активацией через initrd переживает свободно. Что меня раза 3 и спасало. (Пока не подобрал комбинацию железа, которое смогло работать не просаживая источник питания. :-)) 3. Решение частное и не расширяемое, т. к. работает ТОЛЬКО для raid1: если по каким либо причинам потребуется размещать корень на массиве другого типа... Или поместить корень на LVM - оно работать не будет. Такие конфигурации возможны в первую очередь через initrd. Нехочу обсуждать сдесь (эта тема tallc-room) нужны ли вообще такие варианты положения корня, но явных запретов на их существование я не вижу. И ИМХО: Полезно быть к этому готовым. А на самом деле, хотелось бы, чтобы mkinitrd сам обеспечивал поддержку таких конфигураций каким либо стандартным образом. -- С уважением. Алексей.
next prev parent reply other threads:[~2003-05-22 10:20 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2003-05-15 10:20 ` [Comm] Ошибки при загрузке Michael Shigorin 2003-05-15 11:35 ` [Comm] Попытка поставить ALM2.2 на HPT370 Mike Lykov 2003-05-16 7:00 ` [Comm] Ошибки при загрузке Борис Ревякин 2003-05-20 19:12 ` [Comm] root raid (was: Ошибки при загрузке.) Michael Shigorin 2003-05-21 6:12 ` Владимир 2003-05-21 8:10 ` [Comm] root raid Aleksey Avdeev 2003-05-22 4:26 ` Борис Ревякин 2003-05-22 7:48 ` Aleksey Avdeev 2003-05-22 9:01 ` Владимир 2003-05-22 10:20 ` Aleksey Avdeev [this message] 2003-05-22 21:18 ` [Comm] " Michael Shigorin 2003-05-22 12:58 ` [Comm] " Борис Ревякин
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=3ECCA474.2050307@mail333.com \ --to=solo_oboroten@mail333.com \ --cc=community@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git