![]() | Замечание |
---|---|
Все этапы, описанные в этом и в следующих разделах этой главы, должны выполняться с правами 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 |
![]() | Подсказка |
---|---|
Если вы хотите проверить, будет ли патч применен корректно, перед тем как применить его на самом деле, добавьте в команду patch опцию --dry-try. |
Далее, для большей ясности (и для того, чтобы вы знали, где находитесь), вы можете переименовать linux с отображением в имени версии ядра и создать на него символическую ссылку:
$ mv linux linux-2.6.8 $ ln -s linux-2.6.8 linux |