9.1 9.1.1
Tareas Pre-Instalación El método de arranque
En los capítulos anteriores, se trataron los diversos pasos para prepararse para la instalación de los sistemas operativos Linux. Esto incluía determinar las necesidades de hardware y software así como la compatibilidad. También se trataron las diversas distribuciones de Linux y la elección de la distribución apropiada para la instalación. Después de tomar estas decisiones el siguiente paso es realmente comenzar a instalar el sistema operativo. Si recuerda de previos capítulos también, hay muchos métodos de instalación diferentes de los cuales elegir. Se puede instalar un sistema operativo mediante un disco booteable, CD-ROM o red (Web, ftp, NFS, SMB). Instalar Linux usando este método requerirá que el sistema se arranque primero usando diskettes booteables o un CD-ROM booteable. Estos discos a veces se empaquetan con la distribución Linux que se está instalando. Usar este método es útil para instalar esa distribución de Linux en particular solamente, así como llevar a cabo mantenimiento en el sistema. Este método también requiere que se haga la configuración apropiada primero en el BIOS del sistema. Hay una configuración en el BIOS que le indicará al sistema desde qué medio arrancar. Algunas de estas opciones son diskette, disco rígido, CD-ROM, una unidad de red que tiene los archivos almacenados en un servidor, o una unidad removible de alta capacidad como una unidad Jaz o Zip. La Figura proporciona un ejemplo de la pantalla de la sección del orden de dispositivos de Arranque en el BIOS. De estas opciones, por lo común las únicas que se usarán para arrancar un sistema son el diskette, el CD-ROM o un método de Arranque del OS Existente. Al arrancar el sistema usando una disquetera, el BIOS necesitará configurarse primero. Cada distribución deberá venir equipada con diskettes booteables. Si los diskettes no se incluyen, puede crearse uno. A veces el fabricante no incluye los diskettes booteables porque los CDs que contienen el OS son booteables y los discos no son necesarios. Este método se tratará a continuación. Una vez que las configuraciones apropiadas se han establecido en el BIOS, es necesario insertar el diskette en la unidad. El sistema necesitará iniciarse entonces, lo cual iniciará el proceso de instalación. Si los CDs son booteables, como en el caso del método del diskette, será necesario establecer las configuraciones apropiadas en el BIOS. Todo lo que se necesita hacer es insertar el CD en la unidad de CD-ROM o DVD-ROM e iniciar el sistema. En este punto la instalación debería comenzar. Otra forma de arrancar un sistema para comenzar el proceso de instalación es usando el método de arranque del OS existente. Ésta es una forma fácil de hacer una instalación si el OS será de arranque dual o si el OS existente actualmente en el sistema ha de reemplazarse. La mayoría de las distribuciones vienen con esta opción en los CDs de instalación. Lo único que necesita hacerse es insertar el CD en la unidad y el programa deberá iniciar automáticamente. El programa apagará el OS que está actualmente en ejecución. Cuando el sistema inicia, comenzará el proceso de instalación. 9.1.2
Medios de instalación
El primer paso en el proceso de instalación de Linux es determinar desde qué medio se llevará a cabo la instalación. Una variedad de opciones están disponibles para instalar Linux incluyendo CD, servidor de red, diskettes o desde un disco rígido que tiene los archivos del CD copiados en él. Este curso usa el método del CD.
La forma más fácil y rápida de hacer una instalación es mediante el CD de instalación. Actualmente cada distribución de Linux viene en CD. Algunas distribuciones, como SuSE Linux, incluyen algunos de sus archivos de instalación en DVD-ROM en lugar de en CD. En capítulos anteriores se hizo notar que SuSE Linux incluye prácticamente todos los paquetes disponibles. El DVD-ROM puede contener el equivalente de varios CD-ROMs, lo cual permite a SuSE Linux incluir todos esos paquetes. Un DVD-ROM sería necesario en lugar de un CD-ROM en este caso. Linux también puede instalarse desde una conexión de Red. Este método solamente se recomienda si hay una conexión de red rápida. El sistema tendrá que arrancarse desde un diskette primero, y luego elegir la opción instalar el OS mediante la conexión de red. La ruta hacia donde están ubicados los archivos de instalación necesitaría conocerse. Instalar Linux mediante la red es una buena opción cuando se instala en un sistema que no tiene un CD o DVD-ROM instalados. En este caso la unidad de CD-ROM de otro sistema de la red puede compartirse, conectándose a la unidad de CD-ROM de ese sistema mediante la red, puede accederse a los archivos de instalación. Una desventaja de este método es que puede ser lento y no siempre es confiable. Si la red o la conexión remota se pierde, la instalación tendría que comenzarse de nuevo desde el principio. Linux puede instalarse desde archivos que están ubicados en una partición diferente, incluso si esta partición tiene un OS diferente ejecutándose en ella. Esto se conoce como instalar desde un disco rígido. Si el OS se descargó en una partición que está ejecutando Windows por ejemplo, la otra partición podría acceder a esos archivos e instalar Linux desde esa partición. Se usaban diskettes para instalar Linux en algunas distribuciones antiguas, no obstante esto se ve raramente hoy. Hay una distribución que todavía usa un diskette para instalar el OS. Aunque no es un OS real, el Proyecto Router Linux(http://www.linuxrouter.org) es un OS Linux que se instala desde un diskette y puede instalarse en una computadora antigua que lo convertirá en router de red. 9.1.3
Selección de los parámetros apropiados para la instalación
Éstos son los primeros pasos que se darán después de haber seleccionado el método de instalación apropiado y el sistema se ha arrancado. Algunas de las primeras pantallas mostradas darán opciones para seleccionar determinados parámetros para el sistema operativo. Estas opciones incluyen cosas tales como el idioma que se usará, y la fase de detección del hardware. Todos estos procedimientos proporcionan un medio para aplicar los parámetros que el sistema necesitará para poder estar preparado para la siguiente fase, que será seleccionar los paquetes apropiados para instalar. Idioma Una de las primeras opciones que se mostrarán será la opción de qué idioma ha de usarse. La Figura proporciona un ejemplo de la pantalla de selección del idioma que se usa durante la instalación. Éste debería ser un paso claro y simple. Obviamente, la opción en este caso sería seleccionar el idioma de la persona que usará el sistema o el idioma de la persona que instala el OS en la computadora. Términos de la Licencia Aunque no tan estrictos en el caso de Linux como podrían serlo con otros sistemas operativos como los de Microsoft, los términos de la licencia son importantes y es igual de importante que la persona que está haciendo la instalación lea estos términos. Aunque Linux es de fuente abierta a veces hay software propietario que podría venir con la distribución. Por lo tanto, no siguiendo los términos de este acuerdo de licencia podría existir la posibilidad de violaciones de derecho de autor. Clase de Instalación Una vez que los términos de la licencia han sido aceptados, el siguiente paso será
seleccionar el tipo de instalación a realizar. Dependiendo de qué distribución se está instalando, esta fase será diferente hasta cierto punto. Algunas distribuciones pedirán al usuario que seleccione una instalación recomendada o para expertos en este punto. Otras distribuciones, como Red Hat, brindará la opción de elegir hacer una Instalación para Estación de Trabajo, Servidor, o Personalizada. Al instalar Linux por primera vez, elegir el tipo de instalación recomendada puede ser el método más fácil. No obstante, eligiendo este método, no existirá la posibilidad de optar por el tipo de instalación que se está realizando. Si se elige la opción de estación de trabajo con Red Hat 7.2, se instalarán las funciones básicas que podría necesitar una estación de trabajo incluyendo el sistema X Window. No instalará funciones de servidor como daemons FTP, HTTP o Telnet. Si se elige la instalación de servidor, estas funciones se instalarán, pero el sistema X Window no. Esto significa que la línea de comandos será la única opción para administrar el servidor. La opción de instalación personalizada permitirá elegir qué opciones instalar. Por ejemplo, elegir tener el sistema X Window instalado así como algunos de los daemons que podrían ser necesarios para un servidor como FTP, HTTP, y Telnet. Mouse y Teclado Después de seleccionar el tipo apropiado de clase de instalación, el sistema atravesará un paso en el cual se detectarán los discos rígidos del sistema. Luego el sistema detectará el mouse y el teclado del sistema. Linux puede autodetectar el mouse y el teclado y lo más probable es que se seleccione el correcto. Se mostrará una ventana para elegir el tipo de mouse y teclado que está conectado a la computadora si no se auto-detecta. Las Figuras y proporcionan ejemplos de las pantallas de selección de teclado y mouse. Funciones tales como la cantidad de botones que tiene el mouse y si tiene un rodillo o no pueden seleccionarse. Linux soporta muchas clases de teclados también y la opción correcta deberá seleccionarse. No hay muchas opciones además de elegir si es un teclado de EE.UU. o un Teclado de EE.UU. (Internacional). Elija teclado de EE.UU. si el teclado se vendió en Estados Unidos. Elija Teclado de EE.UU. (Internacional) si no fue así. 9.1.4
Creación del sistema de archivos Linux
Una vez especificados los parámetros apropiados para la instalación, particione la unidad de disco rígido y elija qué sistema de archivos ha de estar en este sistema Linux. La Figura ilustra un ejemplo de la pantalla que se presenta durante la instalación, que se usa para determinar el método de particionamiento que se desea usar. Particionar el disco rígido no se tratará en esta sección porque el particionamiento de una unidad de disco rígido para un sistema operativo Linux se trata en detalle en el Capítulo 7. El formateo del disco rígido se mencionó en el módulo 7 también, no obstante, esto no se trató en detalle. Básicamente cuando Linux crea el sistema de archivos, está formateando el disco rígido. Éste es el proceso durante el cual el sistema de archivos ext2, ext3, o Reiser se escribirá en la partición. Tenga en cuenta que formatear el disco rígido borrará completamente cualquier dato que esté actualmente en la unidad o partición que se está formateando. Por lo tanto, asegúrese de que los datos de la unidad estén resguardados como backup o ya no se necesiten. A veces formatear el disco rígido es innecesario. A veces estos sistemas de archivos ya han sido creados con otra herramienta de particionamiento y formateo como PartitionMagic. Otra situación donde el disco rígido podría no necesitar formateo o particionamiento es al actualizar o practicar el arranque dual con otro OS instalado. Si el usuario estuviera llevando a cabo una instalación "fresca" de Linux, formatear el disco rígido sería deseable. Una opción que se incluye con la mayoría de las distribuciones de Linux al formatear es la opción para llevar a cabo una "verificación de bloques defectuosos". Ésta es una
opción avanzada que verificará cada sector del disco o partición para asegurarse de que puede contener los datos antes de formatearlo. Esta verificación llevará más tiempo que un formateo regular,. pero puede ahorrar tiempo a largo plazo. Si durante la verificación se encuentran bloques defectuosos, es una buena idea reemplazar el disco. Éste es una señal de que el disco está empezando a fallar. Formateo de Bajo Nivel y de Alto Nivel Hay dos tipos de formateo que puede llevarse a cabo. Un formateo de Bajo Nivel redefine los sectores físicos del disco rígido. Un formateo de Alto Nivel realmente creará o recreará el sistema de archivos. Normalmente los discos rígidos vienen con un formateo de bajo nivel; en la mayoría de los casos no hay necesidad de formatear el disco. En Linux, usar el comando fdformat llevará a cabo un formateo de bajo nivel y el comando mkfs llevará a cabo un formateo de alto nivel. Para aprender más acerca de estos comandos vea sus páginas man tipeando man fdformat or man mkfs en la línea de comandos. 9.1.5
Selección de los paquetes a instalar
Después de particionar y formatear el disco rígido, se mostrará una lista de paquetes que pueden instalarse, como se muestra en la Figura . Hay muchos paquetes de los cuales elegir, dependiendo de qué distribución se está instalando. Tenga en cuenta que hay una cantidad limitada de espacio en el disco disponible. Instalar todos estos paquetes consumirá espacio del disco. Por ejemplo, muchos de los paquetes, en particular de la estación de trabajo KDE o GNOME pueden consumir cientos de megabytes de espacio en disco. Algunas distribuciones mostrarán cuánto espacio será necesario para el paquete en particular que será instalado. Otras distribuciones no muestran esto hasta que el paquete no se ha seleccionado y el proceso de instalación pasa al siguiente paso. Algunas distribuciones, como Mandrake, permitirán la opción de seleccionar todo o parte de un paquete a instalar. Esto es de ayuda si se desea alguna de las funciones de un paquete en particular. Si se selecciona esta opción, la capacidad de navegar a través del paquete y seleccionar las funciones particulares deseadas es posible. Algunas de estas funciones individuales de paquetes tienen una dependencia, lo cual significa que otros programas individuales o funciones necesitarán instalarse para que funcionen. Instalando uno de estos paquetes sin instalar el programa de dependencia o paquete, el sistema indicará que los otros paquetes deben instalarse. Una vez seleccionados los paquetes, el proceso de instalación procederá al siguiente paso. Esto es donde la instalación real del sistema operativo tiene lugar. 9.1.6
Multimedia Linux
Multimedia demanda más del hardware de computadoras que muchas otras actividades informáticas, por lo tanto hay algunos requisitos generales para tener una experiencia multimedia satisfactoria en Linux. Recientemente, el soporte para hardware popular en Linux ha sido común. Sonido La mayoría de las nuevas placas de sonido tienen al menos un soporte básico en Linux. Mientras que muchas son soportadas directamente por el kernel, hay varias opciones alternativas incluyendo la Arquitectura de Sonido Linux Avanzada y el Sistema Abierto de Sonido. Una placa de sonido capaz de una salida de 16 bits PCM será suficiente para todos excepto la salida de audio más extrema. El soporte MIDI de hardware es menos frecuente para la mayoría de las placas, pero las utilidades pueden simular dispositivos MIDI en el software.
Video El video es generalmente lo que queda atrás en multimedia Linux. La mayor parte de la aceleración de hardware aún requiere una gran cantidad de esfuerzo, aunque las nuevas placas más populares son bien soportadas. Nvidia libera un controlador acelerado de fuente cerrada para XFree86, mientras que la línea Radeon de ATT tiene soporte DRI (Direct Rendering Infrastructure) en el kernel Linux. Las utilidades de video pueden mostrar salida acelerada de hardware mediante las extensiones X-Video (Xv) disponibles en XFree86 4.X. X-Video permite mostrar las imágenes con escala y filtrado de calidad usando segmentos de memoria compartida. Para probar si la salida Xv acelerada de hardware está disponible, use el comando xvinfo
.
En general, hay tres tipos de archivos de película disponibles. Primero, están los archivos MPEG-1. No debería haber ningún problema en reproducirlos porque no se necesita ningún programa de compresión/decodificador (codec) propietario. Esto significa que se puede reproducir el archivo en cualquier reproductor. Además de estos archivos MPEG disponibles en general, están los archivos AVI. La mayor parte del tiempo, éstos son archivos codificados y comprimidos por medio de un codec propietario. Para reproducir archivos AVI, se necesita el codec propietario, que no siempre es bien soportado en Linux. Un programa popular de uso en Linux, que es capaz de soportar muchos de estos codecs propietarios como archivos .avi o .mov, es Xine. Necesitará descargar dos partes para poder usar Xine. Uno es el archivo con las librerías necesarias en él y el otro es un archivo que contiene los binarios. Para instalar Xine, descargue las librerías primero, compílelas y luego descargue los archivos-ui (archivos de interfaz del usuario). Una vez descargados los archivos, compílelos e instálelos. Luego diríjase al directorio fuente, que se creó al extraer los archivos, y emita los siguientes comandos. Necesitará un compilador C/C++ para poder llevar a cabo la siguiente operación. ./configure make install make clean Haga esto primero para las librerías Xine, luego descargue los archivos-ui de Xine y lleve a cabo el mismo procedimiento en ellos. Existen posibilidades de que obtenga un mensaje de error mientras intenta configurar la interfaz del usuario de Xine. Esto podría deberse a que el instalador no pudo encontrar las librerías de Xine. Si esto ocurre, abra /etc/ld.so.conf, agregue la ubicación de las librerías recientemente instaladas y guarde el archivo y ejecute ldconfig para hacer saber a su sistema acerca de esta ubicación. Después de eso, no debería tener más problemas para ejecutar ./configure en los archivos-ui de Xine. Una vez todo configurado y compilado, inícielo ejecutando el comando xine. Esto abre una ventana y un panel como el de un reproductor de CD 9.2
Instalación y Configuración de Linux
Al igual que la instalación de Windows 2000 Professional, la instalación de Linux pasará por una cantidad de pasos hasta completarse. El proceso de arranque de Linux es similar al proceso de arranque de Windows 2000. Los nombres de archivos son diferentes pero estos archivos esencialmente llevan a cabo las mismas operaciones en ambos sistemas. Linux tiene, por otro lado, algunos pasos de instalación que no se encuentran en Windows. Por ejemplo, Linux tiene como objetivo principal ser un sistema operativo de red (NOS) basado en servidor. Existe la opción de hacer una instalación en una estación de trabajo o en un servidor.
El siguiente paso es examinar el hardware del sistema para determinar si realmente podrá ejecutar el OS una vez instalado. Algunos de los requisitos básicos de hardware para una instalación de Linux exitosa incluyen un procesador compatible con Intel. Linux puede instalarse en todos los procesadores clase Pentium. Todavía hay sistemas ejecutándose en procesadores 80386 y 80486, no obstante, esto no se recomienda. Se requerirán un diskette o un CD-ROM y una unidad de disco rígido con al menos 900 MB de espacio libre. El requisito mínimo de RAM es de 16 MB, pero se prefiere un mínimo de 64 MB. En comparación a una instalación de Windows típica, siempre es importante probar y verificar la compatibilidad del hardware con la distribución de Linux que esté instalando. Linux se ejecuta exitosamente en la mayoría de las computadoras, laptops y plataformas. Hay varios proyectos en camino para llevar Linux a otras configuraciones de hardware. Una vista general de las CPUs basadas en PC incluye: •
Intel/AMD/Cyrix 386SX/DX/SL/DXL/SLC
•
Intel/AMD/Cyrix 486SX/DX/SL/SX2/DX2/DX4
•
AMD K5, K6, K6-2, K6-3 and K7/Athlon
•
Cyrix 6x86, 6x86MX
•
Intel Pentium, Pentium Pro, Pentium II (incluyendo la serie Celeron) y Pentium III
•
IDT WinChip C6
•
Multiprocesamiento Simétrico (varias CPUs)
Siga el vínculo a continuación para encontrar una lista más abarcativa de hardware compatible con su distribución de Linux. 9.2.2
Inicio de la instalación
En este curso y en el laboratorio acompañante, los alumnos estarán instalando Linux desde un CD. La instalación se iniciará una vez que se inserta el CD y el BIOS está configurado para arrancar desde el CD. Seleccione las configuraciones para el sistema, por ejemplo, el idioma a utilizarse. A continuación, elija qué tipo de mouse y teclado se están usando. Se pedirá al instalador que elija el tipo de instalación. Las opciones serán la instalación de un servidor o una estación de trabajo. La GUI del Sistema X Window no estará disponible si se elige la instalación del servidor. La instalación del servidor instalará las diversas herramientas necesarias para un servidor como herramientas de archivos y servidor de web. El siguiente paso es particionar la unidad de disco rígido. NOTA: Si se selecciona la instalación de servidor, todos los datos se borrarán del sistema y la unidad debe particionarse y reformatearse de acuerdo a ello. Cuando se selecciona la instalación para estación de trabajo, puede instalarse otro sistema operativo, no obstante, Linux tendrá que estar en su propia partición separada. Una vez particionada la unidad, deben establecerse las configuraciones de red y la zona horaria seleccionada. En este punto se establecen la cuenta y contraseña raíz así como otras cuentas que necesitan instalarse en el sistema. Por razones de seguridad, la cuenta raíz no debería usarse. Se recomienda que se cree una segunda cuenta para administrar Linux. En los laboratorios acompañantes, se usará la cuenta raíz, no obstante, esto no deberá hacerse en un entorno de trabajo. Para la instalación en un servidor el siguiente paso es instalar el sistema operativo. Si se selecciona la instalación en estación de trabajo, se pedirá al instalador configurar primero el Entorno X-Windows antes de comenzar la instalación. Este entorno incluye cosas como la selección de las configuraciones de monitor y placa de video apropiadas, así como la
resolución y configuración de colores del sistema. Una vez completo el proceso de instalación, habrá un prompt para crear discos de inicio. Una vez hecho esto, el proceso de instalación está completo. 9.2.3
Configuración de seguridad apropiada
Algunas de las configuraciones de seguridad más importantes a elegir son la cuenta de usuario, la cuenta raíz, y las contraseñas. El Capítulo 10 trata en detalle cómo crear cuentas de usuario en Linux. Esta sección se concentra en los aspectos de seguridad importantes para el proceso de instalación. Los usuarios familiarizados con Windows 2000 saben que para poder iniciar sesión en un sistema debe haber una cuenta de usuario almacenada localmente en la computadora o en el Directorio Activo. Linux funciona de la misma manera, en el hecho de que las cuentas de usuario son la principal característica de seguridad que controla quién puede iniciar sesión en el sistema. Linux usa la cuenta raíz, que es similar a la cuenta administradora en Windows 2000. La cuenta raíz tiene privilegios para llevar a cabo cualquier tarea en el sistema incluyendo el agregado y borrado de otras cuentas de usuario. Durante el proceso de instalación habrá un prompt para crear la contraseña raíz, y luego una opción para crear cuentas de usuario que han de agregarse al sistema. No obstante, las cuentas de usuario no necesitan agregarse en este punto. Esto puede hacerse después y se tratará en el Capítulo 10. Si hay un único usuario, el administrador, también deberá crearse una cuenta de usuario separada. Pueden surgir problemas de seguridad si se usa solamente la cuenta raíz. Ver Figura
.
Opciones de la Cuenta Raíz La cuenta Raíz en Linux también se denomina cuenta del superusuario o del administrador del sistema. Esta cuenta es obligatoria, durante la instalación se pedirá al usuario que introduzca la contraseña dos veces para proteger contra errores de tipeo. Ver Figura . Corel Linux es la única distribución importante que no requiere que la cuenta Raíz se configura durante la instalación. La mayoría de las distribuciones de Linux tienen reglas concernientes a la longitud y el contenido de la contraseña. Las reglas variarán dependiendo de la distribución. Las contraseñas deben tener al menos cuatro a ocho caracteres de largo y no pueden ser términos comunes hallados en el diccionario. Algunas distribuciones tienen otras reglas, como que al menos uno o dos caracteres no sean letras, sino números o un signo de puntuación por ejemplo. Definición de las Cuentas de Usuario durante la Instalación Hay ventajas y desventajas en la creación de cuentas de usuario durante la instalación. Comprenderlas ayudará a cualquier administrador a determinar qué es mejor basándose en las implementaciones de seguridad que se han planeado. Se enunció antes que al menos una cuenta de usuario deberá crearse durante la instalación para que el administrador del sistema use, incluso si nadie más está usando o accediendo al sistema. La desventaja de crear cuentas de usuario durante la instalacion es que muchas de las opciones como configurar directorios home no estándar, expiración de la cuenta, y definición de políticas de grupo, no están disponibles. Opciones de Contraseña Aunque no configurable durante el proceso de instalación, es importante tratar las contraseñas sombra en este punto. Éstas son valiosas para la seguridad de un sistema Linux. La mayoría de las distribuciones de Linux usan métodos de codificación por contraseña MD5 o DES. Algunas usan MD5 por defecto porque es más nuevo y tiene mejor seguridad que DES. Por lo común, los sistemas Linux y UNIX almacenan la información sobre cuentas y las contraseñas en forma cifrada en un archivo llamado /etc/passwd. Este archivo necesita ser accedido por todos los usuarios porque diversas otras herramientas necesitan acceder a este archivo para información no relacionada
con contraseñas. Usando contraseñas sombra las contraseñas se almacenan en un archivo diferente que es inaccesible para los usuarios normales, lo cual mejora mucho la seguridad. Configuración de Límites en los Inicios de Sesión, Uso de la Memoria y Procesos Tampoco configurable durante la instalación pero importante de tratar son las configuraciones de límites a los inicios de sesión, el uso de la memoria y los procesos. Cuando se está configurando un sistema multi-usuario como Linux, debe prestarse mucha atención al uso de la memoria y los procesos. Por ejemplo, un proceso errante podría consumir toda la memoria del sistema disponible y/o CPU en el sistema. Cuando esto ocurre, el desempeño en ese sistema puede degradarse resultando en cuelgues del sistema, pantallas congeladas y muchas otras consecuencias desagradables. Como administrador, es importante aprender las herramientas y utilidades en Linux que pueden usarse para resolver estos tipos de problemas. El archivo limits.conf , ubicado en /etc/security proporciona la capacidad para especificar límites de nivel de usuario y grupo a ciertos tipos de recursos del sistema, incluyendo la memoria. Los límites configurados en este archivo se establecen por usuario y grupo. La sintaxis básica para limits.conf consiste en líneas individuales con valores de los siguientes tipos: (dominio) (tipo) (elemento) (valor) donde dominio es el usuario o grupo, tipo se refiere a un límite de hard o soft, elemento se refiere al recurso que se está limitando y valor se refiere al valor asociado al límite establecido. Por ejemplo, agregar la siguiente línea a este archivo coloca un límite en hard sobre la prioridad según la cual los trabajos se programan para un usuario llamado 'Linux_User'. Linux_User hard priority 19 Para establecer un máximo de tiempo de CPU de 10 minutos para Linux_User, establezca el siguiente valor: Linux_User hard cpu 10 También es posible establecer limitaciones de inicios de sesión con limits.conf. Para establecer un límite de 3 inicios de sesión fallidos para un grupo llamado "remote_users", establezca el siguiente valor: @Remote_Users - maxlogins3 Establecer límites en procesos errantes por usuario puede limitar el impacto potencial y las vulnerabilidades de muchos usuarios que iniciaron sesión o conectados a un sistema multi-usuario. Esto puede hacerse configurando el comando ulimit en /etc/profile. Para establecer un límite en la cantidad máxima de memoria disponible para un proceso dado, a un valor menor que la cantidad total de memoria en el sistema que tiene 1 GB de memoria real y 500 MB de memoria virtual, se establecerían los siguientes valores en /etc/profile: ulimit -S -m 1000000 ulimit -S -v 500000 Con este valor configurado, el sistema abortará cualquier proceso que intente tomar más recursos que los que se han establecido como límite. 9.2.4
Configuración de red
Durante la instalación, se mostrará la opción de establecer las configuraciones y servicios de red del cliente. Esto puede hacerse después de la instalación pero se recomienda hacerlo durante la instalación. Hay algunas funciones que no pueden establecerse durante la instalación, no obstante.
Al seleccionar la opción para configurar la red durante el proceso de instalación, la primera opción que será necesario tomar es, hacer que el sistema auto-detecte qué tipo de conexión de red se está usando. Opciones para tipos de conexiones de red incluyen una conexión normal de módem o una conexión LAN. Como en el paso anterior, el proceso de instalación auto-detectará qué tipo de mouse o teclado está conectado. Lo mismo es cierto del tipo de placa de red que está instalada en el sistema. Normalmente el sistema detectará la placa de red. Los pasos para hacer esto pueden ser levemente diferentes dependiendo de la distribución de Linux que se está instalando. En este punto se mostrará un prompt para configurar manualmente la red, como la dirección IP, máscara de subred, nombre de host, servidor DNS, y gateway por defecto. La otra opción es seleccionar DHCP. Si el sistema está conectado a un servidor DHCP, proporcionará la información automáticamente. La pantalla de configuración de DHCP se muestra en la Figura
.
Algunas distribuciones tendrán otras configuraciones de red que puede ser necesario configurar en este momento dependiendo de en qué tipo de red se encuentra el sistema. Un ejemplo sería un servidor proxy. Estos servidores protegen a una red limitando el acceso a la red y fuera de la misma. Si la red usa un servidor proxy, introduzca la dirección IP de este servidor en este punto también. Es igualmente importante poder configurar manualmente TCP/IP para una placa de interfaz de red (NIC) una vez que la instalación está completa. En todo momento se hacen cambios a la red. Cuando se agregan, cambian o actualizan dispositivos, a menudo es necesario reconfigurar las configuraciones TCP/IP para que ese dispositivo se conecte nuevamente a la red. También es importante para detectar problemas, poder ser capaz de configurar una NIC manualmente. La utilidad ifconfig es la herramienta usada para configurar la placa de red. Es importante saber que al usar ifconfig para configurar sus dispositivos de red debe guardar las configuraciones o éstas no permanecerán una vez que se reinicia el sistema. Para asignar a la interfaz eth0 la dirección IP de 192.168.1.50 use el siguiente comando: #ifconfig eth0 192.168.1.50 netmask 255.255.255.0 Para asignar el gateway por defecto para 192.168.1.1 use el comando: #route add default gw 192.168.1.1 Para detener todos los dispositivos de red manualmente en su sistema, use el siguiente comando: #/etc/rc.d/init.d/network stop Para iniciar todos los dispositivos de red manualmente en su sistema, use el siguiente comando: #/etc/rc.d/init.d/network start 9.2.5
Otras configuraciones
En este punto, la mayor parte del proceso de instalación inicial deberá estar completo a excepción de algunas configuraciones finales. Éstas incluyen elementos como Zona Horaria, Impresora, Configuración de Servicio y Opciones de Arranque. Configuración de la Zona Horaria Nuevamente, las especificaciones para configurar la zona horaria variarán dependiendo de qué distribución de Linux se está instalando. Cuando se alcanza este punto en la instalación, aparecerá una pantalla que permitirá la selección de en qué zona horaria está ubicado el sistema. La Figura
muestra la página de configuración de la zona
horaria para Red Hat 7.2. Desde esta pantalla el usuario puede desplazarse por las diferentes zonas horarias y seleccionar la que corresponda a la ubicación. Algunas distribuciones tienen la opción de configurar el reloj según la Hora del Meridiano de Greenwich (GMT), la hora en Greenwich, Inglaterra. En sistemas UNIX y Linux tradicionales, esto se conoce como Hora Universal Coordinada (UTC), que se ajusta para horarios de verano. Los sistemas que tienen esta opción configuran su hora local basándose en la hora de UTC, y luego almacenan esta información en la memoria o en sus relojes de hardware. Cuando el sistema arranca, lee esta información y luego configura el tiempo local en la zona horaria que se seleccionó en la hora UTC que se almacenó en la memoria. Si Linux es el único sistema operativo de la computadora, y la distribución instalada tiene esta opción, seleccione sí cuando se le pregunte si el reloj se pone en hora según GMT. Esto reducirá mucho las posibilidades de que la hora se desajuste durante el horario de verano. Si el sistema tiene arranque dual con otro OS como Windows por ejemplo, no ponga en hora el reloj según GMT. Configuración de Impresoras Configurar un sistema Linux para una impresora se trata en detalle en posteriores capítulos. Esta sección trata cómo hacerlo durante el proceso de instalación. Tenga en cuenta que no todas las distribuciones de Linux proporcionarán esta opción. Linux Mandrake proporciona la capacidad de instalar una impresora durante la instalación. Hay dos sistemas de impresión que proporciona Mandrake, Sistema de Impresión Común de UNIX (CUPS) o el sistema de impresión lpr. El programa de instalación instalará paquetes adicionales del CD después de seleccionar el sistema de impresión. El programa de instalación requerirá información adicional, como el tipo de conexión, ya sea una impresora local, un servidor de impresión remoto UNIX o Linux, o un servidor de impresión remoto Windows. Los detalles de la conexión, como el puerto de la impresora también necesitarán especificarse. Si la impresora está ubicada en un servidor de impresión remoto, especifique el nombre del servidor de impresión, nombre de la cola, y en algunos casos, un nombre de usuario y contraseña. Finalmente, será necesario definir el tipo de impresora. Una lista de hardware se mostrará en pantalla. Seleccione una de las opciones. Configuración de Servicios Los sistemas Linux tendrán diferentes servicios ejecutándose en ellos. Si el sistema va a ser una estación de trabajo, servidor Web, o servidor de correo, será necesario instalar los servicios apropiados en el sistema. Algunos de estos servicios pueden instalarse durante la instalación. Cuando esta pantalla aparece durante el proceso de instalación, tilde los recuadros apropiados. Los servicios seleccionados se instalarán ahora. Opciones de Arranque Seleccionar y configurar el sistema para que use el cargador de arranque apropiado es otra parte del proceso de instalación de Linux. Linux usa uno de los siguientes dos programas: Linux Loader (LILO) o Grand Unified Bootloader (GRUB). La Figura proporciona un ejemplo de la pantalla de instalación que se usa para seleccionar el cargador de arranque. Estos dos programas arrancan un sistema Linux desde el disco rígido. La mayoría de las distribuciones de Linux usan LILO y algunas ofrecen GRUB como alternativa. Después de seleccionar qué cargador de arranque usar, habrá una oportunidad de ajustar algunas de las características. Algunas de estas opciones son: •
La mayoría de las distribuciones permitirán la selección de si usar un menú gráfico o basado en texto.
•
LILO almacena su código de tiempo de arranque en el dispositivo de arranque. Si Linux se instala en una unidad EIDE, el archivo se localizará en /dev/hda. Si Linux se instala en una unidad SCSI, se almacenará en /dev/sda. Esto está bien
si Linux es el único sistema operativo instalado en la unidad. Si este sistema es de arranque dual, será necesario ubicar LILO o GRUB en la partición de arranque de Linux. •
El retraso que usa LILO antes del arranque puede ajustarse aquí también.
•
Hay también una opción de arranque compacto que puede seleccionarse. Esto acelerará los tiempos de arranque.
•
Es posible configurar la placa de video para el cargador de arranque. Si no se la configura, se usará la resolución por defecto, no obstante, es posible cambiar la resolución para el cargador de arranque.
•
Linux almacena los archivos temporales en el directorio /tmp. Es posible configurar el cargador de arranque para limpiar este directorio cada vez que se inicia Linux.
•
En algunos casos, Linux no detectará la cantidad apropiada de RAM. Lo cual significa que Linux podría solamente detectar 64 MB de RAM cuando en realidad hay 128 MB instalados. Una precaución a tomar contra esto es introducir manualmente la cantidad de RAM instalada.
Cuando todas las configuraciones se han introducido, el programa de instalación procederá al siguiente paso. Mientras esto ocurre, el sistema presentará un resumen de las opciones del cargador de arranque. Estas opciones variarán dependiendo de las configuraciones que se introdujeron y de si el sistema está configurado para arranque dual con otro sistema operativo. 9.3 9.3.1
X Server
Chipset de la placa de video
En este punto, Linux deberá estar completamente instalado y operativo. Para obtener toda la funcionalidad del sistema Linux, familiarícese con cómo instalar y configurar el X server del sistema. Esto es así especialmente si se usa la interfaz GUI. La instalación inicial es solamente la primera parte de instalar un sistema operativo. Hay también otras configuraciones que será necesario completar una vez que se han instalado el sistema operativo. La importancia de aprender cómo instalar y configurar X server no puede subestimarse. Primero, es el único punto que presentará la mayoría de los problemas. Otras razones son que los usuarios desearán poder ajustar y modificar el entorno del usuario según sus propias preferencias, como el tamaño de la pantalla o la resolución. Si en algún punto la placa de video del sistema se actualiza, es importante el conocimiento de cómo establecer las configuraciones apropiadas para que la placa funcione con el sistema Linux. Averiguar qué chipset usa la placa de video es importante. Puede ser difícil encontrar qué chipset tiene la placa de video, a menos que se esté instalando una placa nueva y la caja o manual que vienen con la placa puedan verse. Lo más probable es que la placa de video esté instalada en el sistema, haciendo difícil saber cuál es su chipset. Hay otras maneras de obtener esta información. La primera es cuando el sistema detecta automáticamente la placa de video. Otra forma es ejecutar la herramienta de configuración X después de la instalación. Otro medio de averiguar el chipset de la placa de video es leyendo la documentación del producto. Éste no siempre es el mejor método, no todos los fabricantes de placas de video dirán cuál es su chipset y puede ser difícil de averiguar. La Figura muestra un ejemplo de las propiedades de una placa de gráficos en Linux. A veces el chipset de la placa de video aparecerá nombrado allí. En último lugar, y probablemente lo que lleva menos tiempo es sacar la placa de
video de la computadora y examinarla. Algunas placas de video tendrán el chipset nombrado en la placa en sí. Algunas otras cosas importantes a tener en cuenta al buscar la versión del chipset de una placa de video es que no siempre es consistente. Esto se debe a que el chipset a menudo tiene más de un nombre. El nombre del fabricante de la placa de video podría hallarse en lugar de la versión del chipset. Cuando esto ocurre, es una buena idea buscar los controladores bajo los dos nombres encontrados. Cuando se encuentra el nombre del fabricante, sea cuidadoso, porque algunos fabricantes producen la placa mientras que otro produce el chipset. Por lo tanto, cuando se encuentra el nombre del fabricante de la placa, no necesariamente significa que se halló el nombre del fabricante del chipset. 9.3.2
Opciones del X server
Xfree86 (http://www.xfree86.org) es el X server gratuito que viene con cada distribución importante que soporte una interfaz GUI. Es una buena idea visitar este sitio porque contiene información útil respecto a los chipsets de la placa de video. La última versión del X server es la versión 4.0.3. La mayoría de las distribuciones Linux que se entregaron después del año 2001 vienen con la versión 4.0.X de Xfree86. Hay algunos problemas de compatibilidad que esta nueva versión tiene con algunos chipsets de placa de video. Todavía hay algunos chipsets que no son soportados en la última versión. La versión anterior de Xfree86 era la versión 3.3.X. Esta versión es la que debe usarse si surge cualquier problema de compatibilidad con los chipsets de la placa de video. No obstante, si se usa la versión más antigua de X server, los programas y librerías de soporte de la versión 4.0.X aún pueden usarse. Una buena práctica al tratar con problemas de placas de video no soportadas es verificar el sitio web del fabricante para ver si hay los controladores apropiados. Aunque los controladores apropiados pueden no haber sido enviados con la placa de video, los fabricantes tendrán los controladores disponibles en su sitio web. Con la creciente popularidad de Linux, muchos de los fabricantes han hecho controladores disponibles que serán soportados por Xfree86. Esto no quiere decir que todos los fabricantes tendrán los controladores soportados sino que vale la pena verificar. Otra razón para verificar en el sitio web del fabricante es que muchas placas de video de hoy tienen características de aceleración. Para poder usar estas características de aceleración el controlador apropiado podría tener que ser obtenido en el sitio web del fabricante. Haciendo esto, debería verse una mejora sustancial en el desempeño de la placa de video. En algunos casos Xfree86 no soportará la placa de video en absoluto. Esto es así incluso después de dar todos los pasos mencionados anteriormente. En el caso de que esto ocurra hay todavía otras medidas que tomar. La primera opción podría ser usar el controlador del buffer de frames de Xfree86. El Kernel Linux tiene algunos controladores de placa de video que pueden usarse. No obstante, el kernel debe incluir soporte a buffer de frames para la placa de video instalada. Otro enfoque a seguir es no usar Xfree86 sino un X server comercial de terceros. Algunos ejemplos son Xi Graphics (http://www.xig.com) y ATI (http://www.ati.com/support/faq/linux.html). Uno de estos X servers comerciales podría incluir soporte para la placa de video. Finalmente, si la placa no es soportada en absoluto por Xfree86, reemplace la placa de video por otra que sea soportada. 9.3.3
Configuración de X server
La instalación y configuración real de X server no es tan difícil como ha sido anteriormente puesto que muchas de las principales distribuciones ahora soportan una mucho más amplia variedad de hardware. La forma más fácil de instalar X server es hacerlo durante la instalación del sistema operativo. Éste no siempre es el caso y a
veces esto se hará después del proceso de instalación. Instalar Xfree86 es solamente una cuestión de usar el administrador de paquetes del sistema para instalar el paquete correcto. Tenga en cuenta que X server viene con muchos paquetes. Solamente uno de estos paquetes contendrá al servidor real, los otros paquetes serán las librerías de soporte, fuentes, utilidades, etcétera. Dependiendo de la distribución que se instala, el nombre del paquete puede variar, pero tendrá el nombre Xfree86 en él. El nombre debería tener un aspecto como XFree86-server o xserver-xfree86. Nuevamente, dependiendo de la distribución de Linux que se esté usando, XFree86 se instalará usando RPMs o Paquetes Debian. Si la distribución está usando RPMs el comando para instalar X server tendrá el siguiente aspecto: # rpm -Uvh XFree86-server-4.0.2-11.i386.rpm Si la distribución usada usa paquetes Debian entonces el comando que se introduce en la línea de comandos tendrá el siguiente aspecto: # dpkg -i xserver-xfree86_4.0.2-7_i386.deb Una vez instalado el paquete, se instalará el X server genérico, XFree86. Los archivos del server se almacenan en /usr/X11R6/bin. Los otros archivos que requiere X server son los módulos del controlador, que se almacenan en /usr/X11R6/lib/modules/drivers. Configurar X server se hará de manera diferente dependiendo de qué versión de X server se instaló. Este curso discutirá cómo configurar XFree86, ya que se trata de una de las versiones más usadas. El archivo de configuración de XFree86 se llama XF86Config y está ubicado en el directorio /etc o /etc/X11. La Figura ejemplo del archivo XF86Config.
proporciona un
En la siguiente sección se trata en más detalle cómo configurar los diversos hardware para X server. Junto con la configuración del servidor real, también será necesario proporcionar información para dispositivos de entrada como el mouse, teclado, placa de video y monitor. Diferentes Métodos para Configurar Como sucede con la mayoría de las configuraciones Linux, hay dos formas de configurar X server. Una forma es usar las herramientas de configuración gráficas, que se usan para hacer los cambios necesarios, luego el sistema operativo automáticamente escribe estos cambios en el archivo de texto XF86Config. El archivo XF86Config es un archivo de texto que puede editarse manualmente. Esto requiere usar un editor de texto para abrir el archivo y hacer los cambios manualmente. A menos que el usuario sea experimentado en el uso de un editor de texto, ésta no es la forma recomendada. Cualquier error que se cometa podría hacer inoperable al X server. Este método se utiliza usualmente para ajustar una configuración funcional para obtener mejor desempeño y no para configurar el X server inicialmente. Nuevamente, esto no debería intentarse a menos que el usuario sea experimentado en hacerlo. Independientemente de qué método se use, el proceso usualmente involucrará hacer un cambio, probarlo y repetir este proceso hasta obtener los resultados correctos. Prueba de la Configuración Cuando se hace cualquier tipo de configuración, también es necesario probarla. Como se mencionó antes, esto podría ser un proceso repetitivo que puede llevar probar la configuración algunas veces antes de que esté correcta. Probar la configuración del X server necesita hacerse de manera específica. Una forma de probar la configuración es reiniciar el sistema para ver si las modificaciones están presentes. Esto puede consumir mucho tiempo y es innecesario. La forma recomendada de probar la configuración de X server es cambiar de niveles de ejecución. Ejecutar el nivel 5 iniciará el X server automáticamente cuando se inicia el
sistema. Cambiar el nivel de ejecución 3 cerrará la sesión X que se lanzó durante el inicio. Para cambiar al nivel 3 use el comando telinit 3. Después de cambiar a nivel de ejecución 3 la sesión de X Window terminará y el sistema pasará a modo de texto con un prompt de inicio de sesión. A partir de aquí, inicie sesión y configure X server manualmente. El comando init5 también puede usarse para iniciar la GUI y hacer cambios en las configuraciones usando una herramienta de configuración. Luego, reinicie la GUI usando el procedimiento recién explicado. Si los resultados son buenos, salga de la GUI. En la línea de comandos tipee telinit 5 para pasar de nuevo al nivel de ejecución 5. Esto lanzará la GUI al iniciar. Si los resultados no son los deseados, repita los pasos más arriba hasta obtener los resultados deseados. XFree86 El X server, por sí mismo, puede usarse para hacer modificaciones en el entorno GUI. Use el comando XFree86 -configure para generar un archivo llamado /root/XF86config.new. Este archivo se usa para hacer modificaciones manuales en el entorno X server en modo texto. Xconfigurator Esta herramienta puede usarse en modo texto o en modo GUI. Depende de desde qué modo se lance. Pasa a través de una serie de menúes que permite elegir las configuraciones apropiadas. No obstante, lo hace en un order establecido igual que xf86config. Si se cometen errores, será necesario pasar por los menúes una segunda vez. Un ejemplo de la pantalla de Xconfigurator se muestra en la Figura
.
Xf86cfg Esta herramienta puede usarse una vez que la GUI está operativa. Esta herramienta es similar a XF86Setup, no obstante, la interfaz del usuario funciona de manera un tanto diferente. La interfaz de la herramienta xf86cfg tiene imágenes del diferente hardware conectado al sistema. Hacer clic en el hardware específico que necesita configurarse mostrará los menúes que se usan para hacer ajustes. Algunas directrices a seguir al usar estas herramientas es usar el Xconfigurator al configurar un sistema por primera vez. Esto es así porque la configuración general puede establecerse fácilmente con esta herramienta. Luego, una vez que X se configuró inicialmente, use XF86Setup para hacer ajustes a la GUI. 9.3.4
Configuraciones de hardware
Se mencionó antes que los dispositivos de entrada y el hardware que interactúa con el sistema X Window y el X server necesita configurarse apropiadamente. Las herramientas usadas para ello también se han tratado. Algunos de los principales dispositivos de hardware que es necesario configurar con el X server son el teclado, el mouse, el monitor, y la placa de video. Si cualquiera de estos dispositivos no está configurado correctamente, X server no operará según su desempeño óptimo o puede no funcionar en absoluto. Teclado No hay muchas configuraciones que necesiten establecerse o cambiarse para el teclado. Las configuraciones por defecto funcionan bien. Hay una sola configuración que debería cambiarse no obstante. Ésta es la función AutoRepetición. Al mantener presionada una tecla en el teclado, el carácter se repetirá continuamente. Esta función puede ocasionar problemas y ser molesta en ocasiones. Es una buena idea inhabilitar esta función. Esto puede hacerse usando una de las herramientas de la GUI. Editar la línea AutoRepeat en el archivo de configuración puede cambiarlo. Cambiar los valores de retraso y velocidad cambiará la velocidad a la cual las teclas se repiten cuando se presionan en el teclado. El valor de retraso es el tiempo, en milisegundos, que el
sistema esperará hasta que la tecla se repita. La velocidad es el intervalo según el cual la tecla se repite una vez que el sistema comienza a repetirla. Un ejemplo de este archivo de configuración se muestra en la Figura
.
Otra importante configuración de teclado es el modelo y disposición del mismo. Estos valores se establecen durante la instalación y usualmente no es necesario cambiarlos. También podría haber una instancia en la cual la disposición del idioma del teclado necesite cambiarse. Esto podría ocurrir si algún otro usuario estuviera usando el sistema cuyo idioma nativo no es el de la configuración actual del teclado. Mouse La sección del archivo XF86Config que controla las configuraciones del mouse es la sección InputDevice de la versión 4.0.X, que se muestra en la Figura . Las configuraciones para mouse se denominan configuraciones de Puntero [Pointer] en la versión 3.3.X. Estas configuraciones se establecerán durante la instalación y no debería ser necesario cambiarlas. Algunas áreas importantes a notar en la sección InputDevice es la sección Protocolo [Protocol]. Ésta es la porción del archivo que indica qué tipo de mouse está conectado al sistema, USB, PS/2, serial, Microsoft, Logitech, etcétera. La sección Dispositivo [Device] de este archivo muestra el archivo a la que el mouse está asociado. Si el mouse es un PS/2 el nombre del archivo será /dev/psaux, /dev/usbmouse para un mouse USB, y /dev/ttyS0 o /dev/ttyS1 para un mouse serial. Monitor Las configuraciones del monitor pueden ser las más importantes de estas configuraciones. Si no se establecen exactamente, podría no funcionar y no habría pantalla. La sección Monitor del archivo XF86Config contiene las configuraciones para el monitor que el sistema está usando y se muestra en la Figura . La mayoría de estas configuraciones se establecerán durante la instalación. Algunas de las líneas importantes de este archivo son las configuraciones de Identifier, HorizSync, VertRefresh, y ModelName. La línea Identificador [Identifier] no contiene ninguna configuración crucial que afecte al monitor. La línea ModelName está ahí como identificador que puede editarse para contener cualquier cosa. Esto es para referencia del administrador, para que sepa qué tipo de modelo es el monitor. Cambiar este valor no tendrá ningún efecto en el sistema. 9.4 9.4.1
Configuración y Tareas Post-Instalación Post-instalación de aplicaciones y programas
Como en la instalación del OS Windows, habrá algunos agregados post-instalación que podrían ser necesarios para ejecutar servicios específicos. Por ejemplo, si se usa Linux Red-Hat 7.X, el archivo linuxconf no se agrega al sistema por defecto. Un ejemplo de la herramienta linuxconf se muestra en la Figura . Este archivo puede agregarse una vez completa la instalación cargándolo desde el CD de instalación. Las últimas fuentes lanzadas para cliente de e-mail como Elm, por ejemplo, deberá cargarse antes de configurar el sistema para e-mail. Hay tres tipos principales de administradores de paquetes con los que un administrador Linux necesita familiarizarse. El Administrador de Paquetes Red Hat (RPM), los Paquetes Debian, y Tarballs se usan para instalar y eliminar aplicaciones y programas en sistemas Linux una vez completo el proceso de instalación. Tarballs son archivos que se recolectan juntos usando el programa tar. Administrador de Paquetes Red Hat (RPM) RPM es el tipo más popular de administradores de paquetes. Aunque creado por Red
Hat, RPM es soportado por prácticamente todas las distribuciones principales de Linux. RPM proporciona las herramientas necesarias como bases de datos de paquetes que se necesitan para instalar y eliminar programas, no obstante, no todas las aplicaciones o programas usan RPM. Algunas aplicaciones y programas usan los paquetes Debian y algunos usan tarballs. Cada uno de los administradores de paquetes se tratará en detalle posteriormente en esta sección. La base de datos de paquetes es un sistema que verifica conflictos de propiedad de los archivos manteniendo el rastro de toda la base de datos RPM de archivos una vez que son instalados en el sistema. La base de datos del paquete se almacena en el directorio/var/lib/rpm La base de datos proporciona funciones como las siguientes:
•
Información sobre el Paquete – Esto almacena toda la información acerca de un paquete una vez instalado en el sistema. Información como fecha de fabricación, descripción, y número de versión se copia al directorio de base de datos del paquete. Si el paquete se elimina, la información acerca del paquete permanecerá en la base de datos.
•
Información sobre los Archivos – Esto guarda información sobre todos los archivos que se instalan en el sistema usando RPM. Esto incluye poder mantener un registro de a qué paquete pertenece un archivo específico. También mantendrá un rastreo de los permisos de los archivos. Cualquier cambio efectuado en los archivos instalados con RPM puede rastrearse hasta la persona que hizo los cambios.
•
Dependencias – Las dependencias se trataron anteriormente en este capítulo. La base de datos es donde la información de dependencia de la instalación de un paquete será almacenada.
•
Información sobre Provisión – Algunos paquetes que se instalan proporcionan funciones para otros paquetes que se instalan. Un cliente de correo, por ejemplo, necesita tener un servidor de correo para poder recuperar y enviar correo. Éste es un tipo de dependencia.
Diversidad de RPM Red Hat lanzó el software RPM bajo la Licencia Pública General (GPL). Esto significa que aunque RPM fue creado por Red Hat, estaba disponible para que cualquier distribución de Linux lo incluya como parte de la misma. Por esta razón, la mayoría de las principales distribuciones de Linux soportan RPM. Algunas distribuciones como Mandrake, Yellow Dog, TurboLinux, y LinuxPPC se basan todas en Red Hat y usan RPM. SuSE y Caldera Linux no se basan en Red Hat y también usan RPM. RPM proporciona compatibilidad a través de las diferentes distribuciones de manera muy similar a XFree86. RPM es soportado también en sistemas no Linux o UNIX. Estos sistemas no se basan en RPM como su principal sistema de distribución de paquetes, pero aún se lo soporta y usa. RPM es popular y diverso porque es soportado por varias CPUs. Se trató en capítulos anteriores que determinadas distribuciones de Linux son capaces de ejecutarse solamente en determinadas CPUs. Esto hace posible que RPM sea compatible con muchas de las distribuciones de Linux y por qué muchas de esas distribuciones usan RPM. Compatibilidad de RPM RPM ha probado ser muy diverso, pero hay algunos problemas de compatibilidad que necesitan tratarse. Algunos de estos problemas incluyen los siguientes: •
Es importante estar seguro de que la versión de RPM usada sea la misma en ambas distribuciones.
•
Un paquete RPM que está funcionando en un sistema puede no funcionar en otro. Esto puede deberse a que los paquetes de dependencia podrían no estar instalados en uno de los sistemas.
•
Si se intenta instalar un paquete que no puede reconocer el nombre del paquete de dependencia, el paquete no funcionará. Un ejemplo es al instalar el paquete cliente samba que depende del paquete samba común. Si la distribución que instala el paquete cliente samba usa un nombre diferente para el paquete que no sea samba-common, el paquete no funcionará.
•
Algunos paquetes pueden instalarse solamente en determinadas distribuciones. Determinados archivos del paquete podrían ser compatibles con solamente una distribución Linux en particular y esa distribución podría ser aquélla en el que el paquete puede instalarse.
•
Los servidores Linux que tienen paquetes que contienen scripts o archivos de configuración específicos de la distribución que están instalados en determinada carpeta por lo que se ejecutan automáticamente.
A pesar de los problemas de compatibilidad que surgen al usar paquetes RPM en varias distribuciones, raramente ocurren. Si hay problemas de compatibilidad, se recomienda tratar de encontrar un paquete comparable incluido con la distribución Linux que se está usando. Actualización de RPM Se mencionó en la sección de compatibilidad que dos diferentes distribuciones de Linux con diferentes versiones de RPM ejecutándose, podrían no instalar el mismo paquete en ambos sistemas. Cuando Red Hat lance una nueva versión de RPM, los paquetes asociados con esa versión se usarán en esa distribución. El usuario debe actualizar el sistema para que use los nuevos paquetes. Por ejemplo, Red Hat Linux 7.0 usa la versión 4 de las utilidades de RPM, estos paquetes de la versión 4 no pueden instalarse en sistemas con versiones anteriores de RPM. Un problema surge al intentar actualizar a la versión más moderna de RPM. Es imposible actualizar a la versión 4 más moderna sin tener la versión 4 instalada primero. Esto presenta un problema para sistemas que no tienen la versión 4 instalada. La única opción es actualizar todo el sistema operativo. Red Hat ha lanzado una actualización que permitirá una actualización desde una versión anterior sin tener que actualizar el OS. Comandos de RPM Distribuidos junto con los CDs de instalación de Linux hay cientos de RPMs adicionales. Una vez que la instalación de Linux está completa, estos RPMs pueden instalarse desde los CDs usando el comando rpm Por ejemplo, elegir no instalar el programa gráfico Gimp durante la instalación de Linux aún será posible instalando el archivo RPM desde el CD. Primero, el CD que contiene el RPM necesita montarse, y luego navegar al directorio que contiene el comando rpm para Gimp. Los comandos para lograr esto son los siguientes: mount /mnt/cdrom cd /mnt/cdrom/RedHat/RPMS rpm –UvH gimp-1.0.4-3.i386.rpm El comando mount /mnt/cdrom montará el CD. El comando cd /mnt/cdrom/RedHat/RPMS es el directorio donde se ubica el RPM, y el comando rpm –UvH gimp-1.0.4-3.i386.rpm es el nombre del paquete RPM Gimp que necesita instalarse.
Este paquete RPM puede ser confuso para alguien que lo vea por primera vez. Una vez que las partes se separan y explican, como se muestra en la Figura es más fácil de comprender.
el paquete RPM
Una vez que se ha descargado un paquete, se deberá verificar si la checksum MD5 coincide con la proporcionada en las páginas de descarga del paquete. Cada paquete tiene una checksum individual que se puede verificar mediante el siguiente comando: #md5sum <package> No todos los sistemas operativos soportan el comando md5sum. En algunos OSs se llama simplemente md5, otros no lo incluyen en absoluto. En Linux, es parte del paquete de Utilidades de Texto de GNU, que está disponible para un amplio rango de plataformas. Se puede descargar el código fuente del vínculo de más abajo también. Para los paquetes RPM, no hay checksum o firma separadas. Los paquetes RPM tienen una firma GPG incorporada y checksum MD5. Se puede verificarlas ejecutando el siguiente comando: #rpm --checksig <package>.rpm Administrador de Paquetes Debian Los paquetes Debian son muy similares a los paquetes RPM. Debian contiene una base de datos de paquetes que tiene las mismas funciones que la base de datos RPM, no obstante, la base de datos Debian está almacenada en el directorio /var/lib/dpkg La diferencia entre paquetes Debian y RPM es que no son intercambiables. Los paquetes Debian no pueden usarse en una distribución que soporte paquetes RPM, y viceversa. Un paquete Debian tendrá un aspecto similar al paquete RPM y se instala de manera muy similar. Un paquete Debian tiene el siguiente aspecto: # dpkg –i samba-common_2.0.7-3.deb Después de recordar lo que todas estas partes significan de la sección sobre el RPM, será fácil comprender qué representan estas partes del paquete Debian. Significan lo mismo, no obstante, los paquetes Debian usan dpkg en lugar de RPM para identificarse. Los paquetes Debian también usan switches que pueden colocarse al principio del comando para especificar instrucciones al paquete. Un ejemplo es -i, se usa para instalar el paquete. Otros ejemplos que pueden usarse son -r, que eliminará el paquete pero dejará sus archivos de configuración. El switch -P elimina el paquete y sus archivos de configuración, y -B inhabilita los paquetes que se basan en un paquete eliminado. Diversidad de los Paquetes Debian El Administrador de Paquetes Red Hat se originó en Red Hat, el Administrador de Paquetes Debian se originó en la distribución Debian de Linux. La evolución del administrador de paquetes Debian se dio de manera muy similar a RPM. Otras distribuciones que se basan en Debian como Storm Linux, Corel Linux, y Libranet usan paquetes Debian. Los paquetes y distribuciones Debian no han sido tan populares porque Debian Linux no enfatiza una instalación o herramientas de configuración GUI, lo que lo hace difícil para el usuario inexperto. Storm y Corel Linux han agregado algunas de estas características de GUI que los hacen más atractivos. El enfoque de Debian Linux se ha concentrado tradicionalmente hacia los principios de fuente abierta más que las distribuciones que se basan en los paquetes RPM. También de manera similar a los paquetes RPM, los paquetes Debian pueden usarse a través de varias distribuciones y con compatibles con diversas CPUs. Es raro ver un paquete Debian usado en un sistema que no sea Linux.
Tarballs Tarballs son por mucho el tipo más ampliamente soportado de paquete disponible con Linux. Tarballs, como los paquetes RPM y Debian, son una colección de archivos comprimidos que pueden descomprimirse e instalarse en un sistema Linux o UNIX. Tarballs se descomprime con la utilidad compress o qzip. Cada distribución puede usar tarballs para instalar o eliminar aplicaciones y programas. No obstante, tarballs no es tan avanzado como los paquetes RPM o Debian. Primero, tarballs no mantiene una base de datos de los paquetes. Esto hace difícil eliminar programas que se han instalado usando tarballs porque no hay una base de datos que mantenga el rastreo de dónde están ubicados todos los archivos. Tarballs no tiene información de dependencia. Esto puede hacer difícil determinar qué otro programa podría necesitar instalarse para que el programa actualmente instalado funcione. Incluso puede ser difícil saber si hay problemas de dependencia. Los paquetes RPM y Debian notificarán inmediatamente si hay problemas de dependencia. Los paquetes tarball son identificados por medio del comando tar Originalmente tarballs se usaba para archivar archivos en una dispositivo de backup a cinta y se conocía como "archivador de cinta" [tape archiver]. Tarballs es un medio excelente de hacer backups y comprimir archivos en un disco rígido. Llevar a cabo un backup mediante el comando tar e tratará en capítulos posteriores. El comando tar e usa en conjunción con una utilidad de compresión como compress, gzip o bzip2. El más popular de los tres es gzip. Los archivos se comprimen primero con una de estas utilidades de compresión, y luego se archivan usando el comandotar Como resultado, el archivo tendrá dos extensiones, como .tar.gz.Tarballs es similar a los archivos zipeados mediante la utilidad WinZip en Windows. Un ejemplo de un paquete tarball que se está descomprimiendo e instalando es el siguiente: # tar –xvzf samba-2.0.7.tar.gz Se mencionó anteriormente que tarballs podía usarse como mecanismo de distribución de paquetes en cualquier distribución de Linux. No obstante, Slackware es una distribución de Linux que principalmente usa sólo Tarballs. Slackware es la más antigua de las principales distribuciones de Linux. Como Debian Linux, Slackware no usa una configuración o herramientas de instalación GUI de lindo aspecto. Slackware tiende a favorecer un enfoque más simple en lugar de usar cualquiera de las herramientas de administración de paquetes que vienen con paquetes RPM y Debian. 9.4.2
Creación de archivadores y cambios básicos para makefiles
gzip Desafortunadamente, la mayoría de los programas de software que encontrará se encuentran en formato de paquete RPM. Por lo común, estas piezas se descargan mediante FTP anónimo de algún sitio de archivadores. El proceso de instalar software puede ir de lo extremadamente simple hasta lo casi imposible. Todo depende de cuán bien los autores del software escribieron sus scripts de instalación y de cuán buena es la documentación de instalación. Los paquetes de software que se obtienen mediante FTP anónimo estarán virtualmente todos en la forma de un archivo tar comprimido. Estos archivos pueden crearse de un par de maneras diferentes. Por lo común, un árbol de directorio contiene archivos fuente, librerías, documentación, ejecutables y otros archivos necesarios que se empaquetan en un archivo tar usando el programa tar. Este archivo tar es comprimido después por lo general para ahorrar espacio. El paquete de software probablemente tendrá una extensión al final del nombre de archivo que le indica en qué formato se encuentra. Si el archivo termina en .gz, fue comprimido con el programa gzip de GNU. Éste es el formato de compresión de archivos más común de los paquetes de software de Linux. Si el nombre del archivador
termina con una .Z, fue comprimido con el programa compress. Por ejemplo, el paquete de software test.tar.gz es un archivador tar que ha sido comprimido con gzip. Algunos paquetes de software son bastante grandes, así que es una buena idea colocarlos en un sistema de archivos que tenga una buena cantidad de espacio libre. Algunas personas crean un sistema de archivos separado para fuentes y lo montan bajo un directorio, como /usr/local/src o /src. Donde quiera que decida construir sus paquetes de software, asegúrese de que tenga el suficiente espacio en el disco para que el software pueda compilarse exitosamente. Ahora, puede seguir adelante y mover el paquete de software al árbol fuente que ha establecido y descomprimirlo y expandir el archivador. Si un archivo está comprimido con gzip, se puede descomprimirlo con el comando gzip -d. Por ejemplo, el siguiente comando expande el archivo comprimido test.tar.gz y lo reemplaza por el archivador tar llamado test.tar.
•
gzip -d test.tar.gz
cpio El comando cpio manipula archivos llamados archivadores cpio. Un cpio copia los archivos dentro o fuera de un archivador tar. El archivador puede ser otro archivo en el disco, una cinta magnética, o un pipe. Con cpio, se puede crear un nuevo archivador, extraer el contenido de un archivador existente, hacer una lista de los contenidos del archivador, y copiar archivos de un directorio a otro. Cuando cpio agrega un archivo no comprimdo a un archivador, lo almacena como archivo no comprimido pero también almacena su atributo. Cuando un archivo con un atributo no comprimido es extraído a un sistema de archivos NTFS (que soporta archivos no comprimidos), el archivo es extraído como archivo no comprimido. En otros sistemas de archivos, se advierte y se extrae como archivo comprimido. Los archivos no comprimidos de un archivador nunca se crean porque la mayoría de las cintas, diskettes y otros medios de archivo no pueden comprenderlos. Se recomienda que comprima cualquier archivador que contenga archivos con el atributo de no comprimido establecido para mantener el tamaño del archivador razonable. Las tres formas del comando mostrado abajo representan las principales funciones de cpio. Cada llamada a cpio debe especificar una y sólo una de las siguientes opciones principales:
•
-i – Lee un archivador existente (creado con la opción -o) a partir de la entrada estándar.
•
-o Escribe un nuevo archivador a la salida estándar, usando la lista de archivos leídos a partir de la entrada estándar. Tal lista podría se producida por los comandos ls o find. Por ejemplo, el siguiente comando usa ls para hacer una lista con los archivos del directorio actual, luego usa pipe para pasar esta lista como entrada para cpio. El archivador resultante contiene el contenido de todos los archivos, y se escribe en arch. ls . | cpio -o >arch -p Copia la lista de archivos leídos desde la entrada estándar al directorio especificado. Se puede usar esta opción para copiar árboles de archivos enteros.
Para copiar todo el sistema de archivos de un diskette al directorio actual, use: find a: -type f | cpio -pvd . Para archivar el directorio actual en un diskette en formato portátil: find . -type f | cpio -ocO a:
Para recuperar un directorio a partir de un diskette archivador portátil: cpio -icdm -I a: Makefiles Makefiles se usa para compilar programas y paquetes. Para instalar algunos programas es enecesario compilar los archivos binarios y librerías. La aplicación de medios Xine es un perfecto ejemplo de esto, que se trató previamente. Lleva mucho tipeo compilar un programa con varios archivos fuente. Además, si se tienen las líneas suficientes de código fuente, puede llevar mucho tiempo para el compilador realmente compilarlas todas. Hay un programa llamado make que le permite compilar automáticamente todos sus archivos fuente simplemente tipeando make. Esto nuevamente, se hizo para Xine antes. Además, si solamente se han cambiado algunos de los archivos, solamente recompilará aquellos archivos fuente que dependen de los archivos en los cuales haya hecho cambios. Por supuesto, tiene que indicar qué archivos dependen de qué otros archivos creando un archivo llamado Makefile. Hay cuatro tipos básicos de sentencias en un Makefile:
•
Comentarios Cualquier línea que comience con un # es un comentario y será ignorado.
•
Macros Las macros asumen la siguiente forma:
•
•
nombre = datos Éstos se interpretan de manera similar a las sentencias #define en ANSI C. Todas las instancias de $(nombre) en las sentencias siguientes son reemplazados por datos. Por ejemplo, si la siguiente macro:
•
SRC = main.m Hace que una línea se interprete como: gcc main.m
Reglas explícitas Las reglas explícitas le indican a make qué archivos dependen de la compilación de otros archivos, y los comandos requeridos para compilar un archivo en particular. Asumen la siguiente forma:
•
targetfile: sourcefiles Esta regla de arriba dice que para crear el targetfile (archivo de destino), make debe llevar a cabo los comandos enumerados en sourcefiles (archivos fuente). Por ejemplo, la siguiente regla significa que para poder crear el archivo de destino main, los archivos fuente main.m y List.h tienen que existir, y make deberá usar el comando gcc -o main main.m List.h para crearlo. main: main.m List.h gcc -o main main.m List.h
•
Reglas implícitas Las reglas implícitas son iguales que las reglas explícitas, excepto que se las enumera sin comandos. make usa los sufijos de los archivos para determinar qué comando llevar a cabo.
9.4.3
Instalación y reconfiguración del cargador de arranque
La instalación y configuración del Cargador de Arranque se hace inicialmente durante el proceso de instalación. No obstante, hay ocasiones en las cuales el cargador de arranque necesitará reconfigurarse. Por ejemplo, después de la instalación del sistema operativo un usuario podría necesitar hacer ajustes en el tiempo que el cargador de arranque se retrasa hasta cargar el kernel Linux. El usuario puede agregar otro sistema operativo para un arranque dual y necesitará hacer el ajuste necesario al cargador de arranque. A menudo los archivos de configuración del cargador de arranque necesitarán editarse para efectuar estos cambios. En otras ocasiones puede ser necesario cambiar los cargadores de arranque. Linux proporciona más de un cargador de arranque. GRUB y LILO son los dos cargadores de arranque principales que se usan en Linux hoy. Es un proceso muy fácil instalar un nuevo cargador de arranque o pasar a GRUB si se usa LILO o a LILO si se usa GRUB. El Propósito del Cargador de Arranque Es importante comprender el rol que el Cargador de Arranque juega en el proceso de arranque. El Módulo 7 trata los detalles del proceso de arranque de Windows y cita el proceso de arranque de Linux también. El proceso de arranque en Linux es muy similar al de Windows. También se trató que LILO podía usarse para arrancar el sistema operativo Linux. Linux es capaz de usar otros cargadores de arranque que no sean LILO. El programa cargador de arranque de Linux reside en el Registro de Arranque Maestro (MBR) en un diskette o disco rígido. El MBR se encuentra en el primer sector del disco y es lo que se usa para arrancar el sistema operativo. Este primer sector de un disco rígido que controla el proceso de arranque se conoce como Sector de Arranque. En sistemas Linux el Cargador Linux (LILO) es un programa que controla el proceso de arranque. GRUB, OS Loader y System Commander son ejemplos de otros tipos de cargadores de arranque y se tratarán en la siguiente sección. LILO es más complejo comparado a los que se encuentran en otros sistemas operativos como Windows. LILO es capaz de ser configurado para arrancar uno o varios sistemas operativos en un disco rígido. LILO puede usarse para arrancar otros sistemas operativos que no sean Linux. No obstante, LILO debe instalarse siempre en la partición Linux porque dañará la mayoría de sistemas de archivos no Linux. Otros cargadores de arranque Linux incluyen los siguientes:
•
GRUB El GRand Unified Bootloader es el más moderno cargador de arranque para Linux. Es en realidad el cargador de arranque por defecto para Red Hat.
•
OS Loader Este cargador de arranque es el cargador de arranque que se encuentra en sistemas Windows y DOS. También se lo conoce como NTLDR. Este cargador de arranque no puede arrancar Linux directamente pero puede arrancar un disco que contenga LILO y por lo tanto arrancar Linux indirectamente.
•
System Commander Éste es un cargador de arranque muy avanzado con muchas funciones y configuraciones avanzadas. Al igual que NTLDR, no puede arrancar Linux directamente pero puede hacerlo indirectamente.
Configuración del Cargador de Arranque LILO Lo primero que cualquier administrador de sistemas necesita saber acerca de la configuración del cargador de arranque LILO es el archivo lilo.conf, que se muestra en la Figura . Éste es el archivo que define cómo se arrancará un sistema. Cada línea de este archivo contiene información acerca de cómo se arranca el sistema. Define desde qué partición arrancar, cuál es el OS por defecto para arrancar si hay más de uno, y cuánto tiempo la pantalla de LILO se retrasará al arrancar. Para reconfigurar LILO, el usuario debe tener algún conocimiento acerca de la información contenida en este archivo y cómo hacer los cambios necesarios para reconfigurar LILO. Las secciones del archivo lilo.conf son las siguientes:
•
boot=/dev/hda Esta sección del archivo define dónde se instalará LILO. En este caso LILO se instalará a sí mismo en el MBR del primer disco EIDE. La porción hda indica esto. Para cambiar la ubicación de dónde se encuentra LILO simplemente cambie esta porción del archivo a un valor que represente otra partición de Linux.
•
Prompt Agregando esta línea al archivo LILO pedirá al usuario que seleccione un OS para arrancar antes de arrancar el OS. Esta línea puede eliminarse si no se desea ningún prompt para el usuario.
•
timeout=50 Esto representa el tiempo en décimas de segundo que LILO tardará hasta arrancar el sistema operativo.
•
default=linux Esto define el sistema operativo por defecto que se cargará.
•
lba32 Agregar esta línea al archivo lilo.conf especifica que LILO puede arrancar kernels ubicados más allá del 1024º cilindro del disco rígido.
Hay unas pocas cosas que es importante conocer acerca del cargador de arranque LILO. La página man de lilo.conf es otro buen lugar para averiguar más acerca del archivo lilo.conf. Después de hacer cambios al archivo lilo.conf, el comando lilo debe introducirse en el prompt de comandos para activar los cambios que se han hecho. Es importante no olvidar este paso o el sistema continuará usando el antiguo cargador de arranque. Configuración de LILO para Dos Sistemas Operativos Hay dos cosas a considerar al agregar o instalar otro sistema operativo. Primero, es una buena idea usar LILO porque LILO puede usarse para arrancar el otro sistema operativo. La segunda cuestión a considerar es que configurar LILO para Linux y un segundo OS no es tan difícil. Requiere hacer los cambios necesarios al archivo lilo.conf que se trató en la sección anterior. Para configurar LILO para dos sistemas operativos Linux, introduzca nueva información al archivo lilo.conf. Este nuevo texto tendrá exactamente el mismo aspecto que el texto que ya está ahí para el OS existente. Si el nuevo OS Linux tiene una versión de kernel diferente, la única parte de este texto que será necesario cambiar es la línea de la imagen. Será necesario especificar también la partición raíz correcta para el nuevo OS. El procedimiento correcto para ello puede ser un poco complicado, pero no es tan difícil. Primero, la partición raíz del segundo sistema operativo Linux necesita montarse dentro del sistema de archivos Linux existente, luego configurar la nueva partición raíz para que señale al kernel del segundo sistema Linux. Esto es realmente simple. Todo lo que se requiere es agregar la línea apropiada al archivo lilo.conf para que señale al kernel del nuevo sistema Linux. La segunda partición raíz necesita instalarse en un directorio de la partición del sistema existente como /linux2 por ejemplo. Luego, la línea de la imagen para el segundo OS en lilo.conf necesita cambiarse a algo como image=/linux2/boot/bzImage-2.2.17. Configurar LILO para otro OS además de Linux es un proceso más simple. Nuevamente, es necesario agregar el texto apropiado al archivo lilo.conf. Agregar el parámetro other al archivo hace esto. Por ejemplo, agregue el siguiente texto al archivo lilo.conf al configurar LILO para arranque dual con Windows: Other=/dev/hda3 label=windows table=/dev/hda Instalación de un Nuevo Cargador de Arranque El proceso es bastante fácil cuando se usa el cargador de arranque LILO y se lo reemplaza por otro cargador de arranque como GRUB. Primero, será necesario configurar el archivo grub.conf. Este archivo es similar al archivo lilo.conf en que
contiene la información requerida para arrancar el sistema operativo. Este archivo ya debería existir y estar configurado con los valores por defecto del sistema dependiendo de qué distribución se usa. Una vez que el archivo grub.conf ha sido configurado con cualquier cambio por hacer, el usuario debe decidir dónde instalar el cargador de arranque GRUB. Para instalar el cargador de arranque GRUB en el MBR del primer disco rígido introduzca el siguiente comando en el prompt: # grub-install /dev/hda Esto habilitará el MBR para que ahora arranque usando GRUB en lugar de LILO. Ahora, vuelva a arrancar la computadora y la pantalla de arranque de GRUB debería verse ahora. Si el usuario está usando GRUB inicialmente y ahora desea usar el cargador de arranque LILO, use el mismo proceso que antes, pero en cambio use el archivo lilo.conf. Luego, use el comando lilo para escribir el nuevo MBR y hacer que el sistema arranque usando LILO. 9.4.4
Problemas del kernel
El kernel del sistema operativo se ha mencionado algunas veces en la sección anterior. No obstante, nunca se ha explicado completamente qué es el kernel o qué hace por el sistema. El kernel es esencialmente el motor que hace funcionar el sistema operativo. El kernel de un sistema operativo proporciona funciones como administración de la memoria, controladores de hardware de bajo nivel excluyendo controladores de video X y controladores de impresora, programación de cuándo procesos específicos obtienen acceso a la CPU, otorgación de permisos a los programas para acceder a la red, y control de acceso al sistema de archivos de una unidad de disco rígido. Un usuario común no usará el kernel directamente y muchos usuarios no sabrán que existe. Los programas que están instalados interactúan con el kernel constantemente. Hay solamente unas pocas razones por las cuales un administrador necesitaría preocuparse por el kernel. El administrador debe asegurarse de que la versión del kernel esté actualizada. Si la versión es demasiado antigua, determinados dispositivos de hardware pueden no funcionar. Luego, sería necesario instalar una nueva versión si la que está actualmente instalada no funciona. El sistema también debe configurarse para que arranque el kernel apropiado. Esto se trató en la sección anterior. Numeración del Kernel Una versión típica del Kernel Linux podría tener un aspecto tal como Linux 2.4.3. Esto no sirve de mucho para el usuario inexperto. No obstante, como administrador que sabe qué representa cada uno de estos números, éstos serán de ayuda para determinar cuándo actualizar el kernel. El primer número es el número principal. Este número no cambia porque representa un cambio importante o significativo en el kernel. El segundo número indica si la versión es una versión estable o experimental. Si el número es par se trata de un kernel estable, y debería ser seguro instalarlo. Si el número es impar, está todavía en las etapas experimentales y no se recomienda para lanzarlo o ser instalado. El tercer número representa cualquier arreglo pequeño o menor usualmente hecho a una versión del kernel ya estable. Esto puede hacerse cuando se arreglan bugs y tal vez cuando se agregan controladores. Recompilación del Kernel A veces es necesario actualizar el kernel como cualquier programa podría necesitar actualizarse. Instalar un paquete, como cualquier otro programa, puede hacer esto. Algunos administradores Linux prefieren compilar su propio kernel a partir del código fuente. Compilar el kernel puede ofrecer varias ventajas incluyendo las siguientes:
•
Optimización del kernel Optimiza el kernel para un desempeño máximo compilando el kernel para la CPU específica del sistema.
•
Configuración individual de controladores Compilando manualmente el kernel, seleccione qué controladores han de agregarse. Una base de datos de controladores necesita instalarse.
•
Capacidad para aplicar patches Compilar manualmente el kernel permitirá aplicar patches o actualizaciones.
En general, no es necesario compilar el kernel manualmente, no obstante, esto puede ofrecer algunos beneficios adicionales. 9.4.5
Variables del entorno
Las Variables del Entorno contienen información acerca del sistema informático que usan los programas para obtener un informe de estado sobre la condición actual de la computadora. Las Variables del Entorno en un sistema Linux contienen información como directorio home del usuario, espacio en disco, nombre de host, el nombre del shell actual, o simplemente para averiguar qué recursos están disponibles en el sistema. Los programas que están instalados contienen algunas de sus propias variables del entorno que se usan para saber dónde están ubicados sus archivos de configuración o cómo mostrar información. Variables del Entorno Comunes de Linux Existen muchos tipos diferentes de variables del entorno que pueden establecerse para un sistema Linux. Para ver una lista de todas las actualmente establecidas, tipee el comando env en el prompt. La salida de este comando se muestra en la Figura Algunas de las variables son las siguientes:
.
•
PATH Ésta es una de las variables del entorno más importantes que hay en un sistema Linux. Esta variable contiene una lista de directorios en las que el sistema buscará programas ejecutables cuando se introducen en el prompt de comandos.
•
TERM Esta variable representa el tipo de terminal actual. La variable TERM contiene información que permite a un sistema Linux conocer qué comandos soporta la terminal.
•
DISPLAY Ésta es la variable que identificará la pantalla usada por el sistema X Window.
•
PWD Muestra el directorio de trabajo actual.
•
USER Ésta es una variable que es mantenida por el sistema que le permite saber qué usuario ha iniciado sesión.
•
HOSTNAME Ésta se usa para mostrar el nombre de host TCP/IP actual de la computadora.
•
LD_LIBRARY_PATH Las librerías se trataron anteriormente en este capítulo. Ésta es la variable que algunos programas usan para indicar los directorios en los cuales pueden hallarse las librerías.
•
PS1 Esta variable representa el prompt por defecto para el shell bash. Se usa para identificar el shell bash de otros shells que podrían estarse ejecutando en el sistema.
Éstos son solamente algunos de los muchos perfiles de entorno que pueden configurarse en un sistema Linux. No obstante, éstos son los más importantes y los que
se usarán más a menudo. A veces un programa que se instala después de la instalación del sistema operativo requerirá la configuración de ciertas variables del entorno. En este caso, configúrelas en /etc/profile/ o en cualquier archivo de configuración al que el programa pueda acceder. Configuración de la Variable del Entorno de la Sentencia $PATH Una de las más útiles variables del entorno a configurar tan pronto como la instalación está completa es la variable $PATH. Esto tiene el mismo uso que configurar la variable PATH bajo DOS. Bajo Linux también, modificar PATH agregaría estos nuevos directorios a su ruta de búsqueda por defecto. Por ejemplo, si tiene un ejecutable en particular en un directorio en particular, entonces agregue ese directorio a su PATH. Luego sólo tendría que tipear el nombre del ejecutable en el prompt en lugar de la ruta absoluta para ese ejecutable. Supongamos que acaba de instalar Netscape en una carpeta llamada /usr/local/netscape. Para poder ejecutar este programa tendría que tipear la ruta completa en el prompt, que sería: #/usr/local/netscape El comando de arriba ejecutaría su programa. No obstante, tipear esto cada vez que desea lanzar Netscape es un tanto engorroso y a menudo es imposible recordar la ruta absoluta de cada programa. Agregue el directorio /usr/local/netscape a su sentencia $PATH, para que en la siguiente ocasión solamente tenga que tipear 'netscape' en el prompt y no la ruta absoluta. Para agregar este directorio a su PATH tendrá que editar su archivo .bash_profile ubicado en su directorio home. Este archivo tendría una línea en particular qu comienza con la cadena PATH. Por ejemplo, el archivo contendría una línea como la siguiente
:
PATH=/optional/bin:$PATH: $HOME/bin Para agregar el directorio /usr/local/netscape a éste tendrá que modificar esta línea de la siguiente forma: PATH=/usr/local/netscape: optional/bin:$PATH:$HOME/bin Una vez que haya modificado este archivo, guárdelo y luego ejecútelo como sigue: . $HOME/.bash_profile Para ejecutar el script de arriba, en el prompt $ tipee un punto ' . ' deje un espacio y luego tipee $HOME/. Una vez hecho esto presione la tecla Tab. Hacerlo reemplazará lo que haya tipeado por la ruta a su directorio home. Una vez que esto ocurre todo lo que tiene que hacer es agregar .bash_profile a lo que ya está presente en el prompt y finalmente presionar <Enter> Al ejecutar el script no vería ningún mensaje en la salida, pero luego podría tipear simplemente 'netscape' en el prompt para ejecutar el programa. 9.4.6 Verificación del funcionamiento y desempeño apropiados de las aplicaciones La etapa final del proceso de instalación consiste en probar y verificar que los programas, aplicaciones y sistema operativo estén funcionando apropiadamente. Una vez que el sistema operativo inicial se ha instalado y las configuraciones e instalaciones post-instalación se han establecido, es importante probar las configuraciones antes de implementar el sistema. Una prueba apropiada ahorrará tiempo al administrador en resolver problemas después. Los problemas son inevitables y ocurrirán después de probar el funcionamiento y desempeño apropiados. Cómo arreglar estos problemas se tratará en el Capítulo 13, esta sección se concentra en
cómo probar aplicaciones en un sistema de prueba así como en un sistema de producción. Verificación en un Entorno de Prueba Hay muchas razones para probar las aplicaciones y programas antes de instalarlos en un entorno de producción. Supongamos que se está efectuando una actualización completa del sistema operativo. Por ejemplo, una compañía desea actualizar todos sus sistemas Linux a Red Hat 7.2. Es una buena idea instalar el sistema operativo primero en una red de prueba. Luego instale todos los programas y aplicaciones en el sistema y verifique que todo funcione apropiadamente. Incluso si se trata de una única aplicación o una actualización a una aplicación, no es inteligente instalarla directamente en un sistema de producción. Hacerlo puede introducir bugs, cambios de configuración a formatos de archivos, y compatibilidad con otros programas. Probar y evaluar el nuevo software en un sistema de prueba ayuda a reducir estos problemas. Para establecer un entorno de prueba apropiado, recree tan exactamente como sea posible el sistema o sistemas existente(s). Esto incluye tener el sistema operativo exacto y los programas instalados en el sistema así como asegurarse de que el sistema de prueba tiene todos los mismos archivos de configuración y configuraciones que tiene el sistema de producción. Esto incluye tener el hardware exacto en el sistema de prueba que en el sistema de producción. De ser posible, es una buena idea copiar la imagen del disco rígido del sistema de producción al disco rígido del sistema de prueba. Si se está haciendo una actualización es una buena idea instalar la versión antigua en el sistema de prueba y llevar a cabo la actualización como se haría en el sistema de producción. En algunos casos, crear una réplica exacta de la computadora de producción no es una opción. Esto no es enteramente malo ya que la mayoría del software instalado no depende de qué hardware está instalado. No obstante, la versión y distribución correctas de Linux debe instalarse en el sistema de prueba que estará en el sistema de producción. Esto se debe a que diferentes distribuciones de Linux pueden contener colecciones de paquetes muy diferentes, que contienen controladores específicos. Por lo tanto, si no se sigue esta regla, cuando el software se use en un sistema de producción, podría fallar. Un único programa podría simplemente involucrar probar unas pocas veces y puede llevar muy poco tiempo. Una instalación importante de software o paquete como un nuevo servidor web o sistema operativo deberá requerir pruebas más extensivas y formales. Una buena práctica cuando se hace la instalación o se actualiza en el entorno de prueba es tomar buenas notas para referirse a ellas cuando se haga el trabajo real en el entorno de producción. Verificación en un Entorno de Producción Una vez que las pruebas apropiadas se han llevado a cabo en el entorno de prueba y todo ha sido verificado y funciona apropiadamente, es hora de instalar el software en el sistema de producción. Una buena práctica es hacer un backup de todo en el sistema de destino primero en caso de que algo efectivamente salga mal. Otra buena práctica es establecer marcas de desempeño antes de la actualización. Éstas pueden compararse después de que la actualización esté completa para probar si el sistema puede manejar eficazmente el nuevo software. Esto deberá cubrirse en el entorno de prueba, recuerde que no siempre es posible establecer una réplica completa del sistema de producción. Con los archivos en backup es posible restaurar el sistema a su configuración original. Incluso si se pasa la prueba, cualquiera que haya hecho instalaciones y actualizaciones en computadoras sabe que los problemas pasan y nada funciona 100 por ciento del tiempo. Algunos problemas importantes a tener en cuenta es que lo más probable es que el sistema de producción necesite llevarse offline para poder llevar a cabo la actualización o instalación. A veces es una buena idea, para que, si algo sale mal otras
computadoras conectadas al sistema no se vean afectadas. Otra cosa importante a tener en cuenta es que podría haber otras computadoras o usuarios de esas computadoras que se basan en el sistema que se está actualizando. Esto es especialmente cierto si el sistema es un servidor de red. Por ejemplo, si el sistema es un servidor de archivos que contiene los archivos de la compañía a los que los empleados necesitan acceder. De ser éste el caso, entonces el mejor momento para programar la actualización es durante momentos en los cuales los usuarios vayan a usar lo menos posible el servidor. Otra buena idea podría ser mantener el sistema de prueba disponible para reemplazar temporalmente el sistema de producción mientras se lo está actualizando. En último lugar, es importante notificar a los usuarios del trabajo que se está haciendo para que estén concientes y puedan prepararse para el tiempo de inactividad del servidor por anticipado. Una vez que la instalación o actualización se ha completado y el sistema de producción está de nuevo online y funcionando, es una buena idea practicar una serie de pruebas. Esto es para asegurarse de que el sistema funcionará apropiadamente. Una buena práctica en este punto es establecer el desempeño post instalación o actualización mediante marcas y compararlas con las marcas tomadas antes. Como parte de la verificación en un entorno de producción viene un continuo monitoreo durante días e incluso semanas si la instalación o actualización fue importante. En un sistema Linux use el comando ps para verificar que el proceso aún esté en funcionamiento. Es una buena idea verificar los archivos log del sistema para monitorear el desempeño del sistema a lo largo de un periodo de tiempo. Los archivos log en sistemas Linux se almacenan usualmente en el árbol de directorios /var/log. Resumen El proceso de instalación de Linux involucra la implementación de muchas decisiones que se tomaron durante la etapa de planificación. Varias de las opciones que es necesario considerar e implementar durante la instalación en primer lugar son, ejecutar el instalador de Linux, elegir una instalación de GUI o texto, configurar diversas opciones, y elegir paquetes que es necesario instalar. Una vez completa la instalación, el sistema deberá reiniciarse. La instalación básica es el primer paso de todo el procedimiento de instalación. Otra tarea a considerar es la configuración de la GUI del X server. El proceso de instalación intentará a veces auto-configurar el X server. A menudo lo hará con una configuración sub-óptima. Muchas de las utilidades de configuración pueden usarse para optimizar la configuración X una vez completo el proceso de instalación. Hay varias tareas postinstalación que a veces se necesitan, como cambiar administradores de ventanas o entornos de escritorio.