Cómo personalizar tu kernel de Ubuntu

Hay muchas razones por las que te gustaría personalizar tu kernel. Es posible que desee reducir su núcleo a los servicios necesarios, especialmente si está ejecutando un servidor o dispositivo dedicado que solo requiere lo esencial.

La personalización del kernel no es para todos. Tenga en cuenta antes de intentar algo de esto que puede dañar su sistema.

Hay muchas razones por las que te gustaría personalizar tu kernel. Es posible que desee reducir su núcleo a los servicios necesarios, especialmente si está ejecutando un servidor o dispositivo dedicado que solo requiere lo esencial. También es posible que necesite parchear su kernel para admitir hardware que actualmente no es compatible con el kernel en el que se está ejecutando.

Este artículo no explicará cómo parchear su kernel, solo cómo personalizar su kernel actual. Tendré otro artículo de seguimiento que explica cómo parchear su kernel, y algunas razones prácticas por las que desea hacerlo.

Para comenzar, necesitamos averiguar qué versión del núcleo estamos ejecutando actualmente. Usaremos el comando uname para eso

$ uname -r

2.6.17-10-genérico

Ahora tenemos que instalar la fuente de Linux para su kernel, tenga en cuenta que estoy ejecutando el kernel 2.6.17-10, por lo que la línea del instalador lo refleja. Para los fines de este artículo, puede sustituir el número del kernel por lo que esté ejecutando. También necesitamos instalar la biblioteca curses y algunas otras herramientas para ayudarnos a compilar.

sudo apt-get install linux-source-2.6.17 kernel-package libncurses5-dev fakeroot

Si tiene curiosidad sobre dónde se instala la fuente de Linux, puede usar el comando dpkg para indicarle los archivos dentro de un paquete. Aquí está la salida en mi sistema:

$ dpkg -L linux-source-2.6.17
/.
/usr
/usr/src
/usr/src/linux-source-2.6.17.tar. bz2
/usr/share
/usr/share/doc
/usr/share/doc/linux-source-2.6.17
(recortado)

Podemos ver que la fuente se ha instalado en el directorio/usr/src en un archivo comprimido.

Para facilitar las cosas, nos pondremos en modo raíz utilizando sudo para abrir un nuevo shell. Hay otras formas de hacer esto, pero prefiero esta manera.

sudo/bin/bash

Ahora cambie el directorio a la ubicación de origen para que podamos instalar. Tenga en cuenta que es posible que deba instalar la utilidad bunzip si no está instalada. (estaba en el mío)

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

Haga una copia de su configuración de kernel existente para usarla en el proceso de compilación personalizado. Tenga en cuenta que el carácter `es el que está debajo de la tilde ~

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

Ahora lanzaremos la utilidad que nos permitirá personalizar el núcleo:

cd/usr/src/linux

hacer menuconfig

Primero, vaya a Cargar un archivo de configuración alternativo y cargue el archivo .config. (solo presiona enter)

Ahora que estamos dentro de la utilidad, podemos establecer las opciones para nuestro núcleo personalizado. La navegación es bastante simple, hay una leyenda en la parte superior si te pierdes. Decidí seleccionar Redes y presionar la tecla Intro para ir a esa categoría.

Soporte de radioaficionado? ¿Para qué demonios está instalado eso? Notarás por * que está integrado en el núcleo.

Al presionar el? clave, podemos ver la ayuda para ese artículo en particular. Aquí está la explicación:

Bueno, voy a desactivar eso de inmediato. ¿Por qué demonios está eso instalado en mi kernel de todos modos? Presioné Esc para salir de la pantalla de ayuda, y luego presioné N para excluir eso de mi núcleo.

Cuando termine de tomar las decisiones que desee, presione Salir y guarde la configuración cuando se le solicite.

Ahora tenemos una configuración lista para compilar. Primero haremos una limpieza, solo para asegurarnos de que todo esté listo para la compilación.

make-kpkg clean

A continuación, compilaremos el núcleo. Esto llevará mucho tiempo, así que ve a buscar algo interesante que hacer.

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

Este proceso creará dos archivos .deb en/usr/src que contienen el núcleo. El archivo linux-image **** es la imagen real del kernel, y el otro archivo contiene el archivo Puede instalar ambos con dpkg. Los nombres de los archivos probablemente serán diferentes en su sistema.

Tenga en cuenta que cuando ejecute estos siguientes comandos, esto establecerá el nuevo núcleo como el nuevo núcleo predeterminado. ¡Esto podría romper las cosas! Si su máquina no arranca, puede presionar Esc en el menú de carga de GRUB y seleccionar su núcleo anterior. Luego puede deshabilitar el núcleo en /boot/grub/menu.lst o intentar compilar nuevamente.

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

Ahora reinicie su máquina.Si todo funciona, debería estar ejecutando su nuevo núcleo personalizado. Puede verificar esto usando uname. Tenga en cuenta que el número exacto será diferente en su máquina.

uname -r

2.6.17.14-ubuntu1-custom

Planeo escribir una serie de artículos sobre la personalización del núcleo, así que suscríbase a la fuente RSS para recibir actualizaciones.

Además, en aras de la divulgación completa, aprendí cómo hacer esto del artículo en HowtoForge, que es un gran sitio web para algunos tutoriales muy avanzados en Linux. Notarás que muchos de los pasos en este artículo son similares, aunque intenté hacer que este artículo sea más «Ubuntu».

Rate article
labsfabs.com
Add a comment