Конфигурирование и компиляция ядра (конфиги постить только в аттаче!!!)

Готовые решения для многих вопросов, которые очень часто задаются снова и снова.

Модератор: Модераторы разделов

Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin

Re: Конфигурирование и компиляция ядра

Сообщение Bolverk »

1) Как правило, конфиг копируется в /boot при установке ядра. Опять таки, как
правило он называется config-$VERSION
2) Есть такая опция при конфигурации, когда конфиг сохраняется в ядре и
доступен в гзипнутом виде в /proc/config.gz. Но ей редко кто пользуется, кто
собирает свое ядро, т.к. по большому счету она нафиг не нужна.
Спасибо сказали:

Аватара пользователя
agent-mega
Сообщения: 505
Статус: Автономный модуль

Re: Конфигурирование и компиляция ядра

Сообщение agent-mega »

Ок, вопрос следующий: после сборки ядра в корне не появляется файл initrd.img-xxx. Вообще. При make modules было какое-то сообщение типа "Not resolved symbols in module blah-blah.o". Ядро грузится, всё нормально, но вот lsmod выдаёт пустоту, естественно. Потому что в строке загрузчика initrd= мне просто нечего прописать.
blah-blah.o - сторонний модуль, впаянный через неофициальный патч.
initrd и ramdisk при конфигурировании были включены (Y).

Может ли это быть из-за ошибки в модуле (патче)?
Может ли это быть из-за проблем с зависимостями между модулями (опциями конфигурирования)?
DEBIAN & DEBIAN-BASED ONLY

Всё относительно. Объективности не существует.
Спасибо сказали:

justuser
Сообщения: 48

Re: Конфигурирование и компиляция ядра

Сообщение justuser »

(agent-mega @ Воскресенье, 12 Июня 2005, 17:40) писал(а):При make modules было какое-то сообщение типа "Not resolved symbols in module blah-blah.o".
Может ли это быть из-за ошибки в модуле (патче)?
да
Может ли это быть из-за проблем с зависимостями между модулями (опциями конфигурирования)?
да
Спасибо сказали:

Pilot
Сообщения: 13

Re: Конфигурирование и компиляция ядра

Сообщение Pilot »

Привет всем!!
Вот скачал свежее ядро, 2.6.12. Отконфигурировал, но во время make выскакивает 2 ворнинга Вот часть лога:
CC kernel/pid.o
CC kernel/rcupdate.o
CC kernel/intermodule.o
kernel/intermodule.c:179: warning: `inter_module_register' is deprecated (declared at kernel/intermodule.c:3Cool
kernel/intermodule.c:180: warning: `inter_module_unregister' is deprecated (declared at kernel/intermodule.c:79)
kernel/intermodule.c:182: warning: `inter_module_put' is deprecated (declared at kernel/intermodule.c:160)
CC kernel/extable.o
CC kernel/params.o
CC kernel/posix-timers.o
CC kernel/kthread.o
CC kernel/wait.o
CC kernel/kfifo.o
CC kernel/sys_ni.o
CC kernel/posix-cpu-timers.o
CC kernel/futex.o
CC kernel/dma.o
CC kernel/uid16.o
CC kernel/module.o
CC kernel/kallsyms.o
CC kernel/irq/handle.o
CC kernel/irq/manage.o
CC kernel/irq/spurious.o
CC kernel/irq/autoprobe.o
CC kernel/irq/proc.o
LD kernel/irq/built-in.o
CC kernel/power/main.o
CC kernel/power/process.o
CC kernel/power/console.o
CC kernel/power/pm.o
kernel/power/pm.c:259: warning: `pm_register' is deprecated (declared at kernel/power/pm.c:62)
kernel/power/pm.c:260: warning: `pm_unregister' is deprecated (declared at kernel/power/pm.c:86)
kernel/power/pm.c:261: warning: `pm_unregister_all' is deprecated (declared at kernel/power/pm.c:115)
kernel/power/pm.c:262: warning: `pm_send_all' is deprecated (declared at kernel/power/pm.c:234)
LD kernel/power/built-in.o
CC kernel/audit.o
CC kernel/auditsc.o
CC kernel/ksysfs.o
LD kernel/built-in.o

Я решил всё таки попробовать загрузится, но процесс завис на
initialixing udev dunamic device directory
Подскажите пожалуйста, как исправить эти ошибки (в каком пункте опции включить\выключить), и из за них ли не загружается система.
Заранее благодарен!! :)
Спасибо сказали:

Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin

Re: Конфигурирование и компиляция ядра

Сообщение Bolverk »

warnings тут не причём, это скорее тебе надо про настройку udev читать.
Спасибо сказали:

Аватара пользователя
Avdonin
Сообщения: 54
ОС: Debian Etch 4.0

Re: Конфигурирование и компиляция ядра

Сообщение Avdonin »

Vsem privet. Skaju chestno, iz vsey temi ya prochital lish' 5 stranits; u mena takoy vopros: ya kompilu yadro ono poluchaetsa razmerom ~ 2.9 mb i pri pereconfigurirovanii lilo vidaetsa takoy text (za tochnost' ne otvechayu): ''error: kernel is too big.'' Kak reshit' etu problemu. OS i mashina v podpisi.(slack)
"Папа, я, когда вырасту, тоже стану рутом!" ©
Спасибо сказали:

Аватара пользователя
Maitreya
Сообщения: 87
ОС: Arch, Debian

Re: Конфигурирование и компиляция ядра

Сообщение Maitreya »

для avdonin:
Скорее всего ты делаешь ядро не модульным, а монолитным, и включаешь в него всё подряд, попробуй сделать ядро модульным.


Maitreya добавил в 01.07.2005 22:28

Здравствуйте все.
У меня такой вопрос -
Я где-то читал, что для правильной компиляции ядра надо в /usr/include делать ссылки на asm и linux исходников ядра, скажите зачем это делается?
К чему стадам дары свободы? Их должно резать или стричь.
Спасибо сказали:

Аватара пользователя
Avdonin
Сообщения: 54
ОС: Debian Etch 4.0

Re: Конфигурирование и компиляция ядра

Сообщение Avdonin »

Vobshem ya sobral i ustanovil yadro 2.4.31. Problema vot kakaya: lilo udachno zagrujaet yadro, no srazu posle lilo net isobrajenija v konsoli(hota sistema v tselom rabotaet: shurshit hard disk i pri najatii ctrl+alt+del proishodit reboot), vopros: gde ya mog naportachit'?
<ADDED>:
Vkluchil mozgi: delo bilo v video rjimah, do etogo ya polzovalsa 1024x768 64bit..
Yadro klassno pashet, ne to chto po umolchniyu!
"Папа, я, когда вырасту, тоже стану рутом!" ©
Спасибо сказали:

Аватара пользователя
lexus3d
Сообщения: 172

Re: Конфигурирование и компиляция ядра

Сообщение lexus3d »

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

Код: Выделить всё

hda: task_no_data_intr: status=0x51 {DriveReady SeekComplete Error}
hda: task_no_data_intr: error=0x04 {DriveStatus Error}


есть подозрения что это связано с тем что линукс стоит на виртуалке, а ошибка вылетает из-за того что при выключении он пытаеться выключить и винт?
-----
прошу подтвердить мои догатки. :rolleyes:
Gentoo 2007.0 / 2.6.19-r5 / Gnome
"Всё в этом мире относительно..." (с)
Спасибо сказали:

Mixer[MsK]
Сообщения: 315
ОС: Gentoo Linux

Re: Конфигурирование и компиляция ядра

Сообщение Mixer[MsK] »

Рекомпильнул ядро(стояло дефолтное дебовское 2.6.8-2) , поставил 2.6.12. Убрал все модули внутрь ядра, отрезал ненужное(машинка слабая). После ребута не поднялся pppoe.
На старом ядре делал lsmod - там болтается некий slhc, от которого зависит ppp_generic. Но найти в конфиге(и в конфигураторе тоже) это чудо так и не смог. Не подскажите ли, что это за зверь и где его включать(или хотя бы как это расшифровывается)?
Phenom II X4 945 & 2 GB DDR3 > Gentoo 2008.0 > 2.6.30-gentoo-r5 > KDE 4.3.1
Asus eee 1003HAG > eeebuntu 3 Standart(Ubuntu 9.04) > 2.6.28-14 > GNOME 2.26.1
Спасибо сказали:

Аватара пользователя
ddc
Бывший модератор
Сообщения: 3535
Статус: OpenBSD-compatible
ОС: OpenBSD -current

Re: Конфигурирование и компиляция ядра

Сообщение ddc »

Для Mixer[MsK]:

Код: Выделить всё

zcat /proc/config.gz|grep "*slhc*"
Спасибо сказали:

Аватара пользователя
clx
Сообщения: 3121
Статус: Think Different !
ОС: Mac OS X

Re: Конфигурирование и компиляция ядра

Сообщение clx »

Для czarker:
/proc/config.gz будет в том случае, если в ядре включена эта функция, иначе не будет..
iMac 20" Core Duo.
Спасибо сказали:

Аватара пользователя
ddc
Бывший модератор
Сообщения: 3535
Статус: OpenBSD-compatible
ОС: OpenBSD -current

Re: Конфигурирование и компиляция ядра

Сообщение ddc »

(Linux Loadable Kernel Module HOWTO) писал(а):14.4.2. slhc: SLHC compressor for PPP


czarker добавил в 04.08.2005 15:27

Для clx:
Ну тогда "grep '*slhc*' /usr/src/linux/.config"...
Спасибо сказали:

Аватара пользователя
flook
Сообщения: 585
Статус: Просто flook

Re: Конфигурирование и компиляция ядра

Сообщение flook »

Лучше grep -i т.к. конфиг опции в заглавных буквах...
В каждом из нас спит гений... и с каждым днем все крепче...
Спасибо сказали:

Mixer[MsK]
Сообщения: 315
ОС: Gentoo Linux

Re: Конфигурирование и компиляция ядра

Сообщение Mixer[MsK] »

(czarker @ Четверг, 04 Августа 2005, 15:27) писал(а):
(Linux Loadable Kernel Module HOWTO) писал(а):14.4.2. slhc: SLHC compressor for PPP


czarker добавил в 04.08.2005 15:27

Для clx:
Ну тогда "grep '*slhc*' /usr/src/linux/.config"...



Если бы всё было так просто - я бы не спрашивал :) Не нашел он ничего.
Phenom II X4 945 & 2 GB DDR3 > Gentoo 2008.0 > 2.6.30-gentoo-r5 > KDE 4.3.1
Asus eee 1003HAG > eeebuntu 3 Standart(Ubuntu 9.04) > 2.6.28-14 > GNOME 2.26.1
Спасибо сказали:

Аватара пользователя
TuLiss
Сообщения: 1611
Статус: 01100
ОС: Gentoo,Ubuntu,MacOS X

Re: Конфигурирование и компиляция ядра

Сообщение TuLiss »

13.4.2. slhc: SLHC compressor for PPP

This module contains routines to compress and uncompress tcp packets (for transmission over low speed serial lines).

These routines are required by PPP (also ISDN-PP) and SLIP protocols, and are used by the LKMs that implement those protocols.

Example:

modprobe slhc

There are no module parameters.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Спасибо сказали:

Аватара пользователя
carlito
Сообщения: 19
ОС: openSUSE 10.2

Re: Конфигурирование и компиляция ядра

Сообщение carlito »

SuSE c ядром 2.6.11.4-20a и initrd. Ставлю kernel 2.6.12.3 без initrd, встраивая все требуемые модули в ядро. Запускается успешно, но автомонтирование для CDROM и USB-STORAGE вырубает, аргументируя тем, что мол отсутствуют упоминания в fstab... а это чушь, он всегда там где он должен быть - /etc c неизменным содержимым! Запускаю ОС с родным ядром - красота, только грузится в 3 раза дольше... В добавок проверял какие модули требуются по /proc/modules - все четко! Что делать? {(с) Чернышевский}
Спасибо, Джерри!
Спасибо сказали:

printf

Re: Конфигурирование и компиляция ядра

Сообщение printf »

Вобщем первую неделю я активно эксперементировал, раз пять собирал ядро из исходников, входящих в дистрибутив. Всё собиралось нормально, только в последний раз звук не работал.
А вчера я снова захотел пересобрать ядро. Натыкал много всего, скомпилил, а оно не грузится. Дальнейшие попытки ни к чему не приводили (разве что вместо зависания был ребут).
Но у меня сохранились настройки с тех пор, когда ядро у меня собиралось рабочее. Я их загрузил, скомпилил, а ядро опять оказалось мёртворождённым.
Что это такое? Может нужно что-то откуда-о удалить или поменять?

ЗЫ. старое ядро с новыми модулями грузится (правда без звука :) ). Ядро у мну 2.4.29.
Делаю вот что:
make menuconfig
make bzImage
make modules
make modules_install

Потом гружу новое ядро (в LILO прописал).
Спасибо сказали:

Mixer[MsK]
Сообщения: 315
ОС: Gentoo Linux

Re: Конфигурирование и компиляция ядра

Сообщение Mixer[MsK] »

В чём выражается неработоспособность ядра?Kernel Panic?Зависание?
Phenom II X4 945 & 2 GB DDR3 > Gentoo 2008.0 > 2.6.30-gentoo-r5 > KDE 4.3.1
Asus eee 1003HAG > eeebuntu 3 Standart(Ubuntu 9.04) > 2.6.28-14 > GNOME 2.26.1
Спасибо сказали:

printf

Re: Конфигурирование и компиляция ядра

Сообщение printf »

В чём выражается неработоспособность ядра?Kernel Panic?Зависание?

Я ж говорю: в самом начале загрузки ядра (первые 2 секунды) машина либо виснет, либо ребут - зависит от конкретной сборки.
Спасибо сказали:

Аватара пользователя
ddc
Бывший модератор
Сообщения: 3535
Статус: OpenBSD-compatible
ОС: OpenBSD -current

Re: Конфигурирование и компиляция ядра

Сообщение ddc »

Для printf:
А "make deps"? (Или как это называется? В общем, make help.)
Кроме того, можно попробовать снова после "make clean". А можно даже "make mrproper"...
Кстати, архитектуру поменял?
Спасибо сказали:

Аватара пользователя
pipll
Сообщения: 234
Статус: Программист
ОС: Slackware 12

Re: Конфигурирование и компиляция ядра

Сообщение pipll »

Я вот так делаю (правда ядро 2.6.х)

Код: Выделить всё

make mrproper
make bzImage modules
make modules_install
make install


pipll добавил в 10.08.2005 07:54

А в 2.4.х делал:

Код: Выделить всё

make deps
make clean
make bzImage modules
make modules_install
make install
Спасибо сказали:

Аватара пользователя
ddc
Бывший модератор
Сообщения: 3535
Статус: OpenBSD-compatible
ОС: OpenBSD -current

Re: Конфигурирование и компиляция ядра

Сообщение ddc »

(pipll @ Среда, 10 Августа 2005, 6:55) писал(а):Я вот так делаю (правда ядро 2.6.х)

Код: Выделить всё

make mrproper
make bzImage modules
make modules_install
make install
Ну и весёлое же у тебя ядро, если ты делаешь mrproper и после этого сразу make bzImage...
Спасибо сказали:

Аватара пользователя
pipll
Сообщения: 234
Статус: Программист
ОС: Slackware 12

Re: Конфигурирование и компиляция ядра

Сообщение pipll »

(czarker @ Среда, 10 Августа 2005, 8:00) писал(а):
(pipll @ Среда, 10 Августа 2005, 6:55) писал(а):Я вот так делаю (правда ядро 2.6.х)

Код: Выделить всё

make mrproper
make bzImage modules
make modules_install
make install
Ну и весёлое же у тебя ядро, если ты делаешь mrproper и после этого сразу make bzImage...


А что такого? Ах да... про make oldconfig (make menuconfig) забыл написать :devil_2:
Спасибо сказали:

Аватара пользователя
William Henry Gates
Сообщения: 493
Статус: ё-моё!!
ОС: jaunty

Re: Конфигурирование и компиляция ядра

Сообщение William Henry Gates »

вопрос элементарный. почитав инструкцию по сборке ядра в /usr/src/linux/README, вы легко узнаете, что ядро 2.6.x собирается так:

$ make menuconfig
$ make
# make install
# make modules_install.
You are registered as user #384224 with the Linux Counter. jaunty jackalope & aspire 3650
Спасибо сказали:

Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux

Re: Конфигурирование и компиляция ядра

Сообщение polachok »

а 2.4 если мне не изменяет память:
mkae mrproper; make clean ; make menuconfig ; make && make modules && make install && make modules_install
И немедленно выпил.
Спасибо сказали:

Аватара пользователя
Fargal
Сообщения: 50
ОС: archlinux/debian/ubuntu

Re: Конфигурирование и компиляция ядра

Сообщение Fargal »

(czarker @ Среда, 10 Августа 2005, 7:00) писал(а):Ну и весёлое же у тебя ядро, если ты делаешь mrproper и после этого сразу make bzImage...

Оно кстати даже работает... я нное количество дней назад как раз так и собрал. а потом смотрю что звука, и сети нету думаю что не так сделол то.... впрочем вру сеть была. но качалось медленно все. очень.
Всегда хочется большого и чистого, но получается маленькое и грязное...
Спасибо сказали:

Аватара пользователя
pipll
Сообщения: 234
Статус: Программист
ОС: Slackware 12

Re: Конфигурирование и компиляция ядра

Сообщение pipll »

(polachok @ Среда, 10 Августа 2005, 18:26) писал(а):а 2.4 если мне не изменяет память:
mkae mrproper; make clean ; make menuconfig ; make && make modules && make install && make modules_install

Там еще и make deps надо было... Ну так, как я писал (я тогда, правда, про make mrproper не знал :lol: )

Код: Выделить всё

make menuconfig
make deps
make clean
make bzImage
make modules
make modules_install
make install

но можно и по другому - и просто make и male lilo и т.д.
Спасибо сказали:

Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux

Re: Конфигурирование и компиляция ядра

Сообщение polachok »

ага и make clean уничтожит результаты make deps
И немедленно выпил.
Спасибо сказали:

Аватара пользователя
pipll
Сообщения: 234
Статус: Программист
ОС: Slackware 12

Re: Конфигурирование и компиляция ядра

Сообщение pipll »

(polachok @ Среда, 10 Августа 2005, 20:06) писал(а):ага и make clean уничтожит результаты make deps

А вот и не уничтожает! Ядро собирается на ура! Во всех статьях так пишется (сейчас еще раз просмотрел свой текстовый архив)
ЗЫ. Правильно make dep, а не make deps (писал на память, а вот сейчас правильно посмотрел)
Спасибо сказали: