LINUX.ORG.RU
ФорумAdmin

Компиляция ядра


0

0

Хочу проделать сабж и постоянно натыкаюсь на неудачи, то есть неудачи не в сабжевой операции, а в инсталляции нового.

делаю

make xxxconfig

make dep

make clean

make bzImage

Пытаюсь создать безмодульное ядро поэтому модули не компилирую.. в лило.конфе пишу следующее:

image=/boot/mylinuz

label=mylinux

root=/dev/hda5

read-only

При попытке загрузится получаю зависание после фразы "загружается кернел" и пять точек. (то есть проблема не в лило, а в кернеле). Справедливо предполагая, что наверно неверные параметры при компиляции указал проделал несколько попыток. Пробовал откомпилировать ядро с конфигурацией после

make mrproper

однако оно тоже виснет (оно с модулями - это понятно)

Так как ни разу из большого количества попыток у меня не получилось, то я засомневался и перечитал кучу how-to, но вроде все делаю правильно... (правда большинство how-to примерно двух-летней давности, но насколько я знаю мало что тут меняется радикально)

И все-таки вопрос меня гложет ;)

Если кернел начал грузиться и завис - это больше проблемы кернела или правильности его инсталляции ?

и в догонку: если компилируем модульное ядро, и допустим у нас стоит сейчас тоже модульное, то когда мы говорим make modules_install, то модули нового не затирают модули текущего ? Если да, то как тестировать модульное ?

anonymous

Да и в догонку еще вопрос: ядро, установленное с моего дистрибутива использует при загрузке рам-диск, я поглядел АСП и мандрейк его пользуют, может это сейчас обязательным стало?

anonymous
()

1) А ядро где берем ?

Правильный ответ - в <src-dir>/linux/arch/i386/boot/bzImage, где <src-dir> - директория, где был файл linux-2.x.y.tar.bz2 ( или .tar.gz), неправильный - все остальное ( распространенная ошибка - берут файл <src-dir>/linux/vmlinux , ХОТЯ в doc'-ах написано, что так нельзя !!!)

2) перекомпилив ядро, неплохо бы заменить boot-sector и map

( хотя иногда все проходит гладко и без этого ), вставить в lilo.conf

install=/boot/boot-menu.b

map=/boot/map

и после этого уже говорить /sbin/lilo

Где лежат все это- не помню, я пользуюсь Debian'-овским kernel-package, он сам все это делает

По поводу модулей: модули старого ядра надо перенести в какую-нибудь другую директорию - иначе их затрут новые модули ( kernel-package, увидев, что /lib/modules/_kernel_version не пуста, предлагает сохранить их в другом месте )

Я тоже сталкивался с таким ( когда сам первый раз ядро компилил :)), хотя ядро было собрано правильно!

Если поддержка ext3 включена в ядро ( _не_ в виде модуля ), то включать поддержку ramdisk не обязательно

anonymous
()

moshet yadro slishkom bolshoye? u menia bivalo takoye :))))) ranshe

d3M0n
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.