Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Распаковка исходных кодов, применение патчей к ядру (если необходимо)

Пред. 

Глава 13. Компиляция и установка новых ядер

 След.


Распаковка исходных кодов, применение патчей к ядру (если необходимо)

[Note]

Замечание

Все этапы, описанные в этом и в следующих разделах этой главы, должны выполняться с правами root'а.

Исходные коды ядра должны находиться в /usr/src. Поэтому вы должны перейти в этот каталог и распаковать туда исходные коды:

$ cd /usr/src
$ mv linux linux.old
$ tar xjf /путь/к/linux-2.6.6.tar.bz2

Команда mv linux linux.old является необходимой: потому как у вас уже могут быть исходные коды другой версии ядра. Эта команда гарантирует вам, что вы не перезапишите их. После того, как архив распакован, вы получаете каталог linux-<версия (где <версия> - это версия ядра) с исходными кодами нового ядра. Для удобства вы можете сделать на него ссылку (ln -s linux-<версия> linux).

Теперь о патчах. Допустим, что вы хотите пропатчить ядро 2.6.6 до 2.6.8, и вы уже загрузили все необходимые для этого патчи: переходите в новый созданный каталог linux, а затем применяйте патчи:

$ cd linux
$ bzcat /путь/к/patch-2.6.7.bz2 | patch -p1
$ bzcat /путь/к/patch-2.6.8.bz2 | patch -p1
$ cd ..

Вообще говоря, для переход от версии 2.6.x к 2.6.y, требуется, чтобы вы примененили по порядку все патчи с номерами 2.6.x+1, 2.6.x+2, ..., 2.6.y-1, 2.6.y. Чтобы вернуться от 2.6.y к 2.6.x, точно также повторите эту же процедуру, но применяя патчи в обратном порядке с опцией -R для команды patch (R - это сокращение от Reverse). Таким образом, чтобы вернуться от ядра 2.6.8 назад к ядру 2.6.6, вы должны сделать:

$ bzcat /путь/к/patch-2.6.8.bz2 | patch -p1 -R
$ bzcat /путь/к/patch-2.6.7.bz2 | patch -p1 -R

[Tip]

Подсказка

Если вы хотите проверить, будет ли патч применен корректно, перед тем как применить его на самом деле, добавьте в команду patch опцию --dry-try.

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

$ mv linux linux-2.6.8
$ ln -s linux-2.6.8 linux

Теперь пора перейти к конфигурированию.


Пред. 

Уровень выше

 След.

Из исходных кодов 

Начало

 Конфигурирование ядра