LINUX.ORG.RU

Компиляция ядра в SuSE 10


0

0

Стоит система SuSE 10 (ядро 2.6.13-15). Требовалось установить iptables. Исходники ядра, которые идут с дистрибутивом SuSE iptables не понравились - пришлось скачать ядро с www.kernel.org (2.6.15.1). Компилировал с таким порядком действий: make menuconfig (все эл-ты аналогичны установленному 2.6.13-15) make dep make clean make bzImage make modules make modules_install Скопировал bzImage в /boot как vmlinux-2.6.15.1 Скопировал System.map в /boot Дальше mkinitrd -k vmlinux-2.6.15.1 initrd-2.6.15.1 Отредактировал GRUB. Скопировал вариант основной загрузки с заменой параметров, title NewKernel kernel /boot/vmlinux-2.6.15.1 initrd /boot/initrd-2.6.15.1

При загрузке с новым ядром вылазит несколько ошибок. Например, Starting name server BIND named: capset failed: Operation not permitted: please ensure that the capset kernel module is loaded. see insmod(8) startproc: exit status of parent of /usr/sbin/named: 1 failed

или

showconcole: Warning the ioctl TIOCGDEV is not known by the kernel

И еще пара-тройка. Подскажите, что ему еще надо и как ему помочь? И заодно просветите, почему ядро у SuSE нестандартное?


Качай .rpm официальной сюзевской сборки с kernel-of-the-day - из них и собирай, и не трахай себе и людям мозги попытками самосбора - у SuSE весьма специфичные спеки ядра, так что, не зная тонкостей, ты лишь погубишь систему.

Можешь, если не хочешь сидеть на тестовом ядре, выкачать оттуда же src.rpm и уже из них вытянуть spec-файлы - а там уж редактируй их под свою версию исходников ядра (я так понимаю - 2.6.15.1) и компили.

YagMort ★★
()
Ответ на: комментарий от Demetrio

> А iptables, который уже установлен в SUSE, тебя не устроил?

Нужно пропатчить было iptables для L7-Filter (http://l7-filter.sourceforge.net/HOWTO#iptables)

> Качай .rpm официальной сюзевской сборки с kernel-of-the-day - из них и собирай, и не трахай себе и людям мозги попытками самосбора - у SuSE весьма специфичные спеки ядра, так что, не зная тонкостей, ты лишь погубишь систему.

Есть у меня такое предчуствие, что если скачаю эту сузевскую сборку, то ядро так и будет нестандартным и iptables снова не захочет собраться...

Rykun
() автор топика
Ответ на: комментарий от Rykun

>>Есть у меня такое предчуствие, что если скачаю эту сузевскую сборку, то ядро так и будет нестандартным и iptables снова не захочет собраться...<<

А тебе не приходило в голову, что патч, о котором ты пишешь, в SuSE 10.0 уже наложен, ы? ;) Как идея?

YagMort ★★
()
Ответ на: комментарий от YagMort

> А тебе не приходило в голову, что патч, о котором ты пишешь, в SuSE 10.0 уже наложен, ы? ;) Как идея?

Вполне возможно. Надо пропатчить 2 вещи: iptables и ядро. Сначала патчиться ядро (допустим этого делать не нужно, если бы патч уже наложен). Но. Теперь нужно пропатчить iptables (на которую он точно не наложен) - для этого собираем iptables: make KERNEL_DIR=/usr/src/linux (где исходники ядра установленного) - получаем град ошибок и убеждаемся, что с СУСЕвским ядром оно не поставиться (со стандартным с kernel.org компилируется запросто). Отсюда вывод - поставить нормальное стандартное ядро. Отсюда вопрос - как?

Rykun
() автор топика
Ответ на: комментарий от Rykun

есть подозрение, что виноват дефолтный gcc 4.0.1, обновленные ядра SuSE 10 собираются под gcc 4.1.0 - его и надо качать и использовать. Типичный пример - драйвер Nvidia, который не под дефолтным ядром собирается только при использовании gcc 4.1.0.

YagMort ★★
()
Ответ на: комментарий от YagMort

А что такое спеки? Где про это можно почитать по подробно и русски? Прошу прощения, но с rpm я не работал никогда.

Просто когда поставлю сусю, так и так придёться собирать себе своё ядро - мне тысяча драйверов для устройств, которых у меня нет, не нужны. Если сборка ядра в сусе это такая проблема, я даже и не знаю что думать...

Midael ★★★★★
()
Ответ на: комментарий от Midael

>мне тысяча драйверов для устройств, которых у меня нет, не нужны.

в тапочки ссуть и твой коньяк лакают? тогда да, гнать их кочергой

> Если сборка ядра в сусе это такая проблема, я даже и не знаю что думать...

подумай зачем это в ней делать

Muromec ☆☆
()
Ответ на: комментарий от Midael

>>Просто когда поставлю сусю, так и так придёться собирать себе своё ядро - мне тысяча драйверов для устройств, которых у меня нет, не нужны.<<

Модульность ядра для таких и придумана - на кой его с нуля пересобирать, если можно через стандартную утилиту поотключать нафик неиспользуемые модули и одной консольной командочкой пересобрать то же ядро, но без ненужных модулей?

И, ты думаешь, скорость увеличится или памяти сильна меньше жрать будет? Ох уж эти гентушники с их манией пересборки...

YagMort ★★
()
Ответ на: комментарий от Midael

>>А что такое спеки? Где про это можно почитать по подробно и русски?<<

В гугле ты найдешь все. По-русски - только всякую лабуду. Если есть желание понять все подробно - иди на сайт новелл и качай сусевское pdf-руководство по спекам и их правильному написанию - руководство очень подробное и разжевательное. если желания подробно вдаваться нет - лучше оставь эту затею и пользуйся готовыми rpm-бинарями.

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