* [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 @ 2006-03-09 6:03 Eugene Prokopiev 2006-03-10 9:14 ` Eugene Prokopiev 0 siblings, 1 reply; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-09 6:03 UTC (permalink / raw) To: Sisyphus Здравствуйте! А как узнать, какие модули по минимуму требуется положить в initrd для ядра 2.6.14-std26-up-alt5, чтобы получить в нем поддержку LVM/LVM2/EVMS? -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-09 6:03 [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 Eugene Prokopiev @ 2006-03-10 9:14 ` Eugene Prokopiev 2006-03-10 9:50 ` Eugene Prokopiev 2006-03-10 9:58 ` Sergey Vlasov 0 siblings, 2 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-10 9:14 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list Половину своей задачи я решил: в initrd все инициализируется правильно, но вот переключиться из initrd в настоящую систему я не могу. Что я сейчас имею: ALM 2.4 + updates + некоторые backports + kernel 2.6.14-std26-up-alt5 из Сизифа Содержимое initrd: # find ./ ./ ./etc ./dev ./dev/mapper ./dev/system ./dev/console ./dev/null ./dev/ram ./dev/systty ./dev/tty1 ./dev/urandom ./dev/md0 ./dev/md255 ./dev/md1 ./initroot ./loopfs ./sys ./proc ./bin ./bin/echo ./bin/insmod ./bin/losetup ./bin/modprobe ./bin/mount ./bin/sh ./bin/test ./bin/umount ./bin/cat ./bin/mknod ./bin/bash ./bin/lvm ./bin/strace ./bin/raidautorun ./bin/busybox-big ./lib ./lib/modules ./lib/modules/2.6.14-std26-up-alt5 ./lib/modules/2.6.14-std26-up-alt5/kernel ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/md ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/md/dm-mod.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/md/raid1.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-core.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/pci ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/pci/piix.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/pci/generic.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-generic.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-disk.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/fs ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/mbcache.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/jbd ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/jbd/jbd.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext3 ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext3/ext3.ko ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext2 ./lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext2/ext2.ko ./lib/ld-linux.so.2 ./lib/libc.so.6 ./linuxrc ./var ./log Содержимое linuxrc: #!/bin/bash -x /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/md/dm-mod.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-core.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/pci/piix.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/pci/generic.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-generic.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/ide/ide-disk.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/drivers/md/raid1.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/fs/mbcache.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/fs/jbd/jbd.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext3/ext3.ko /bin/insmod -f /lib/modules/2.6.14-std26-up-alt5/kernel/fs/ext3/ext2.ko /bin/mount -t proc proc /proc /bin/mount -t tmpfs -o size=1m none /dev/mapper /bin/mount -t tmpfs -o size=1m none /dev/system /bin/mount -t tmpfs -o size=1m none /etc /bin/mount -t tmpfs -o size=1m none /var /bin/mount -t ext2 -o rw /dev/md0 /log /bin/raidautorun /dev/md255 /bin/mknod -m 600 /dev/mapper/control c 10 63 cat /proc/mdstat /bin/lvm vgscan /bin/lvm vgchange -ay /initroot /bin/umount /log /bin/umount /var /bin/umount /etc /bin/umount /dev/system /bin/umount /dev/mapper /bin/umount /proc Содержимое initroot (взято из оригинального initrd, сгенерированного посредством mkinitrd): #!/bin/sh EncodeDev() { echo $(( ($2 & 0xff) | ($1 << 8) | (($2 & ~0xff) << 12) )) } read cmdline </proc/cmdline cmdline=" $cmdline " if test -z "${cmdline##*[ ]root=*}" ; then root="${cmdline##*[ ]root=}" root="${root%%[ ]*}" if test -z "${root##/dev/*}" ; then root="${root#/dev/}" ( read ignored read ignored while read major minor size name ignored; do if test "$name" = "$root" ; then EncodeDev $major $minor >/proc/sys/kernel/real-root-dev break fi done ) </proc/partitions fi fi В итоге я получаю: VFS: Cannot open root devoce "3a00" or unknown-block(58,0) Please append a correct "root" boot option Kernel panic - not syncing : VFS : Unable to mount root fs on unknown block(58,0) Если вместо initroot в linuxrc вписать вызов /bin/bash, то дальше руками я смогу смонтировать свои lvm-разделы. Точно также их монтирует штатное ядро 2.4.26-std-up-alt13 Что делать дальше? -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 9:14 ` Eugene Prokopiev @ 2006-03-10 9:50 ` Eugene Prokopiev 2006-03-10 9:58 ` Sergey Vlasov 1 sibling, 0 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-10 9:50 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list > /bin/mount -t ext2 -o rw /dev/md0 /log Эта строка нужна была для отладки и записи лога strace на md0, да и работать будет только после raidautorun - не обращайте на нее внимание. То же и с размонтированием md0. Основной вопрос остается в силе. -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 9:14 ` Eugene Prokopiev 2006-03-10 9:50 ` Eugene Prokopiev @ 2006-03-10 9:58 ` Sergey Vlasov 2006-03-10 11:38 ` Eugene Prokopiev 1 sibling, 1 reply; 12+ messages in thread From: Sergey Vlasov @ 2006-03-10 9:58 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 2942 bytes --] On Fri, Mar 10, 2006 at 12:14:04PM +0300, Eugene Prokopiev wrote: > Половину своей задачи я решил: в initrd все инициализируется правильно, > но вот переключиться из initrd в настоящую систему я не могу. > > Что я сейчас имею: ALM 2.4 + updates + некоторые backports + kernel > 2.6.14-std26-up-alt5 из Сизифа ... > Содержимое initroot (взято из оригинального initrd, сгенерированного > посредством mkinitrd): > > #!/bin/sh > > EncodeDev() > { > echo $(( ($2 & 0xff) | ($1 << 8) | (($2 & ~0xff) << 12) )) > } > > read cmdline </proc/cmdline > cmdline=" $cmdline " > if test -z "${cmdline##*[ ]root=*}" ; then > root="${cmdline##*[ ]root=}" > root="${root%%[ ]*}" > if test -z "${root##/dev/*}" ; then > root="${root#/dev/}" > ( > read ignored > read ignored > while read major minor size name ignored; do > if test "$name" = "$root" ; then > EncodeDev $major $minor > >/proc/sys/kernel/real-root-dev > break > fi > done > ) </proc/partitions > > fi > fi Этот кусок - костыль для ядер 2.6.x, которые разучились находить major/minor по имени устройства из root=... в случае, когда соответствующий драйвер вынесен в модуль. > В итоге я получаю: > > VFS: Cannot open root devoce "3a00" or unknown-block(58,0) Однако в данном случае даже этот костыль не сработал, что неудивительно. Major 58 - это устройства LVM1, использовавшиеся в ядрах 2.4.x; скорее всего, его подцепил lilo при установке под 2.4.x (lilo передаёт root=... в виде числа, а код разбора root=... в ядре и в приведённом куске не нашёл ничего лучше). LVM2 работает через dm, у которого major/minor динамические, и их даже нельзя найти в /proc/partitions (точнее, они там видны, но под совершенно бесполезными именами). > Please append a correct "root" boot option > Kernel panic - not syncing : VFS : Unable to mount root fs on unknown > block(58,0) > > Если вместо initroot в linuxrc вписать вызов /bin/bash, то дальше руками > я смогу смонтировать свои lvm-разделы. Точно также их монтирует штатное > ядро 2.4.26-std-up-alt13 > > Что делать дальше? Если оставлять старый механизм работы с initrd, нужно определить major/minor нужного устройства в /dev, созданного утилитами lvm, и записать его в /proc/sys/kernel/real-root-dev. Можно перейти на новый механизм обработки initrd (root=/dev/ram0, linuxrc запускается как init (pid==1) и должен смонтировать реальный root, после чего выполнить pivot_root туда и exec /sbin/init). Либо перейти на initramfs (примерно то же самое, но вместо pivot_root выполняется chroot, и хорошо бы зачистить за собой initramfs, чтобы не занимать память). [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 9:58 ` Sergey Vlasov @ 2006-03-10 11:38 ` Eugene Prokopiev 2006-03-10 12:38 ` Sergey Vlasov 2006-03-13 12:55 ` Eugene Prokopiev 0 siblings, 2 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-10 11:38 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list > Если оставлять старый механизм работы с initrd, нужно определить > major/minor нужного устройства в /dev, созданного утилитами lvm, и > записать его в /proc/sys/kernel/real-root-dev. да, работает :) > Можно перейти на новый механизм обработки initrd (root=/dev/ram0, linuxrc > запускается как init (pid==1) и должен смонтировать реальный root, после > чего выполнить pivot_root туда и exec /sbin/init). в /root смонтирован настоящий /root (из /dev/system/root) пишу pivot_root /root /var/root или pivot_root /root /loopfs мне заявляют Device or resource busy в первом случае и Invalid argument во втором. В /var/root и /loopfs ничего нет - это пустые каталоги > Либо перейти на initramfs (примерно то же самое, но вместо pivot_root > выполняется chroot, и хорошо бы зачистить за собой initramfs, чтобы не > занимать память). попробую. как зачищать? это есть смысл делать только для initramfs? -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 11:38 ` Eugene Prokopiev @ 2006-03-10 12:38 ` Sergey Vlasov 2006-03-10 19:50 ` Eugene Prokopiev 2006-03-13 12:55 ` Eugene Prokopiev 1 sibling, 1 reply; 12+ messages in thread From: Sergey Vlasov @ 2006-03-10 12:38 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 1619 bytes --] On Fri, Mar 10, 2006 at 02:38:54PM +0300, Eugene Prokopiev wrote: > > Если оставлять старый механизм работы с initrd, нужно определить > > major/minor нужного устройства в /dev, созданного утилитами lvm, и > > записать его в /proc/sys/kernel/real-root-dev. > > да, работает :) > > > Можно перейти на новый механизм обработки initrd (root=/dev/ram0, linuxrc > > запускается как init (pid==1) и должен смонтировать реальный root, после > > чего выполнить pivot_root туда и exec /sbin/init). > > в /root смонтирован настоящий /root (из /dev/system/root) > > пишу > > pivot_root /root /var/root > или > pivot_root /root /loopfs > > мне заявляют Device or resource busy в первом случае и Invalid argument > во втором. В /var/root и /loopfs ничего нет - это пустые каталоги Второй из каталогов должен быть на новом корне. В man pivot_root написано, как правильно его применять, чтобы это работало на всех ядрах. > > Либо перейти на initramfs (примерно то же самое, но вместо pivot_root > > выполняется chroot, и хорошо бы зачистить за собой initramfs, чтобы не > > занимать память). > > попробую. > > как зачищать? Чем-то типа http://kernel.org/git/?p=libs/klibc/klibc.git;a=tree;h=2fada3e78ac03e588155bd40f31b672b93e52daa;hb=7a3728f1058a791118628ecc372fd3155ee3ec5e;f=usr/kinit/run-init > это есть смысл делать только для initramfs? Да (в остальных способах initrd либо отмонтируется и уничтожается самим ядром, либо перемонтируется в каталог на реальном корне, откуда его можно потом отмонтировать и сделать blockdev --flushbufs /dev/ram0 в стартовых скриптах). [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 12:38 ` Sergey Vlasov @ 2006-03-10 19:50 ` Eugene Prokopiev 0 siblings, 0 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-10 19:50 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list >>>Можно перейти на новый механизм обработки initrd (root=/dev/ram0, linuxrc >>>запускается как init (pid==1) и должен смонтировать реальный root, после >>>чего выполнить pivot_root туда и exec /sbin/init). >> >>в /root смонтирован настоящий /root (из /dev/system/root) >> >>пишу >> >>pivot_root /root /var/root >>или >>pivot_root /root /loopfs >> >>мне заявляют Device or resource busy в первом случае и Invalid argument >>во втором. В /var/root и /loopfs ничего нет - это пустые каталоги > > > Второй из каталогов должен быть на новом корне. > > В man pivot_root написано, как правильно его применять, чтобы это работало > на всех ядрах. Если вручную выполнить: /bin/mount -t ext3 /dev/system/root /root /bin/cd /root /bin/pivot_root . old.root exec /sbin/init то я получу: Usage: init 0123456sSQqabcUu Kernel panic - not syncing: Attempted to kill init! То же самое, вписанное в /sbin/init внутри initrd что-то делает, но что - разобрать невозможно, строчки бегут по экрану слишком быстро ;) exec /sbin/init 5 перед Kernel panic вместо Usage выводит: init: timeout opening/writing control channel /dev/initctl cat /dev/initctl вместо exec /sbin/init приводит к зависанию приглашения bash: на Ctrl+C и Ctrl+Z он не реагирует, но по Enter добавляет в конец экрана новую пустую строку :( -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-10 11:38 ` Eugene Prokopiev 2006-03-10 12:38 ` Sergey Vlasov @ 2006-03-13 12:55 ` Eugene Prokopiev 2006-03-13 13:06 ` Eugene Prokopiev 2006-03-13 13:45 ` Sergey Vlasov 1 sibling, 2 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-13 12:55 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list Eugene Prokopiev пишет: >>Если оставлять старый механизм работы с initrd, нужно определить >>major/minor нужного устройства в /dev, созданного утилитами lvm, и >>записать его в /proc/sys/kernel/real-root-dev. > > > да, работает :) поскольку другие варианты завести не могу, буду пробовать самый кривой ;) еще вопрос: в /proc/cmdline я в числе прочего вижу root=3a00. Что это такое, и можно ли как-нибудь, зная эту магическую цифру, добраться до того значения, которое в lilo.conf было указано первоначально (это было /dev/system/root)? если этого сделать никак нельзя, как правильнее передать /dev/system/root в linuxrc иначе? append="myroot=/dev/system/root" ? -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-13 12:55 ` Eugene Prokopiev @ 2006-03-13 13:06 ` Eugene Prokopiev 2006-03-13 13:45 ` Sergey Vlasov 1 sibling, 0 replies; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-13 13:06 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list да, строка "/dev/system/root" мне нужна, чтобы по ней добыть /dev/mapper/mapper-root и его major/minor. вопрос остается в силе. -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-13 12:55 ` Eugene Prokopiev 2006-03-13 13:06 ` Eugene Prokopiev @ 2006-03-13 13:45 ` Sergey Vlasov 2006-03-13 15:03 ` Eugene Prokopiev 1 sibling, 1 reply; 12+ messages in thread From: Sergey Vlasov @ 2006-03-13 13:45 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 1040 bytes --] On Mon, Mar 13, 2006 at 03:55:20PM +0300, Eugene Prokopiev wrote: > Eugene Prokopiev пишет: > >>Если оставлять старый механизм работы с initrd, нужно определить > >>major/minor нужного устройства в /dev, созданного утилитами lvm, и > >>записать его в /proc/sys/kernel/real-root-dev. > > > > > > да, работает :) > > поскольку другие варианты завести не могу, буду пробовать самый кривой ;) > > еще вопрос: в /proc/cmdline я в числе прочего вижу root=3a00. Что это > такое, и можно ли как-нибудь, зная эту магическую цифру, добраться до > того значения, которое в lilo.conf было указано первоначально (это было > /dev/system/root)? Уже никак - lilo не умеет передавать параметр root в виде строки. Исправляется переходом на grub ;) > если этого сделать никак нельзя, как правильнее передать > /dev/system/root в linuxrc иначе? append="myroot=/dev/system/root" ? Вроде бы как-то так и делают (можно ещё посмотреть по другим дистрибутивам; при использовании pivot_root менять имя приходится в любом случае). [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-13 13:45 ` Sergey Vlasov @ 2006-03-13 15:03 ` Eugene Prokopiev 2006-03-13 15:22 ` Sergey Vlasov 0 siblings, 1 reply; 12+ messages in thread From: Eugene Prokopiev @ 2006-03-13 15:03 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list Sergey Vlasov пишет: > On Mon, Mar 13, 2006 at 03:55:20PM +0300, Eugene Prokopiev wrote: > >>Eugene Prokopiev пишет: >> >>>>Если оставлять старый механизм работы с initrd, нужно определить >>>>major/minor нужного устройства в /dev, созданного утилитами lvm, и >>>>записать его в /proc/sys/kernel/real-root-dev. >>> >>> >>>да, работает :) >> >>поскольку другие варианты завести не могу, буду пробовать самый кривой ;) >> >>еще вопрос: в /proc/cmdline я в числе прочего вижу root=3a00. Что это >>такое, и можно ли как-нибудь, зная эту магическую цифру, добраться до >>того значения, которое в lilo.conf было указано первоначально (это было >>/dev/system/root)? > > > Уже никак - lilo не умеет передавать параметр root в виде строки. > Исправляется переходом на grub ;) Похоже, что не исправляется - grub отчего-то и с ядром 2.4.26 не управляется :( Вот рабочий конфиг lilo: boot=/dev/hda map=/boot/map install=/boot/boot-bmp.b vga=0x0317 default=linux ramdisk=8192 prompt timeout=50 image=/boot/vmlinuz-up label=linux root=/dev/system/root initrd=/boot/initrd-up.img append=" splash=off" read-only other=/dev/hda1 label=windows table=/dev/hda вот его grub-аналог: timeout 15 color blue/black cyan/blue default 0 title linux-up kernel (hd0,2)/vmlinuz-up root=/dev/system/root ramdisk=8192 splash=off vga=0x0317 initrd (hd0,2)/initrd-up.img title windows root (hd0,0) makeactive chainloader +1 Диск размечен так: # fdisk -l /dev/hda Disk /dev/hda: 40.0 GB, 40007761920 bytes 255 heads, 63 sectors/track, 4864 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 1147 9213246 7 HPFS/NTFS /dev/hda2 1148 2422 10241437+ c W95 FAT32 (LBA) /dev/hda3 2423 2428 48195 83 Linux /dev/hda4 2429 4864 19567170 5 Extended /dev/hda5 2429 2550 979933+ 82 Linux swap /dev/hda6 2551 4864 18587173+ 8e Linux LVM При загрузке с помощью grub уже после отработки /linuxrc из initrd я вижу: VFS: Cannot open root device "system/root" or 00:00, retying in 1 s, ... VFS: Cannot open root device "system/root" or 00:00 Please append a correct "root=" boot option Kernel panic: VFS: Unable to mount root fs on 00:00 С lilo этих проблем нет. Может и grub можно научить не превращать /dev/system/root в system/root? -- С уважением, Прокопьев Евгений ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 2006-03-13 15:03 ` Eugene Prokopiev @ 2006-03-13 15:22 ` Sergey Vlasov 0 siblings, 0 replies; 12+ messages in thread From: Sergey Vlasov @ 2006-03-13 15:22 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 1354 bytes --] On Mon, Mar 13, 2006 at 06:03:30PM +0300, Eugene Prokopiev wrote: > title linux-up > kernel (hd0,2)/vmlinuz-up root=/dev/system/root ramdisk=8192 splash=off > vga=0x0317 > initrd (hd0,2)/initrd-up.img А что в этом initrd определяет номер устройства, соответствующий /dev/system/root ? > При загрузке с помощью grub уже после отработки /linuxrc из initrd я вижу: > > VFS: Cannot open root device "system/root" or 00:00, retying in 1 s, > ... > VFS: Cannot open root device "system/root" or 00:00 > Please append a correct "root=" boot option > Kernel panic: VFS: Unable to mount root fs on 00:00 > > С lilo этих проблем нет. Может и grub можно научить не превращать > /dev/system/root в system/root? grub ничего ни во что не превращает - /dev/ отрезается уже в самом ядре. Но в данном случае до этого кода ядро доходить просто не должно - /linuxrc в initrd должен определить major:minor и записать его в real-root-dev. Видимо, имеющийся там сейчас код этого не делает, но в случае lilo это срабатывало из-за того, что lilo передаёт уже готовые major:minor (впрочем, это всё равно неправильно, поскольку minor для lvm в любом случае назначаются динамически, и не факт, что /dev/system/root, поднятый lvm в initrd, окажется на том же minor, что и /dev/system/root, существовавший в системе на момент запуска /sbin/lilo). [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2006-03-13 15:22 UTC | newest] Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2006-03-09 6:03 [sisyphus] LVM в initrd для ядра 2.6.14-std26-up-alt5 Eugene Prokopiev 2006-03-10 9:14 ` Eugene Prokopiev 2006-03-10 9:50 ` Eugene Prokopiev 2006-03-10 9:58 ` Sergey Vlasov 2006-03-10 11:38 ` Eugene Prokopiev 2006-03-10 12:38 ` Sergey Vlasov 2006-03-10 19:50 ` Eugene Prokopiev 2006-03-13 12:55 ` Eugene Prokopiev 2006-03-13 13:06 ` Eugene Prokopiev 2006-03-13 13:45 ` Sergey Vlasov 2006-03-13 15:03 ` Eugene Prokopiev 2006-03-13 15:22 ` Sergey Vlasov
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git