Debian y el núcleo

¿Qué herramientas proporciona Debian para crear núcleos personalizados?
Se recomienda a todos aquellos usuarios que deseen (o necesiten) compilar un núcleo personalizado que obtengan el paquete kernel-package (que se encuentra en la sección misc en los sitios FTP de Debian). Este paquete contiene el script necesario para compilar el núcleo, y permite crear un paquete Debian kernel-image sólo con la ejecución de la orden make-kpkg kernel_image en el directorio principal de los fuentes del núcleo. Hay disponible una ayuda ejecutando la orden make-kpkg --help, y en la página manual de make-kpkg(1).
Los usuarios deberán obtener separadamente el código fuente del último núcleo (o del núcleo que quieran) de su servidor de Linux favorito.
Para construir un núcleo personalizado, se deberán tener los siguientes paquetes instalados: gcc, libc6-dev, bin86, binutils, y make.
En el fichero /usr/share/doc/kernel-package/README.gz se dan instrucciones detalladas del uso del paquete. Resumidamente se debe:
Descomprimir los fuentes del núcleo, y hacer un cd al directorio recién creado.
Modificar la configuración del núcleo usando una de las siguientes órdenes:
make config (para terminales, con un interfaz línea-a-línea).
make menuconfig (para un interfaz por menús basado en ncurses). Observe que para usar esta opción debe estar instalado el paquete libncurses5-dev.
make xconfig (para un interfaz X11). Para usar esta opción se requiere tener instalados los paquetes relevantes de X.
Cualquiera de los pasos anteriores genera un nuevo .config en el directorio principal de los fuentes del núcleo.
Ejecutar la orden: make-kpkg -rev Custom.N kernel_image, donde N es un número de revisión asignado por el usuario. El nuevo archivo Debian así creado tendrá la revisión Custom.N, por ejemplo, kernel-image-2.4.27_Custom.1_i386.deb para el núcleo 2.4.27.
Instalar el paquete creado.
Ejecute dpkg --install /usr/src/kernel-image-VVV_Custom.N.deb para instalar el núcleo. El script de instalación,
ejecutará el cargador de arranque, LILO (si está instalado),
instalará el núcleo personalizado en /boot/vmlinuz_VVV-Custom.N, y establecerá los enlaces simbólicos apropiados a la nueva versión del núcleo.
preguntará al usuario si quiere hacer un disquete de arranque. Este disco de arranque contendrá sólo el núcleo. Mire las notas adicionales sobre la creación de un ¿Cómo puedo crear un disco de arranque personalizado?.
Para usar otros cargadores de arranque (como loadlin), puede copiar esta imagen a otros lugares (por ejemplo, a una partición MS-DOS).

¿Cómo puedo crear un disco de arranque personalizado?
Esta tarea se facilita mucho con el paquete boot-floppies, que se encuentra normalmente en la sección admin de los archivos FTP de Debian. Los scripts de este paquete producen discos de arranque en el formato SYSLINUX. Son discos con formato MS-DOS cuyo master boot record (registro maestro de arranque) ha sido alterado para que arranque Linux (o cualquier otro sistema operativo que se haya definido en el fichero syslinux.cfg en el disquete) directamente. Otros scripts de este paquete sirven para producir discos root de emergencia y pueden incluso reproducir los discos base. Encontrará más información acerca de esto en el fichero /usr/share/doc/boot-floppies/README después de instalar el paquete boot-floppies.

¿Qué medios especiales proporciona Debian para el uso de módulos?
El paquete modconf de Debian proporciona un shell script (/usr/sbin/modconf) que puede usarse para personalizar la configuración de los módulos. Este script presenta un interfaz basado en menús, preguntando al usuario acerca de las particularidades de los controladores de dispositivos de su sistema. Las respuestas se utilizan para personalizar el fichero /etc/conf.modules (que lista alias y otros argumentos que deben usarse conjuntamente con algunos módulos), y /etc/modules (que lista los módulos que deben cargarse en el arranque). Al igual que los (nuevos) ficheros Configure.help que hay ahora disponibles para ayudar en la construcción de núcleos personalizados, el paquete modconf viene con una serie de ficheros de ayuda (en /usr/lib/modules_help/) que proporcionan información detallada sobre los argumentos apropiados para cada uno de los módulos.

¿Puedo desinstalar sin peligro un núcleo antiguo y, si es así, cómo?
Sí. El script kernel-image-NNN.prerm comprueba antes si el núcleo que está utilizando actualmente es el mismo que quiere desinstalar. Por lo tanto puede borrar paquetes de núcleos no deseados ejecutando la siguiente orden:

dpkg --purge --force-remove-essential kernel-image-NNN