Не загружаются модули нового ядра, Jafeifija, 01-Янв-09, 15:05 [смотреть все]Недавно поменяла железо и сменила дистрибутив. Установила Slackware 12.1 с ядром 2.6.24.5. Пересобрала ядро под свои потребности (на прежнем железе использовала Slackware 11 с ядрами ветки 2.4.х). Решила установить ядро поновее, скачала 2.6.27.7. Собираю и устанавливаю ядро с поддержкой модулей: make mrproper make xconfig make bzImage make modules make modules_install make install. Перезагружаюсь на новое ядро (uname -a показывает, что загрузилось именно 2.6.27.7), однако в процессе загрузки появляется сообщение, что модули нового ядра не найдены - соответсвенно, система не работает ни с dvb, ни с другими подключенными как модули девайсами. Начинаю разбираться - каталог /lib/modules/2.6.27.7 создан, в нём присутствуют подкаталоги для всех устройств, поддержку которых модулями я включила в файле конфигурации. А вот файла rc.modules-2.6.27.7 в каталоге /etc/rc.d нет, есть только rc.modules-2.6.24.5. Как я понимаю, из-за отсутсвия этого файла и не грузятся модули нового ядра. С прежним ядром, 2.6.24.5, система грузится и работает как положено. Как мне создать для нового ядра файл /etc/rc.d/rc.modules-2.6.27.7?
|
- Не загружаются модули нового ядра, Savl, 20:10 , 02-Янв-09 (1)
... >make mrproper >make xconfig >make bzImage >make modules Хорошая практика - конфигурировать и собирать ядро, используя привилегии обычного пользователя. Вместо make bzImage и make modules достаточно выполнить просто команду make >make modules_install >make install Так как содержимое и функции файла rc.modules - загадка, а загрузка модулей относится к функциям ядра, можно ли уточнить, есть ли во вновь созданной директории в каталоге /lib/modules/<new version>/ линки на директории с исходными файлами и директорию, где производилась сборка? Есть ли в этой же директории файл modules.dep?
- Не загружаются модули нового ядра, Jafeifija, 13:24 , 03-Янв-09 (2)
>[оверквотинг удален] >>make bzImage >>make modules > >Хорошая практика - конфигурировать и собирать ядро, используя привилегии обычного пользователя. Вместо >make bzImage и make modules достаточно выполнить просто команду make > >>make modules_install >>make install > >Так как содержимое и функции файла rc.modules - загадка, а загрузка модулей относится к функциям ядра, можно ли уточнить, есть ли во вновь созданной директории в каталоге /lib/modules/<new version>/ линки на директории с исходными файлами и директорию, где производилась сборка? Есть ли в этой же директории файл modules.dep?Да, линки на директорию с исходниками и директорию сборки есть, и файл modules.dep тоже есть. Вот полное содержание каталога /lib/modules/2.6.27.7: /kernel ~source ~build modules.alias modules.ccwmap modules.dep modules.ieee1394map modules.inputmap modules.ofmap modules.pcimap modules.seriomap modules.symbols modules.usbmap modules.order.
- Не загружаются модули нового ядра, Savl, 23:45 , 04-Янв-09 (3)
Интересно узнать откуда Вы получаете сообщения о том, что модули не могут быть найдены, но так же интересно узнать результат выполнения корректной процедуры сборки, которой считаю следующую последовательность: с привилегиями обычного пользователя собрать ядро, выполнив make mrproper ; make xconfig ; make ; Затем, с привилегиями root'а произвести установку, выполнив make modules_install ; make install ; После этого, если ничего не изменится, уже попрошу у Вас dmesg и копию сообщения об отсутствующих модулях. Ешё, простите за нескромный вопрос, что известно про состояние selinux при запуске?
- Не загружаются модули нового ядра, Jafeifija, 00:21 , 05-Янв-09 (4)
>[оверквотинг удален] >быть найдены, но так же интересно узнать результат выполнения корректной процедуры >сборки, которой считаю следующую последовательность: с привилегиями обычного пользователя собрать ядро, >выполнив >make mrproper ; make xconfig ; make ; >Затем, с привилегиями root'а произвести установку, выполнив >make modules_install ; make install ; >После этого, если ничего не изменится, уже попрошу у Вас dmesg и >копию сообщения об отсутствующих модулях. >Ешё, простите за нескромный вопрос, что известно про состояние selinux при запуске? >В процессе загрузки по экрану бегут сообщения о происходящих событиях. С определённого момента идут записи о том, что FATAL ERROR: модуль соответсвующего устройства not found. По поводу корректной процедуры сборки: выделила чистый раздел на винчестере, поставила туда всё ту же Слаку 12.1, но обновлялась на другую версию ядра (2.6.27.2). Сборка велась под обычным пользователем, установка - после su. Результат прежний, грузится новое ядро и не находит своих модулей - в том числе X-сы не стартуют с проприетарным драйвером от nVidia, установленным в системе со стандартным ядром, пишет что-то типа nvidia.ko not found (отвечаю Вам не с домашней машины, поэтому точнее не скажу и вывод dmesg выложу только завтра утром. Тогда же уточню и состояние selinux).
- Не загружаются модули нового ядра, Jafeifija, 23:21 , 05-Янв-09 (5)
Selinux грузится в режиме permissing. Я сделала следующее. Заново собрала ядро 2.6.27.7, из-под простого пользователя make mrproper make xconfig (отключила selinux в ядре, после как-нибудь с ним буду разбираться, сначала man'ы почитать надо) make (кстати, мне нигде в литературе не встречалось, что make в этом месте заменяет make bzImage и make modules, огромное спасибо за науку, Savl!), затем su и с правами рута make modules_install make install. Перегружаюсь, сообщений об ошибках нет (это заметно хотя бы по тому, что сразу монтируются разделы ntfs, раньше после попытки примонтировать раздел выскакивало "Module fuse not found", X-сы запустились с драйвером nVidia. Но остались строки Running /etc/rc.d/rc.modules -> rc.modules-2.6.24.5-smp: Module dependencies up to date (no new kernel modules found). Т.е. файла /etc/rc.d/rc.modules-2.6.27.7 у меня так и нет, а /etc/rc.d/rc.modules является ссылкой на файл от старого ядра rc.modules-2.6.24.5-smp %-(
- Не загружаются модули нового ядра, rii, 01:15 , 06-Янв-09 (6)
>Running /etc/rc.d/rc.modules -> rc.modules-2.6.24.5-smp: >Module dependencies up to date (no new kernel modules found). >Т.е. файла /etc/rc.d/rc.modules-2.6.27.7 у меня так и нет, а /etc/rc.d/rc.modules является ссылкой >на файл от старого ядра rc.modules-2.6.24.5-smp %-( Это не важно. rc.modules на самом деле написан без жёстких требований к версии ядра. Ну уж если чего нибудь не заработает, то тогда надо будет своё писать. А в твоём случе врятли понадабятся ещё какие нибудь движения.
- Не загружаются модули нового ядра, Savl, 22:20 , 07-Янв-09 (8)
Сразу хочу поблагодарить за тёплые слова по поводу незначительной поправки в процедуре сборки - существующие цели(targets) можно посмотреть в самом Makefile или, если интересны библиографические ссылки, актуальная процедура сборки комментируется, к примеру, в Linux Kernel in a Nutshell, Greg Kroah-Hartman, O'Reilly По существу же Вашего вопроса - в Slackware версии до 12, как оказывается при ближайшем рассмотрении, необходимо при установке ядра, собранного из исходных файлов, создать rc.modules с необходимыми изменениями - /etc/rc.d/rc.modules-$(uname -r) автоматически не создаётся. В качестве шаблона для правки можно использовать файл с установочного диска Slackware: /source/k/kernel-modules-smp/rc.modules.new
- Не загружаются модули нового ядра, Vladimir, 10:45 , 06-Янв-09 (7)
>> (отвечаю Вам не с домашней машины, поэтому точнее не скажу и вывод dmesg выложу только завтра утром. Тогда же уточню и состояние selinux). Откуда в slackware selinux?
|