![]() |
Привет народ. Помогите разобраться. Вот решил пересобрать ядро, повыкидывать оттуда ненужные компоненты и т.д., короче говоря занялся оптимизацией. Дистрибутив 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 Код:
Код:
А вот сообщения которые были при make modules_install: Код:
Кстати, а перед компиляцией модулей нужно удалять содержимое /lib/modules ??? Просвятите плиз.... |
хехе = так у вас ядро с ошибками собралось (вернее модули к нему) = что от него тогда требовать)))
видимо 1) либо вы не очистили исходники перед компиляцией make mrproper 2) либо убрали из конфигов много лишнего_нужного Цитата:
Добавлено: а что вы убрали из ядра? |
Нет, не для ноутбука! А почему спросили? Как тогда избавится от того что ругается? Из я дра повыкидывал поддержку Bluetooth, RAID, Radio Adapters, ну и драйвера к ненужным мне чипсетам и т.п. Ничего жизнено важного вроде не трогал. Ну так как тогда собрать модули правильно, чтоб без ошибок. Можно порядок действий или совет какой-нить?! И вы мне так и не ответили на вопрос, нужно ли перед сборкой модулей убивать содержимое /lib/modules? Или это не обязательно?
|
просто я вам прокомментирую = все это модули ACPI (advanced power control interface если не ошибаюсьв )
ac - модуль проверки наличия питания от сети battery - отвечает за аккумулятор ноутбуков button - кнопки срежимов ожидания/выключения компьтора fan - вентилятор processor - различные дополнительные режимы работы процессора thermal - температурные датчики все это обычно собирается под ноутбук, чтобы организовать энергосберегающие режимы = на десктопах я не импользовал ничего кроме button (для выключения компа с помощью acpid нажатием кнопки питания - аналогично /sbin/shutdown -h now) так что если вы действительно облегчаете ядро = то отключите все это = тем более на некоторых компах acpi вызывает сбои можно кешно собрать ядро и с acpi, по-любому его можно отключить при загрузке boot: Linux acpi=off попробуйте собрать без поддержки acpi = потом пошагово добавите = главное получить рабочую конфигурацию ядра |
Одним из результатов инициативы 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 действительно на десктопах вряд ли понадобится. А тем более как я понимаю конфигурация ядра должна быть рабочей, так как при компиляции ядра ошибок не было. А вот при компиляции модулей выскакивают. :-( Спасибо, буду пытаться дальше эксперементировать ;-) |
могу сказать = что выбросив acpi вы ничего не потеряете))) зато ядро собереться правильно
|
:splat::splat::splat:ЛЮДИ!! ЛЮДИ!!!!:splat::splat::splat:
Веть прежде чем компилять ядро - скопируйте в его каталог дефаулт конфиг от текущей компиляции! Иначе при первом запуске make menuconfig - вы получите как-бы оптимизированный конфиг с кучей вырезанных и него модулей! Далее, если в конфиге ядра прописано load all symbols from modules - немедленно убрать - иначем хрен скомпиляешь, а если и скомпиляешь - то не один модуль за грузится! А далее уже сами думайте да хэлпы к пунктам читайте!!! :dont: |
Скажи мне, любезный, а ты не забыл сделать mkinitrd для нового ядра, и прописать куда следует? Если ты собрал не монолитное ядро, то без этого оно у тебя вообще может уйти в kernel panic.
|
2 SystemZ
Очевидно он забыл :)! Для ентого делается make install, который ЭТО и делает! Очень хорошо make install дружит с grub! |
Время: 08:10. |
Время: 08:10.
© OSzone.net 2001-