Проблемы с ядром после пересборки
Всем доброго времени суток господа. Проблема такова, что после пересборки ядра у меня вечная ошибка:
Block device /dev/sda3 is not a valid root device
Сould not find the root block device in.
Система свежая, использовал при установке genkernel all без изменений. После решил пересобрать и тут понеслось...Ядро использую genkernel и в ядре я только отключил поддержку амд, поменял тип процессора, и увеличил тайминг ядра а также отключил виртуализацию. В файловую систему не лез.
fstab:
/dev/sda1 /boot ext3 noatime 1 2
/dev/sda3 / ext3 noatime 0 1
/dev/sda2 none swap sw 0 0
/dev/sda4 /home ext3 noatime 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
/dev/fd0 /mnt/floppy auto noauto 0 0
grub:
title Gentoo Linux 3.5.7
root (hd0,0)
kernel /boot/kernel-genkernel-x86_64-3.5.7-gentoo root=/dev/ram0 real_root=/dev/sda3 init=/linuxrc rootfstype=ext4 udev
initrd /boot/initramfs-genkernel-x86_64-3.5.7-gentoo
title Gentoo Rem (Пересобранное)
root (hd0,0)
kernel /boot/vmlinuz-3.5.7-gentoo root=/dev/ram0 real_root=/dev/sda3 init=/linuxrc rootfstype=ext4 udev
initrd /boot/initramfs-genkernel-x86_64-3.5.7-gentoo
В чем моя проблема господа?
- Для комментирования войдите или зарегистрируйтесь
Ну, насколько я вижу, вы
Ну, насколько я вижу, вы используете один initramfs для обоих образов ядра, а ядро с изменённым конфигом собирали в ручную, 'make bzImage, make modules, make install, make modules_install'. Скорее всего поддержка файловой системы корневого раздела была собрана модулем, так что вам нужно собирать initramfs под второй образ ядра.
Кроме того у вас сейчасв директории /lib/modules/3.5.7-gentoo находятся модули, собранные для второго образа ядра, в перемешку с частью модулей от первого образа.
.
CONFIG_LOCALVERSION
в помощь.:wq
--
Live free or die
Ну и зачем ты мне это
Ну и зачем ты мне это написал, про CONFIG_LOCALVERSION я в курсе. Пиши об этом сразу ТС. В моём сообщении я лишь указал ТС на прблему, которую он себе создал.
Собирал ядро этими
Собирал ядро этими командами:
make prepare && make && make modules && make modules_install && make install
то есть по сути мне нужно:
cd /usr/src/linux
genkernel ramdisk
а с модулями что делать я так и не понял..
При сборке ядра модули
При сборке ядра модули компонуются с учётом их работы (згрузки) с определённой версией ядра (образом ядра), директория, в которую они помещаются определяется исходя из версии ядра и параметра 'EXTRAVERSION', указанного в файле Makefile в директории с исходными кодами ядра и параметра 'CONFIG_LOCALVERSIONS' в конфигурационном файле ядра, получается вот такое имя: /lib/modules-$version-$extraversion-$localversion
Первый образ ядра /boot/kernel-genkernel-x86_64-3.5.7-gentoo у вас был собран с помощью genkernel, модули были помещены в директорию /lib/modules/3.5.7-gentoo. Второй образ ядра /boot/vmlinuz-3.5.7-gentoo вы собрали вручную указанными командыми, если вы в файле конфигурации ядра не указали параметр 'CONFIG_LOCALVERSION', как уточнил Anarchist, то директория для модулей ядра собранных в той же директории будет такойже (/lib/modules/3.5.7-gentoo), как следствие почти все модули будут перезаписаны, но они будут работать только со вторым образом ядра /boot/vmlinuz-3.5.7-gentoo, даже с учётом того, что первыйобраз ядра тойже версии и собран с почти такимиже опциями, есть дополнительная опция, которая разрешает загрузку модулей собранных под другое ядро, но она по умолчанию отключена.
Так что вам сейчас нужно сделать копию (или переименовать) старого initramfs, модули в котором собраны под первый образ ядра /boot/kernel-genkernel-x86_64-3.5.7-gentoo и собрать новый initramfs под образ ядра, который вы собрали в ручную (/boot/vmlinuz-3.5.7-gentoo) и попробовать загрузиться.
достаточно просто 'genkernel ramdisk', только не забудьте сохранить образ initramfs под старый образ ядра, он вам пригодится в случае необходимости загрущки со старым ядром.
А если отключить initrd в
А если отключить initrd в опциях ядра и просто в груб указать только ядро будет ли нормально работать?
У вал драйвер файловой
У ваc драйвер файловой системы собран модулем, скорее всего.
Покажите:
Проблема не в наличии поддержки initranfs, а в том как собрано ядро. К тому же вы поняли моё предыдущее сообщение или нет ?
да понял, все работает
да понял, все работает спасибо :)
А файловую систему я запелил в ядро.
Какие ядро лучше использовать для игрового проекта, genkernel или pf-kernel?
То которое сможете
То которое сможете настроить.
genkernel и pf-kernel сравнивать совсем не корректно.(разберитесь, что есть что)
запелилУехало в аффтара за
Уехало в аффтара за общий стиль
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)