Compilar el kernel en Ubuntu
- Feb
- 13
3 comentarios! 569 palabras - 1 hits
Pasos necesarios para compilar el kernel en Ubuntu
Compilar el kernel de linux es uno de los pasos mas importantes para personalizar el sistema de forma que este optimizado para el hardware que utilizamos.
Este proceso se debería realizar al finalizar la instalación del sistema y cada vez que cambiemos una pieza de hardware.
Aunque el método para compilar el núcleo se ha simplificado mucho, es fácil cometer errores al seleccionar las opciones, y en consecuencia compilar una imagen que no termine de arrancar el sistema. Para evitar quedarnos en un punto muerto recomiendo tener siempre instalado un kernel “oficial” ademas del que estemos personalizando.
Dicho esto, pasemos a la acción, todos los comandos tenemos que ejecutarlos como “root”, bien utilizando la instruccion “sudo” antes de cada sentencia o ejecutando “sudo su -“. Yo utilizo el segundo metodo asi no tengo que estar escribiendo el “sudo” cada vez.
1. Dependencias
Para empezar tenemos que instalar algunos paquetes que son necesarios, aptitude install kernel-package libncurses5-dev fakeroot wget bzip2
Una vez instalados, opcionalmente, podemos editar el fichero /etc/kernel-pkg.conf y personalizarlo con nuestros datos.
2. Elegir la fuente del kernel
Este paso es bastante personal, en algunas ocasiones utilizo las fuentes que proporciona la distribución y en otros prefiero descargar las fuentes mas actualizadas de kernel.org.
2.1 Fuentes oficiales
Si prefieres compilar el kernel “optimizado” para ubuntu, solo tenemos que hacer aptitude install linux-source este comando descargara el archivo comprimido con la fuente del kernel al directorio /usr/src/.
Lo interesante de este método es que la fuente del kernel contiene los parches realizados por los desarrolladores de Ubuntu.
2.2 Fuentes no oficiales
Como decia en algunos casos necesitamos instalar la ultima version del kernel estable, en el momento de escribir este documento estamos en la rama 2.6 y la ultima version estable es la 2.6.20
- cd /usr/src
- wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.tar.bz2
3. Configurar el kernel
Una vez tenemos las fuentes descargadas en el directorio /usr/src/ pasamos a descomprimirlas para crear la estructura por defecto.
- tar xfjv linux-2.6.****.tar.bz2
- ln -s linux-2.6.**** linux
- cd /usr/src/linux
A continuación copiamos la configuración del kernel que tenemos funcionando, cp /boot/config- y ejecutamos uname -r ./.configmake menuconfig para lanzar la interfaz de configuración en la consola.
Para cargar los parámetros de nuestro actual kernel, pasamos a la penúltima opción de la interfaz “Load an Alternate Configuration File” y pulsamos Intro dos veces.
Ahora toca elegir opciones, una vez finalizamos de personalizar esta imagen pulsamos exit hasta que nos pregunte si queremos salvar la configuracion, a lo que evidentemente tenemos que decir que si.
4. Compilar
Casi el ultimo paso, compilar la nueva imagen, tan sencillo como ejecutar estos dos comandos,
- make-kpkg clean
- fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
Dependiendo de los recursos de la maquina este proceso puede durar unas cuantas horas, por poner un ejemplo, un PIII a 933Mhz con 512Mb de ram ha tardado unos 45 minutos en el proceso.
5. Instalar el kernel
Una vez terminado el proceso de compilación solo queda instalar la nueva imagen y reiniciar,
- dpkg -i linux-image-2.6.****.deb
- dpkg -i linux-headers-2.6.****.deb
6. Drivers de vídeo
Si hemos decidido compilar la ultima versión del kernel es mas que probable que tengamos problemas a la hora de encontrar drivers para el hardware de vídeo, si utilizas una tarjeta nvidia o ati, es mas que recomendable instalar previamente el paquete envy que permite compilar/instalar los drivers oficiales con un par de comandos.
3 comentarios
# Escrito por linkan hace 3 años
disculpa de donde puedo bajar las actualizaciones desde windows ya que todacia no puedo conectarme a internet desde ubuntu. gracias
# Escrito por Anonymous hace 2 años
hola! muy buena guia, es muy facil de entender.
una pregunta no es conveniente hacer una copia del kernel de la maquina antes de descomprimir el kernel nuevo? digo porque el kernel nuevo de descomprime por defecto en “linux” y sobreescribe el anterior y no se prodria recompilar el nucleo antiguo, se habria perdido la configuración original, etc…
espero tu respuesta, gracias!
# Escrito por Mora hace 8 meses
Pues yo lo estoy recompilando para ver si logro montar las memory stick de Sony. A ver si tengo suerte y me funciona.