Как настроить ваше ядро Ubuntu
Настройка ядра не для всех. Пожалуйста, обратите внимание, прежде чем пытаться что-либо из этого, что это может сломать вашу систему.
Существует множество причин, по которым вы бы хотели настроить свое ядро. Возможно, вы захотите урезать ваше ядро только до необходимых сервисов, особенно если вы используете сервер или выделенное устройство, которое требует только самого необходимого. Вам также может потребоваться установить исправление ядра для поддержки оборудования, которое в настоящее время не поддерживается ядром, на котором вы работаете..
В этой статье не объясняется, как патчить ваше ядро, а как настроить текущее ядро. У меня будет еще одна статья, в которой объясняется, как исправить ваше ядро, и некоторые практические причины, почему вы захотите это сделать.
Для начала нам нужно выяснить, какая версия ядра у нас работает. Мы будем использовать команду uname для этого
$ uname -r
2.6.17-10-родовой
Теперь нам нужно установить исходный код linux для вашего ядра, обратите внимание, что я использую ядро 2.6.17-10, так что строка установщика отражает это. Для целей этой статьи вы можете заменить номер ядра тем, что вы используете. Нам также нужно установить библиотеку curses и некоторые другие инструменты, которые помогут нам скомпилировать.
sudo apt-get установить linux-source-2.6.17 пакет ядра libncurses5-dev fakeroot
Если вам интересно, куда устанавливается исходный код linux, вы можете использовать команду dpkg, чтобы сообщить вам файлы в пакете. Вот вывод на моей системе:
$ dpkg -L linux-source-2.6.17
/.
/ USR
/ USR / SRC
/usr/src/linux-source-2.6.17.tar.bz2
/ USR / доли
/ USR / доли / док
/usr/share/doc/linux-source-2.6.17
(Обрезается)
Мы можем видеть, что источник был установлен в каталог / usr / src в заархивированном файле.
Чтобы упростить задачу, мы переведем себя в корневой режим с помощью sudo для открытия новой оболочки. Есть другие способы сделать это, но я предпочитаю этот способ.
sudo / bin / bash
Теперь измените каталог на исходное местоположение, чтобы мы могли установить. Обратите внимание, что вам может понадобиться установить утилиту bunzip, если она не установлена. (это было на моем)
CD / USR / SRC
bunzip2 linux-source-2.6.17.tar.bz2
tar xvf linux-source-2.6.17.tar
ln -s linux-source-2.6.17 linux
Сделайте копию существующей конфигурации ядра, чтобы использовать ее для пользовательского процесса компиляции. Обратите внимание, что символ 'тот, что ниже тильды ~
cp / boot / config-'uname -r '/usr/src/linux/.config
Теперь мы запустим утилиту, которая позволит нам настроить ядро:
cd / usr / src / linux
сделать menuconfig
Сначала перейдите к Загрузке альтернативного файла конфигурации и загрузите файл .config. (просто нажмите Enter)
Теперь, когда мы находимся внутри утилиты, мы можем установить параметры для нашего собственного ядра. Навигация довольно проста, наверху есть легенда, если вы заблудились. Я решил выбрать сеть и нажал клавишу Enter, чтобы перейти в эту категорию.
Поддержка радиолюбителей? Для чего, черт возьми, это установлено? * Вы заметите, что он встроен в ядро.
Нажимая на? ключ, мы можем увидеть помощь для этого конкретного элемента. Вот объяснение:
Ну, я собираюсь отключить это немедленно. С какой стати это все-таки установлено в моем ядре? Я нажимаю Esc, чтобы выйти из экрана справки, а затем нажимаю N, чтобы исключить это из моего ядра..
Когда вы закончите делать любой выбор, нажмите Выход и сохраните конфигурацию при появлении запроса..
Теперь у нас есть готовая конфигурация для компиляции. Сначала мы сделаем make clean, просто чтобы убедиться, что все готово для компиляции.
make-kpkg clean
Далее мы фактически скомпилируем ядро. Это займет много времени, так что иди найти что-нибудь интересное, чтобы сделать.
fakeroot make-kpkg -initrd -append-to-version = -custom kernel_image kernel_headers
Этот процесс создаст два файла .deb в / usr / src, которые содержат ядро. Файл linux-image **** представляет собой фактический образ ядра, а другой файл содержит файлы, которые можно установить с помощью dpkg. Возможно, имена файлов в вашей системе будут другими.
Обратите внимание, что при запуске этих следующих команд новое ядро будет установлено в качестве нового ядра по умолчанию. Это может сломать вещи! Если ваша машина не загружается, вы можете нажать Esc в меню загрузки GRUB и выбрать старое ядро. Затем вы можете отключить ядро в /boot/grub/menu.lst или попробовать снова скомпилировать.
dpkg -i linux-image-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
dpkg -i linux-headers-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
Теперь перезагрузите вашу машину. Если все работает, вы должны запустить свое новое ядро. Вы можете проверить это с помощью uname. Обратите внимание, что точное число будет отличаться на вашей машине.
uname -r
2.6.17.14-ubuntu1-заказ
Я планирую написать серию статей по настройке ядра, поэтому подписывайтесь на RSS-канал для получения обновлений..
Кроме того, в интересах полного раскрытия я узнал, как это сделать, из статьи в HowtoForge, который является отличным веб-сайтом для некоторых очень продвинутых руководств по Linux. Вы заметите, что многие шаги в этой статье похожи, хотя я попытался сделать эту статью более «Ubuntu».