Берем в руки бубен)))

Ноябрь 30 2008Комментариев нет

Опубликовано под рубрикой:Soft

Все уже слышали про компиляцию ядра Линукс? Вчера решил попробовать. А пока идет компиляция)), решил это все записать.

Для чего это надо? Ядро, поставленное из дистрибутива универсально. оно и ясно - дистрибутивная сборка должна гарантированно работать на любой машине, поэтому туда напихивается все, что можно. Но у меня-то только одна машина, со своими требованиями, железом и задачами. Думаю, процентов 50 из возможностей, предусмотренных разработчиками, мне просто не понадобятся. Так зачем их каждый раз грузить и отдавать машинные ресурсы? Перекомпилирую-ка я ядро под свои нужды! К тому же, все, кто этим занимался, говорят, что это вовсе не трудно!

Но страшно! Ага, страшно! Ну ведь только обжился, привык… Как выяснилось, природа этого страха - чисто психологическая!. Пяток команд выполнить - и все! К тому же гарантировано можно в любой момент загрузить обкатанное ядро! Как тут не поэкспериментировать?

Хочу обратить внимание желающих повторить этот фокус - все, здесь описанное, пробовалось на Ubuntu-8.10. Если повторяете - то все повторяете на свой страх и риск! Я умываю руки!

Итак по порядку..

1. Для компиляции ядра необходимо иметь сорцы - то, из чего его, собственно, и компилируют. Качаем отсюда: http://www.kernel.org/pub/linux/kernel/. На сегодняшний день я выкачивал linux-2.6.27.7.tar.bz2

И еще один дельный совет почерпнул я у кого-то… Создал суперпользователя, чтобы работать, не вводя сотню раз админский пароль. Создать его просто:

sudo passwd root

Затем входим суперюзером:

su

Мелочь, а приятно)

И начнем с установки пакетов, участвующих в сборке ядра:

apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential

Надеюсь, что у Вас достаточно толстый канал и архив с исходниками ядра Вы уже выкачали. Кладем его в папку /usr/src/ и распаковываем… ну, скажем в папочку linux-2.6-custom. И рекомендуется создать символическую ссылку на каталог с исходниками с именем linux. это делается набиранием следующей комбинации в терминале:

ln -s linux-2.6.27.7 linux

Да!! Если есть нужда, ставим патчи.

Переходим к пункту два.

2. Настройка ядра.

Настройка ядра оказалась тоже не такой страшной операцией, как ее Малевич. Для удобства сонфигурирования лентяи-линуксоиды накропали пару-тройку программ, делающих этот процесс простым, наглядным и увлекательным. Но!! прежде, чем бросаться в омут, предлагается использовать для работы файл конфигурации текущего ядра. (Ну, умная улитка не полезет же на Фудзияму!) Это делается так:

$ sudo cp /boot/config-`uname -r` /usr/src/linux/.config

В результате в скрытом файле .config содержатся настройки текущего Вашего ядра системы. просто, чтоб новый не создавать с нуля, мы подправим этот.

А теперь, вооружившись терпением, здравым смыслом и списком существующего оборудования, открыв страничку, где неплохо расписаны многие настройки, набираем одну из команд:

make xconfig - Для пользователей, у которых есть графика - запустится графическая программка для настройки. Или же под Gnome:
make gconfig
make menuconfig Вполне приемлемый консольный вариант. Я использовал его.
make configТоже консольный вариант. Но, говорят, учился у Шахерезады Ивановны, поэтому задает 1000 и 1 вопрос.

По окончании конфигурирования не забудьте сохранить все изменения!!!

3. Для очистки каталога от объектных файлов прошлых компиляци используем команду

make-kpkg clean

Ну а теперь, приступим помолясь:

fakeroot make-kpkg –initrd –append-to-version=-custom-kernel kernel_image kernel_headers

Параметр -append-to-version= позволяет добавить свой суффикс к названию версии ядра. (Пробелы недопустимы!)

Набрали, нажали и энтер и откиньтесь на спинку кресла можно заниматься чем попало. Процесс компиляции ядра - не быстрый. самую маленькую оценку я слышал - полчаса. У меня этот процесс длится уже четыре часа. Но я дождусь)))

Продолжение следует….

Гвозди в тему:




Комментирование запрещено




Rambler's Top100 мир Иинтернет блогов BlogMemes.ru Работа на RJB.ru