Gentoo kernel upgrade: различия между версиями
ALEX (обсуждение | вклад) |
ALEX (обсуждение | вклад) |
||
Строка 74: | Строка 74: | ||
Всё теперь находясь в главном меню menuconfig'а нажимаем два раза '''esc''' и наше ядро начинает компилироваться! | Всё теперь находясь в главном меню menuconfig'а нажимаем два раза '''esc''' и наше ядро начинает компилироваться! | ||
Когда все эти операции позади - мы получаем новое ядро. Теперь надо подмонтировать /boot и прописать в GRUB загрузку этого ядра. Но это уже совсем другая статья дожна быть =). | |||
==Ссылки== | ==Ссылки== |
Версия 22:08, 23 января 2010
Обновление ядра Gentoo Linux
Сидел я долгое время на ядре версии 2.4. Потом обновил железо и решил поставить новую систему с новым ядром - 2.6 на 64 bit. Всё было отлично, но прошёл год, мне к тому времени понадобилось внести некоторые изменения в ядро и пересобрать его. Думал как всегда вызвать genkernel и menuconfig и не трудиться особенно, но потом решил проверить, а может вышли новые версии ядра. И действительно - за год версия немного изменилась. Ну что же, раз пересобирать ядро и править .config, то тогда сразу на новое из портажей. С предисловием закончил приступим к делу =).
Подготовка к обновлению ядра
Для начала обновим портажи
Я привык уже пользоваться sys-kernel/genkernel, так что обновляем и это приложение.
Теперь обновим пакеты app-admin/eselect и sys-kernel/module-rebuild (или если их нет то поставим с нуля)
С подготовкой закончили. Теперь самое время приступать к обновлению.
Установка исходников (source) ядра
Для начала давайте посмотрим, а что за систему мы имеем в данный момент:
Теперь проверим, а что есть нового в портажах к данному моменту.
Мы получим на экране что-то типа
Calculating dependencies... done! [ebuild NS ] sys-kernel/gentoo-sources....
где NS будет означать, что исходники ядра будут установлены рядом со старым в новый слот. В общем ставим их, а точнее качаем с нета, стандартно выполнив:
Можем теперь посмотреть на них
Если всё в порядке, то мы должны увидеть в папке подпапку с исходниками нового ядра Gentoo. Теперь переходим к настройке системы, самого ядра и его компиляции (сборки ядра Gentoo).
Настройка системы, ядра
Если вы не сохранили свой конфиг ядра при его первоначальной сборке, то самое время сделать это сейчас. Настраивать ядро с нуля (особенно если последний раз вы этим занимались не вчера и даже не полгода назад) не очень простая задача и достаточно трудоёмка. Есть смысл иметь конфиг, где потом просмотреть только необходимые места.
В общем сохраняем конфиг старого ядра:
При просмотре исхдников в предыдущем пункте вы наверняка обратили внимание на файл linux, который явдяется simlink'ом, и указывает на текущую версию ядра. Для того, чтобы "нацелить" его на свежие исходники, выполняем следующие действия. Сперва есть смысл посмотреть список всех текущих доступных версий ядра.
Будет выведено что-то типа:
Available kernel symlink targets: [1] linux-2.6.25-gentoo-r6 [2] linux-2.6.27-gentoo-r8 [3] linux-2.6.31-gentoo-r6 *
Нацеливаем файл linux на свежие исходники командой
Всё теперь смело можем приступать к сборке нового ядра!
Компиляция нового ядра из исходников
Для этого запускаем любимый мною genkernel
Внутри интерфейса консольной программы, написанного с использованием ncurses, находим пункт меню
Load an Alternate Configuration File
Что позволяет нам загрузить наш конфигурационный файл. Соответственно нам просто надо указать путь, куда мы забэкапили старый конфиг (например /root/.config_backup.
Всё файл загружен и мы имеем уже наше старое настроенное ядрышко. При этом в связи с изменением ядра на более новое, все новшества и новые опции и фичи будут отмечены ключевыми словами NEW. Настраиваем как нам угодно наше ядро, меняем то что хотели в нём и, и компилируем его? - Нет сперва надо сохранить наш конфигурационный файл с правками в папку, где genkernel будет его искать, то есть по адресу /usr/src/linux/.config. Но т.к. мы находимся в menuconfig, то нам надо выполнить лишь действия сохранения из главного меню:
Save an Alternate Configuration File
Где в качестве полного имени файла указываем .config, что и сохранит его сразу в нужную папку (/usr/src/linux/).
Всё теперь находясь в главном меню menuconfig'а нажимаем два раза esc и наше ядро начинает компилироваться!
Когда все эти операции позади - мы получаем новое ядро. Теперь надо подмонтировать /boot и прописать в GRUB загрузку этого ядра. Но это уже совсем другая статья дожна быть =).