Instalación de programas en Linux - Recompilar el kernel

6 - Recompilar el kernel

[editar]
Curso gratis creado por Nautopia.net. Extraido de: http://www.nautopia.net
18 de Septiembre de 2005
Podemos usar este script para recompilar el kernel con unos sencillos pasos(sencillos si no tenemos ningún problema de dependecias previo :) o podemos empezar por bajarnos las fuentes a mano. Al descomprimirlas se suelen instalar en la carpeta /usr/src, creando una carpeta con el nombre linux y la versión bajadas. Nos metemos dentro de la carpeta y comenzamos la configuración/compilación.

make oldconfig

Si hemos bajado las fuentes de una versión más nueva del kernel que la que tenemos instalada, al ejecutar este comando se nos harán preguntas sobre si queremos incoporar las nuevas funciones que el nuevo kernel trae con respecto al anterior. Recordad lo dicho antes sobre la programación minimalista en el kernel, si no se van a utilizar no las incluyais(si no estais seguros hacedlo y consultad la ayuda después en el menu para decidir si incluirlas o no).

make menuconfig

Con este comando accederemos a un menu basado en ncurses(unas librerías) para configurar como deben de ser incluídas las funciones que trae nuestro kernel(o que hemos elegido añadir con el comando anterior). Aquí podeis ver una imagen del menuconfig de un kernel 2.4

 

menuconfig

 

No vamos a explicar aquí los diferentes apartados para configurar el kernel porque necesitaríamos un artículo para cada uno, sólo decir que cuando veamos una característica precedida de corchetes ([]), es que se puede compilar empotrándolo en el kernel([*]) o como módulo cargable bajo demanda([M]). Si pulsamos la tecla ? en alguna carácterística nos aparecerá una breve descripción de ésta que puede ser muy útil para saber si es necesario en caso de duda. Tenemos que configurar el soporte para nuestro hardware en Device Drivers, por lo tanto es muy útil saberlo de antemano, Para ellos, nos podemos valer de la salida de lspci o de lo que podamos ver con dmesgpara ver dispositivos pci o podemos apuntar el hardware si tenemos Windows antes de configurar. Otra cosa imprescindible a configurar es la sección File Systems. Tened en cuenta que lo que configureis como módulo deberá ser cargado luego antes de utilizarlo, bien añadiéndolo en el archivo que indica que módulos se deben cargar en el inicio o con modprobe. Una vez configurado nuestro kernel, grabamos la configuración y pasamos a la generación de los binarios.

make dep

Este comando sólo es aplicable a kernel 2.4.x o más antiguos y construye los archivos de dependencias para los módulos que el kernel necesita para cargarlos. Si nos da un error aquí deberemos resoverlas antes de continuar. Por ejemplo, alguna vez os puede dar algún error al incluir un dispositivo dummy como módulo, en ese caso quitadlo ya que no es necesario para el funcionamiento del kernel.

make bzImage

Construye el binario a partir de las fuentes de nuestro kernel configuradas y será lo que luego cargue nuestro gestor de arranque para iniciar nuestro sistema operativo.

make modules

Este comando construye los módulos que hemos seleccionado como tales en el sistema al configurar nuestro kernel.

make modules_install

Instala los módulos compilados, típicamente en una ruta dentro de /lib/modules

La secuencia de compilación del kernel ha variado con las nuevas versiones 2.6.x, quedando así

Ej para kernels 2.4.x:

# make dep & make bzImage modules modules_install
Ej para kernels 2.6.x:
# make & make modules_install
Una vez hecho esto copiamos los archivos System.map, .config y arch/Nuestraarquitectura/bzImage con una coletilla que nos permita identificar a que versión pertenecen y no confundirlos en caso de tener varios kernels a la partición desde la que serán buscado por el gestor de arranque(típicamente /boot)

Ej:

# cp System.map /boot/System.map-2.4.25
# cp .config /boot/.config-2.4.25
# cp arch/i386/boot/bzImage /boot/kernel-2.4.24
Tras añadir las opciones al gestor de arranque y reiniciar podremos elegir el nuevo kernel y arrancar con él el sistema. Si no vemos ningún error durante el inicio del sistema, es que lo hemos configurado bien(así debe ser).
[editar]

2 opiniones

Preguntas.

Por favor le ruego mi disculpas y es que necesito saber si para comenzar el linux se debe tener un programa especial en computadora que se debe hacer como se aplica cual seria el programa y si con mi desconocimiento en esto lo ouedo aolicar yo o debo buscar apoyo en otra persona que tenga mas conocimiento. Gracias por su atencion y disculpe por favor.
Instalacion de programas en linux.

Me parece una excelente guia.

Cursos gratis relacionados con 'Instalación de programas en Linux'

Algunas nociones sobre instalación de programas, el kernel y módulos en Linux que os harán... Más »
Manual Compacto para nuevos usuarios.
Un exhaustivo conjunto de ensayos y artículos que recorren la década de 1990 y los... Más »
Para mi tanto los hackmeetings como los hacklabs representan una interesantísima y fructífera tensión-interacción entre... Más »
Para proteger nuestra navegación y filtrar la publicidad disponemos en el mundo windows de los... Más »

Autor y licencia de 'Instalación de programas en Linux'


Curso gratis de Nautopia.net. Extraido de: http://www.nautopia.net CopyLeft
Debe reconocer los créditos de la obra de la manera especificada por el autor o el licenciador.
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.