Está en la página 1de 12

Regional Meta

Centro de Industria y servicios del META

ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE CMPUTO Y REDES.

Teleinformtica 2011

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

SERVICIOS DE RED CON S.O.

Presentado por: JEISSON HUMBERTO HERNANDEZ

Presentado a: IVAN DARO DUARTE BRITO

SERVICIO NACIONAL DE APRENDIZAJE SENA TEG EN ADMON DEL ENSAMBLE Y MTTO DE PC Y REDES VILLAVICENCIO-META 2011
Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

INTRODUCCION
Cuando hablamos de "Linux" es frecuente referirnos al sistema operativo y sus aplicaciones y no al ncleo del sistema. La realidad es que Linux es solamente el ncleo del sistema (tambin denominado kernel): componente de gran envergadura que hace operar nuestra computadora. reciben gran cantidad de actualizaciones en poco tiempo. Dichas actualizaciones comnmente contienen nuevos mdulos, mejoras de seguridad, administracin de recursos y muchas otras caractersticas. Muchas veces surgen dudas acerca de la necesidad de compilar el kernel cuando liberan una nueva versin: no debemos dudar, solamente se compila una nueva versin de kernel cuando tenemos dispositivos de hardware muy recientes y nos vemos forzados a migrar hacia una versin que incluya mdulos para el soporte de este. Otra razn se basa en que poseemos una versin muy antigua y optamos por actualizarlo para tener mejoras en la administracin de memoria, procesos, recursos, etc. Actualmente ocurre esto con la rama 2.4 y 2.6 del kernel Linux; algunos servidores poseen la 2.4 y compilan la versin de la rama (2.6.X) con el objetivo de mejorar la administracin de recursos, ya que esta ltima es ms eficaz. El kernel NO se actualiza, si deseas una nueva versin debes descargarla de la pgina oficial del proyecto y compilarla. Tambin puedes buscar un paquete (por ejemplo en los repositorios de Debian) con una versin ya compilada para tu arquitectura de hardware; evitando la tarea de compilar y desaprovechando la optimizacin del sistema.

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

OBJETIVOS
Aprender a compilar e instalar un kernel nuevo para el servidor, manejando los comandos adecuados, instalando los paquetes correspondientes y verificando su uso posteriormente. Conocer las extensiones de archivo utilizadas en las diferentes distro de Linux. Conocer la importancia de actualizar un kernel en Linux y la forma de configurarlo para que se configure de acuerdo a los requerimientos de la maquina.

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

Control del Documento


Nombre Autores JEISSON HERNANDEZ Cargo Aprendiz Tema Dependencia Centro de Industria y servicios del META Firma FIRMA Fecha

Servicios de red con S.O.

1. Descargando y desempaquetando el kernel


En principio, para compilar un kernel es evidente que debes descargar el cdigo fuente del mismo. Para eso ingresamos en la pgina oficial del proyecto donde se encuentran todos los kernel oficiales de Linux, desde la primera versin hasta la ltima. Cuando los descarguemos vendr empaquetado y comprimido en alguno de los siguientes formatos: .tar.bz2 o .tar.gz . Es indiferente cual se descarguen, explicar como descomprimir y desempaquetar ambos tipos de formato. Lo tradicional es descomprimir el kernel en el directorio /usr/src, sin embargo no olvides que tienes la libertad de hacerlo en donde caprichosamente desees. En el momento de escribir el artculo la versin del kernel es 2.6.15 y la desempaquete y descomprim en /usr/src, directorio donde se trabaja para todo lo referente con el kernel y los mdulos. Para quienes se descargaron el .tar.gz : tar xvzf linux-2.6.15.tar.gz Para quienes se descargaron el .tar.bz2: tar xvjf linux-2.6.15.tar.bz2 Notar la j para el de extensin .tar.bz2 Luego necesitamos ingresar al directorio donde se descomprimi y desempaquet el kernel para poder configurarlo y compilarlo, ingresamos al directorio: cd linux-2.6.15

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

2. Configurando el kernel
Una vez dentro del directorio, necesitamos limpiarlo de todo archivo de configuracin que tenga. NOTA: Podemos obviar este paso para la primera vez que nos lo descarguemos, ya que este viene completamente listo para compilar. Pero una vez que terminas la compilacin y por cualquier razn quieres volver a compilarlo, no es necesario que tengas que descomprimirlo y desempaquetarlo de nuevo, puedes reutilizar ese mismo cdigo y es all cuando tienes que eliminar (limpiar) todos los archivos que se generaron con la compilacin anterior. Para "limpiar" los fuentes del kernel: make mrproper Ahora debemos configurarlo, esto quiere decir decidir cuales mdulos deseamos que tenga (o que no tenga) una vez compilado. Como es caracterstico del Software Libre: tenemos varias maneras de hacer las cosas, hablemos sobre 3 formas de configurar el kernel: 1era alternativa: make config <-- Hay que tener algo de experiencia, si no la tienes no te recomiendo seguir este camino ya que hace muchas preguntas de hardware. 2da alternativa: make menuconfig <-- Es muy cmodo hacer la configuracin por este mtodo porque posees un men muy sencillo he interactivo. NOTA: Necesitas tener instalado las las libreras ncurses, en debian: aptitude install libncurses5-dev 3ra alternativa: make xconfig <-- Debes tener instalado y en funcionamiento el servidor X, ya que toda la configuracin se hace grficamente (haciendo uso del sistema de ventanas). NOTA: Necesitas tener instaladas las libreras QT, en debian aptitude install libqt3-dev Para la configuracin utilizar la segunda alternativa, es decir, make menuconfig, como lo hago siempre. Ests en la libertad de utilizar la que quieras. Sin embargo te recomiendo el segundo mtodo debido a que no
Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

necesitas estar en entornos de escritorio ni tener funcionando el servidor X, adems que tiene una interfaz muy simple e interactiva. Para comenzar la configuracin: make menuconfig Cuando se dediquen a configurar el kernel recuerden ser muy precavidos seleccionando o habilitando los mdulos. Si tenemos dispositivos como FlashDrive (o Pendrive) es indefectible activar el soporte SCSI (especficamente soporte para discos SCSI), ya que estos son emulados como discos SCSI en Linux. Si desactivas el soporte para CDROM, evidentemente la unidad de CDROM no funcionara una vez instalado. De igual manera pasa si desactivamos el soporte USB, no funcionara todo los que conectemos por el puerto USB.

3. Compilando
Terminada la configuracin del kernel lo compilaremos. Debido a que lo estamos haciendo a la Debian way es necesario que tengamos instalado un paquete llamado kernel-package, el cual suministrar las herramientas necesarias para poder compilar y generar el paquete con nuestro kernel, para instalarla: aptitude install kernel-package. Antes de comenzar la compilacin debemos estar en el directorio donde se encuentra el cdigo fuente del kernel y luego ejecutar lo siguiente: make-kpkg clean make-kpkg --initrd kernel_image kernel_headers Los que hayan compilado un kernel de Linux este comando equivale a: make dep, make clean, make bzImage y make modules La opcin --initrd crea una imagen initrd en el paquete que se guardar en /boot cuando instalemos el kernel (recordar que solo estamos compilando y empaquetando, no instalando). El comando anterior crear dos paquetes con extensin .deb en el directorio superior. Un paquete ser el kernel y el otro los kernel-headers.
Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

La opcin de kernel_headers es opcional, yo la utilizo debido a que muchos programas y mdulos (ver la seccin Gestin de mdulos) necesitan tener los headers del kernel que se est usando para poder ser instalados, ejemplo: el driver de nvidia, VMware, ndiswrapper, madwifi, otros. NOTA: El tiempo de compilacin es proporcional a la configuracin que hayas hecho y a tu poder de computo. Si incluiste muchjos mdulos se demorar ms. Hay que tener paciencia, es muy frecuente que se tarde bastante.

4. Instalndolo
Una vez que termina la compilacin y es corroborada la existencia de los dos paquetes en el directorio superior es el momento de instalarlo. La instalacin es muy trivial, debemos ejecutar en el directorio donde estn los paquetes: dpkg -i TU_KERNEL.deb dpkg -i TU_KERNEL-HEADERS.deb Por ejemplo, en mi caso fue as: dpkg -i kernel-image-2.6.15_10.00.Custom_i386.deb dpkg -i kernel-headers-2.6.15_10.00.Custom_i386.deb Felicitaciones! Con esto terminas la instalacin del kernel, ya podras reiniciar la mquina e iniciar con tu nuevo kernel.

5. Gestionando mdulos
5.1. Module Assistant - Compilando y agregando mdulos Module Assistant es una herramienta para la gestin de mdulos ya empaquetados (preparadas sus fuentes con un debian/rules) para Debian. Nos permite compilar, construir e instalar mdulos del kernel sin necesidad de reiniciar el computador ni recompilar el kernel. No olvidar que permite

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

gestionar slo los mdulos que estn preparados para Debian (y derivados, p.e Ubuntu). Debes tener los headers de nuestro kernel Para entender su funcionamiento se elaborar un ejemplo con algn mdulo. Arbitrariamente escog uno que permite hacer uso de cualquier tarjeta inalmbrica que implemente chipset atheros (por ejemplo mi tarjeta inalmbrica LanPro :-). Los mdulos de madwifi nos habilitarn el soporte para estas tarjetas, por lo que debemos agregar los mdulos de madwifi. Ya dichos mdulos vienen preparados para debian y se encuentran en los repositorios oficiales (en la seccin de non-free). Debemos instalar (descargar) el cdigo fuente del mdulo madwifi, para eso instalaremos el paquete madwifi-source el cual trae empaquetado las fuentes de estos mdulos. Motivo que es condicin sine qua non que el mdulo deba estar preparado para debian, es frecuente que la mayora de los que queramos instalar estn en los repositorios oficiales de Debian. aptitude install madwifi-source Se descargar e instalar el paquete con las fuentes de los mdulos en /usr/src/modules/madwifi. Si ingresan al directorio de las fuentes podrn notar una carpeta debian/, la cual contiene las reglas para la construccin del paquete. Por eso hice tanta referencia en que module-assistant debe ser usado para mdulos preparados nicamente para debian o derivados. m-a prepare madwifi El argumento prepare determinar si tenemos todo lo necesario para la compilacin del mdulo, si no, module-assistant se encarar de instalar lo que haga falta. Es muy tpico que nos falten los cabeceras del kernel (kernelheaders), ya estas se se necesitan para construir todos los mdulos (no slo de madwifi). Una vez corroborado por m-a que tenemos todo lo necesario para compilar el mdulo procedemos a compilarlo: m-a build madwifi La compilacin generar un paquete .deb (paquete de debian) el cual contiene el mdulo para nuestro kernel, lo que faltara es instalar el paquete y cargar el mdulo para usarlo (no hace falta reiniciar el computadora).

Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

m-a install madwifi Con esto ya tienes el mdulo instalado y listo para funcionar funcionar. El ltimo comando lo que hace es instalar el paquete .deb al que hicimos referencia anteriormente. Ya el mdulo est instalado, faltara cargarlo (en la mayora de los sistemas de carga al conectar la tarjeta). modprobe ath_pci Consulta la seccin de tips para encontrar una manera mas resumida de ejecutar todos estos pasos ;-) 5.2. Mdulos no preparados para Debian Es muy probable que en la seccin anterior se hayan preguntado que hacer con los mdulos no preparados para debian: si hay solucin para ellos, slo que es un poco ms laboriosa y tedioso el proceso. De igual manera tomar un ejemplo para explicar los pasos a seguir. Hace unos meses publicaron un exploit que permita a cualquier usuario del sistema obtener privilegios de administracin (root). Como es caracterstico de la mayora de las aplicaciones de gran envergadura en el mbito de Software libre, el parche para corregir esta vulnerabilidad se desarroll prcticamente enseguida. El exploit se llama "vmsplice" y el parche (era un mdulo realmente) consista en un mdulo que cargabas que impeda el funcionamiento del exploit.

6. Aplicar parches al kernel


Para aplicar un parche hacemos uso del programa patch. Es probable que lo tengamos instalado, de no ser as: aptitude install patch Una vez instalado se puede aplicar el parche distintas formas: 6.1. A la manera Debian
Nombre del aprendiz numero de ficha y NIS

Regional META Centro de Industria y servicios del META ADMINISTRACIN DEL ENSAMBLE Y MANTENIMIENTO DE EQUIPOS DE COMPUTO Y REDES

Fecha:

Sistema de Gestin de la Calidad

Una vez descargado el parche (normalmente un archivo .patch) lo copiamos al directorio donde estn las fuentes del kernel (depende donde no los hayamos descargado, siguiendo el tutorial: /usr/src/linux-version) y al compilarlo agregar: make-kpkg --initrd --added-patches=MI-PARCHE.patch kernel_image kernel_headers make-kpkg se encargar de aplicar el parche y compilar nuevamente el kernel, notar que es le mismo comando (make-kpkg) que hemos venido usando a lo largo del tutorial. Adjunto al argumento --added-patches= debers colocar, separado por comas, los parches a aplicar al kernel. 6.2. A la manera tradicional Lo descargamos y copiamos donde estn las fuentes del kernel y ejecutamos: patch -p0 < nombre-del-parche.patch Finalmente recompilamos el kernel siguiendo los pasos del tutorial. Todos los kernels que han existido se encuentran en: http://kernel.org/pub/linux/kernel

Nombre del aprendiz numero de ficha y NIS

También podría gustarte