Compilacion del Kernel a la Debian

download Compilacion del Kernel a la Debian

If you can't read please download the document

Transcript of Compilacion del Kernel a la Debian

  1. 1. Compilacin del Kernel, al estilo Debian
      • Por: Stefan Cisko Rivera
      • [email_address]
  2. 2. Qu es el Kernel?
    • El kernel es el componente ms importante y es quien hace funcionar todo el sistema, sin el kernel no podra funcionar ninguna otra aplicacin.
    • Algunas de las funciones del kernel son:
    • Administrar la memoria del computador
    • Establecer la comunicacin entre las aplicaciones y los dispositivos de hadware
    • Administrar los procesos
    • Otros
    Francisco Cisko Rivera
  3. 3. Por qu compilar el Kernel? Francisco Cisko Rivera Es til recompilar un kernelporque trabajando con kernels nuevos generalmente se obtiene: 1. Un sistema ms rpido, estable y robusto. 2. Un sistema con soporte a elementos de hardware no encontradoen kernels viejos. 3. Un sistema con soporte a caractersticas especiales disponiblespero no habilitadas en kernels viejos. Recompilar el kernel de Linux no es ms que personalizar el kernel y como con cualquier aplicacin, la personalizacin se hace para sacar un mayor provecho de las diferentes caractersticas que ofrece el software.
  4. 4. Por qu compilar a la Debian? Francisco Cisko Rivera
    • Empaquetamos, generando un archivo .deb
    • Fcil eliminacin cuando se desee dpkg -r tu_kernel ocon apt-get, aptitude, synaptic.
    • Fcil almacenamiento.
    • Fcil instalacin
    • Todo es mas fcil...
  5. 5. Preparacin Francisco Cisko Rivera # apt-get install kernel-package ncurses-dev bzip2 module-init-tools initrd-tools procps Nos aseguramos de tener las herramientas necesarias, pueda ser que algunas ya las tengamos.
  6. 6. Obteniendo los fuentes del Kernel Francisco Cisko Rivera Existen bsicamente 2 formas de obtenerlo: 1- Repositorios Debian 2- Kernel.org
  7. 7. Obteniendo los fuentes del Kernel Francisco Cisko Rivera Repositorios Debian: # apt-get install kernel-source-x.x.x Nota sobre los nombres del Kernel en Debian: Los kernels 2.4 y 2.6 en su versin estable comienzan con kernel-source, mientras que los kernels 2.6 en su versin inestable comienzan con linux-source. Las fuentes del kernel sern almacenadas en /usr/src como un archivo bz2.
  8. 8. Obteniendo los fuentes del Kernel Francisco Cisko Rivera Kernel.org Los kernel standards son liberados enhttp://www.kernel.org . Aca se guardan todos los kernels y sus parches. Asi por ejemplo para descargar el kernel 2.6.19.2 lo hacemos con la siguiente URL: http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.19.2.tar.bz2 El archivo descargado lo moveremos, como root, a /usr/src para su manejo.
  9. 9. Desempacando nuestro kernel Francisco Cisko Rivera Cambiar de directorio a /usr/src # cd /usr/src Revisamos si nuestro archivo kernel est donde debe de estar: # ls -la Deberamos ver algo como: -rw-r--r-- 1 root root 39315716 2006-03-06 12:32 linux-source-2.6.19.2.tar.bz2 Desempaquetamos: # tar xjf linux-source-2.6.15.tar.bz2 Esto puede tomar unos cuantos segudos y luego entramos al directorio: # cd linux-source-2.6.19.2
  10. 10. Configurando nuestro Kernel Francisco Cisko Rivera Existen dos formas de configurarlo: 1- Desde consola: # make menuconfig 2- Graficamente # make xconfig Nota: para la forma grfica tendremos que tener instaladas las librerias QT # apt-get install libqt3-mt-dev
  11. 11. Configurando nuestro Kernel Francisco Cisko Rivera Leyenda [ ] Caracterstica puede ser compilada directamente dentro del kernel < > Caracterstica puede ser compilada como modulo o directamente dentro del kernel [*] / Compilar directamente dentro del kernel Compilar como mdulo
  12. 12. Configurando nuestro Kernel Francisco Cisko Rivera Las opciones bsicas que nos presenta el men de configuracin del kernel son: Code Maturity level options ( Opciones de nivel de madurez del codigo ) General Setup ( Configuracin general ) Loadable modules support ( Soporte de mdulos cargables ) Block Layer ( Capa de bloques ( se refiere a los dispositivos de bloques ) ) Processor type and features ( Tipo de procesador y caractersticas )Power Management Options ( Opciones de manejo de energa )Bus Options (PCI, etc.) ( Opciones de bus ( PCI, etc. )Executable File Formats / Emulations ( Formatos de archivo ejecutable / Emulaciones ) Networking ( Redes ) Device Drivers ( Controladores ( Drivers ) de dispositivos )Firmware Drivers ( Controladores de Firmware ) File Systems ( Sistemas de archivos )Instrumentation Support ( Soporte de instrumentacin ) Kernel Hacking ( 'Hacking' del kernel ) Security Options ( Opciones de seguridad ) Cryptographic Options ( Opciones Criptogrficas ) Library routines ( Rutinas de libreras ) ----- Load an Alternate Configuration File ( Cargar un archivo de configuracin alternativo ) Save Configuration to an Alternate File ( Grabar la configuracin en un archivo alternativo )
  13. 13. Compilando nuestro Kernel Francisco Cisko Rivera Cuando terminemos de configurar nuestro kernel, podemos seleccionar Exit o ESC, respondiendo YES cuando nos pida guardar la nueva configuracin (.config). Para comenzar a compilar lo hacemos con los siguientes comandos: Nota, make dep es unicamente para kernels 2.4x. # make dep # make-kpkg clean # make-kpkg kernel_image Alternativamente puedes generar los headers y agregar un flag de tu revisin propia (puede ser cualquier cosa, excepto caracteres raros y espacios # make-kpkg --revision=cisko.0.1 kernel_image kernel_headers Tambien, alternativamente podemos generar la imagen initrd (la gran mayoria tiene que hacerlo). # make-kpkg --revision=cisko.0.1 kernel_image kernel_headers --initrd
  14. 14. Compilando nuestro Kernel Francisco Cisko Rivera A esta altura vers muchas lneas de cdigo pasando por tu consola y si todo fue bien encontrars los archivos .deb generados por tu compilacin: /usr/src/kernel-image-2.6.19.2-X.deb /usr/src/kernel-headers-2.6.19.2-X.deb
  15. 15. Instalando nuestro Kernel Francisco Cisko Rivera # dpkg -i kernel-image-2.6.19.2-X.deb# dpkg -i kernel_headers-2.6.19.2-X.deb Esto instalar nuestro kernel, agregar la opcin en nuestro GRUB y generar el initrd RAM correspondiente.. es decir, se encarga de hacer todo por nosotros. Reiniciamos... y cruzamos los dedos!
  16. 16. Gracias por su Atencin! Porque de tal manera am Dios al mundo que di a su hijo unignito, para que todo aquel que en l crea, no se pierda mas tenga vida eternaJuan 3:16
    • Stefan Cisko Rivera
    • [email_address]
    • http://pcamaleon.org
    • Asociacin de Usuarios Linux
    • de El Salvador
    • http://www.linux.org.sv
    • Comunidad de Usuarios Debian
    • de El Salvador
    • http://www.debian.org.sv