
- •Тема №5. Сборка ядра Linux
- •Введение
- •Зачем собирать ядро?
- •Какие бывают ядра Линукс?
- •Какие могут быть проблемы при сборке ядра?
- •Основные проблемы
- •Чтобы система после перезагрузке загрузилась с новым ядром, обязательно включите поддержку следующих опций монолитно:
- •Чтобы не ломать голову и не думать, почему не работает что-то, имейте в виду:
- •Сборка ядра (The Ubuntu Way)
- •Предварительные действия
- •/bin/sh в Ubuntu 6.10
- •Установка пакетов необходимых для сборки ядра
- •Получение исходников ядра
- •Конфигурирование ядра:
- •Сборка ядра
- •Установка нового ядра
- •Патчи ядра
- •Задание
Тема №5. Сборка ядра Linux
Введение
Зачем собирать ядро?
Если всё работает, цветёт и пахнет - не трогайте ничего! Есть старая поговорка "не сломалось - не чини!". В ней мудрость многих поколений юниксоидов, бессонные ночи и море слёз. Ну так зачем же это надо?
Как говорят классики, полезно пересобрать ядро в следующих случаях:
•если установлено специфичное оборудование или возникает конфликт аппаратного обеспечения со стандартным ядром;
•чтобы задействовать свойства, которых нет в поставляемых сборках ядра (например, поддержка памяти больше 1Гб, сжатых файловых систем или других интересных возможностей);
•для оптимизации ядра, удаляя ненужные драйверы для уменьшения времени загрузки;
•создания монолитного ядра, без модулей (бывает необходимо при создании специфичных систем, например LiveCD);
•для установки обновлённого ядра, в котором есть необходимые свойства или поддержка вашего оборудования;
•чтобы больше узнать о ядрах Linux.
Не бойтесь пересобирать ядро. Это забавно и полезно.
Какие бывают ядра Линукс?
Прежде всего, надо разобраться, что такое стабильные и нестабильные ядра (stable
иdevelopment) и как они нумеруются. Пусть имеется ядро версии a.b.c.d
•a - это основной номер версии. Меняется он раз в несколько лет, как правило, когда нестабильная серия с очень существенными изменениями становится стабильной.
•b - это patchlevel. Именно он определяет, является ли данное ядро стабильным или нет. Если он четный - ядро стабильное, если нечетный - нестабильное. Числа a и b в виде a.b называется серией ядер.
•с - это sublevel. Он определяет номер ядра в серии, отличия не радикальные, но существенные: появились новые драйвера, устранены ошибки, добавлены новые возможности.
•d - это extraversion устраняются мелкие баги.
Официальные ядра в виде исходных текстов можно скачать с ftp://ftp.kernel.org. Идём туда и видим кучу ядер. Нам какое? Есть несколько соображений:
•берём то, которое посвежее: и оборудования побольше поддерживается, и старых глюков меньше (а новых больше - чтобы жизнь не была такой скучной и серой :-))
•лучше всего брать ядро с последним номером в серии, то есть ядро с