|
Компьютерный форум OSzone.net » Linux и FreeBSD » Общий по Linux » Перекомпиляция ядра... |
|
Перекомпиляция ядра...
|
Пользователь Сообщения: 69 |
Профиль | Отправить PM | Цитировать Привет народ. Помогите разобраться. Вот решил пересобрать ядро, повыкидывать оттуда ненужные компоненты и т.д., короче говоря занялся оптимизацией. Дистрибутив ASP 9.2 Express. Значит делаю make menuconfig, настраиваю, сохраняю конфигурацию, делаю make dep, make bzImage, make modules, make modules_install
Прописываю в grub.conf ссылку на новое ядро, гружусь... И тут начинают вылазить сюрпризы. Во-первых при загрузке ругается на то что не удается загрузить usbcore.o, input.o и parport.o. Пишет кучу строк типа: путь_к_модулям/usbcore: undefined symbols тра-ля-ля и т.д. Остальные службы загружаются нормально, но после того когда логинюсь в систему, делаю lsmod и оказывается что никаких модулей-то и не загружено - пусто. Пытаюсь сделать ручками например insmod путь_к_модулям/input.o. Но ругается как и при загрузке типа путь_к_модулям/input: undefined symbols тра-ля-ля и т.д. и кучу таких строк. В чем тут может быть дело??? Вот кусок из /var/log/messages Jul 18 17:57:13 fantom insmod: /lib/modules/2.4.22-1.2154.nptl.asp/kernel/drivers/parport/parport.o: insmod char-major-6 failed Jul 18 17:57:13 fantom last message repeated 7 times Jul 18 17:57:13 fantom modprobe: modprobe: Can't locate module char-major-188 Jul 18 17:57:14 fantom last message repeated 15 times Jul 18 17:57:14 fantom modprobe: modprobe: Can't locate module char-major-180 Jul 18 17:57:14 fantom last message repeated 15 times Jul 18 17:57:14 fantom insmod: /lib/modules/2.4.22-1.2154.nptl.asp/kernel/drivers/parport/parport.o: insmod char-major-6 failed Jul 18 17:57:14 fantom last message repeated 3 times Jul 18 17:57:15 fantom modprobe: modprobe: Can't locate module char-major-180 Jul 18 17:57:15 fantom last message repeated 7 times Jul 18 17:57:15 fantom insmod: /lib/modules/2.4.22-1.2154.nptl.asp/kernel/drivers/parport/parport.o: insmod char-major-6 failed Jul 18 17:57:15 fantom last message repeated 3 times Jul 18 17:57:15 fantom modprobe: modprobe: Can't locate module char-major-180 In file included from ac.c:26: /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:60:31: invalid suffix "d5eeb25" on integer constant In file included from ac.c:26: /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:60: error: syntax error before numeric constant /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:60: warning: function declaration isn't a prototype /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:61:17: invalid suffix "bf0" on integer constant /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:61: error: syntax error before numeric constant /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:62: error: `panic_R_ver_str' declared as function returning a function /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:62: warning: function declaration isn't a prototype /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:68: error: syntax error before numeric constant /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:68: error: `simple_strtoul_R_ver_str' declared as function returning a function /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:68: warning: function declaration isn't a prototype /usr/src/linux-2.4.22-1.2154.nptl.asp/include/linux/kernel.h:69:13: invalid suffix "b742fd7" on integer constant А вот сообщения которые были при make modules_install: cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `ac.o': No such file or directory cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `battery.o': No such file or directory cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `button.o': No such file or directory cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `fan.o': No such file or directory cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `processor.o': No such file or directory cp: ОЕЧПЪНПЦОП ЧЩРПМОЙФШ stat ДМС `thermal.o': No such file or directory make[2]: *** [_modinst__] Ошибка 1 make[1]: *** [_modinst_acpi] Ошибка 2 make: *** [_modinst_drivers] Ошибка 2 Кстати, а перед компиляцией модулей нужно удалять содержимое /lib/modules ??? Просвятите плиз.... |
|
------- Отправлено: 13:41, 20-07-2004 |
Старожил Сообщения: 270
|
Профиль | Отправить PM | Цитировать хехе = так у вас ядро с ошибками собралось (вернее модули к нему) = что от него тогда требовать)))
видимо 1) либо вы не очистили исходники перед компиляцией make mrproper 2) либо убрали из конфигов много лишнего_нужного Цитата:
Добавлено: а что вы убрали из ядра? |
|
------- Отправлено: 08:30, 21-07-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 69
|
Профиль | Отправить PM | Цитировать Нет, не для ноутбука! А почему спросили? Как тогда избавится от того что ругается? Из я дра повыкидывал поддержку Bluetooth, RAID, Radio Adapters, ну и драйвера к ненужным мне чипсетам и т.п. Ничего жизнено важного вроде не трогал. Ну так как тогда собрать модули правильно, чтоб без ошибок. Можно порядок действий или совет какой-нить?! И вы мне так и не ответили на вопрос, нужно ли перед сборкой модулей убивать содержимое /lib/modules? Или это не обязательно?
|
------- Отправлено: 09:17, 21-07-2004 | #3 |
Старожил Сообщения: 270
|
Профиль | Отправить PM | Цитировать просто я вам прокомментирую = все это модули ACPI (advanced power control interface если не ошибаюсьв )
ac - модуль проверки наличия питания от сети battery - отвечает за аккумулятор ноутбуков button - кнопки срежимов ожидания/выключения компьтора fan - вентилятор processor - различные дополнительные режимы работы процессора thermal - температурные датчики все это обычно собирается под ноутбук, чтобы организовать энергосберегающие режимы = на десктопах я не импользовал ничего кроме button (для выключения компа с помощью acpid нажатием кнопки питания - аналогично /sbin/shutdown -h now) так что если вы действительно облегчаете ядро = то отключите все это = тем более на некоторых компах acpi вызывает сбои можно кешно собрать ядро и с acpi, по-любому его можно отключить при загрузке boot: Linux acpi=off попробуйте собрать без поддержки acpi = потом пошагово добавите = главное получить рабочую конфигурацию ядра |
------- Отправлено: 10:21, 22-07-2004 | #4 |
Пользователь Сообщения: 69
|
Профиль | Отправить PM | Цитировать Одним из результатов инициативы OnNow является спецификация ACPI 1.0 (Advanced Configuration and Power Interface Version 1.0), которая определяет новый интерфейс между системной платой и BIOS, расширяющий данные Plug and Play путем включения управления электропитанием и других конфигурационных возможностей, осуществляемых под контролем операционной системы. Спецификация ACPI определяет новый интерфейс между операционной системой и компонентами компьютера, обеспечивающими поддержку Plug and Play и управления электропитанием. Это позволяет разработчикам реализовать целый диапазон функций Plug and Play и управления электропитанием для самых разных аппаратных платформ при использовании одного и того же драйвера операционной системы. Помимо этого, ACPI предоставляет общий механизм системных событий для Plug and Play и управления электропитанием.
Т.е. для десктопов это такая же необходимость как и для ноутбуков. Главное, чтобы системная плата поддерживала ACPI. Разве что battery действительно на десктопах вряд ли понадобится. А тем более как я понимаю конфигурация ядра должна быть рабочей, так как при компиляции ядра ошибок не было. А вот при компиляции модулей выскакивают. :-( Спасибо, буду пытаться дальше эксперементировать ;-) |
|
------- Отправлено: 11:56, 22-07-2004 | #5 |
Старожил Сообщения: 270
|
Профиль | Отправить PM | Цитировать могу сказать = что выбросив acpi вы ничего не потеряете))) зато ядро собереться правильно
|
------- Отправлено: 07:40, 23-07-2004 | #6 |
kosmik
Сообщения: n/a |
ЛЮДИ!! ЛЮДИ!!!!
Веть прежде чем компилять ядро - скопируйте в его каталог дефаулт конфиг от текущей компиляции! Иначе при первом запуске make menuconfig - вы получите как-бы оптимизированный конфиг с кучей вырезанных и него модулей! Далее, если в конфиге ядра прописано load all symbols from modules - немедленно убрать - иначем хрен скомпиляешь, а если и скомпиляешь - то не один модуль за грузится! А далее уже сами думайте да хэлпы к пунктам читайте!!! |
Отправлено: 15:24, 12-08-2004 | #7 |
Пользователь Сообщения: 61
|
Профиль | Отправить PM | Цитировать Скажи мне, любезный, а ты не забыл сделать mkinitrd для нового ядра, и прописать куда следует? Если ты собрал не монолитное ядро, то без этого оно у тебя вообще может уйти в kernel panic.
|
Отправлено: 11:51, 14-08-2004 | #8 |
kosmik
Сообщения: n/a |
2 SystemZ
Очевидно он забыл ! Для ентого делается make install, который ЭТО и делает! Очень хорошо make install дружит с grub! |
Отправлено: 01:56, 17-08-2004 | #9 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Два ядра. | kreasot | Игры | 3 | 29-10-2007 20:35 | |
Сборка ядра | Pink Punk | Общий по Linux | 14 | 25-05-2003 09:17 | |
Компиляция ядра | DYURIK | Общий по Linux | 38 | 30-04-2003 14:09 | |
Компиляция ядра | Andro | Общий по Linux | 17 | 25-04-2003 21:06 | |
Установка ядра | Guest | Общий по Linux | 8 | 15-03-2003 08:54 |
|