You are on page 1of 162

LE- 201 - Linux Enterprise / Administracin de servidores

Tabla de contenido
Instalacin del sistema operativo CentOS Linux.............................................................7 Aspectos bsicos del hardware.........................................................................................8 La CPU..........................................................................................................................8 El kernel de Linux y Multi-core......................................................................................9 Memoria.......................................................................................................................12 Buses...........................................................................................................................13 Controladores y perifricos.........................................................................................13 Espacios de direcciones..............................................................................................14 Cronmetros................................................................................................................15 Interrupciones..............................................................................................................16 Informacin de hardware adicional.............................................................................16 Instalacin de CentOS Linux...........................................................................................17 Nombres de Dispositivo en Linux................................................................................17 Crear un CD-ROM de arranque de instalacin...........................................................18 Arranque de la instalacin desde un USB pen drive..................................................18 Interfaz grfica de usuario del programa de instalacin.............................................19 Nota sobre las consolas virtuales................................................................................19 Opciones de arranque adicionales..............................................................................19 Seleccin de un mtodo de instalacin.......................................................................21 Instalacin desde un CD-ROM....................................................................................21 Instalacin desde un disco duro..................................................................................22 Preparacin para la instalacin de red........................................................................22 Instalacin a travs de NFS........................................................................................22 Instalacin a travs de FTP.........................................................................................23 Instalacin a travs de HTTP......................................................................................23 Particionamiento automtico de discos...........................................................................23 Esquema de particionamiento recomendado..............................................................24 Configuracin del gestor de arranque.............................................................................26 Primer arranque...............................................................................................................26 Configuracin del cortafuegos.....................................................................................26 Configuracin de Kdump.............................................................................................26 Configuracin de SELinux...........................................................................................27 El archivo anaconda-ks.cfg..............................................................................................27 Administracin del sistema de archivos.........................................................................29

El sistema de archivos.....................................................................................................30 Extended File System .................................................................................................31 Grupos de bloques..................................................................................................32 Super Bloque...........................................................................................................33 Descriptor de grupo.................................................................................................34 Mapa de bits de bloques.........................................................................................35 Mapa de bits de inodos ..........................................................................................35 Tabla de inodos ......................................................................................................35 El inodo Extended File System...................................................................................35 El sistema de archivos EXT3......................................................................................37 Gestin de particiones.....................................................................................................39 Numeracin de particiones..........................................................................................39 Usando fdisk................................................................................................................40 Creacin del sistema de archivos....................................................................................41 Ajustando parmetros del sistema de archivos ext2/ext3...........................................42 Montado de sistemas de archivos ..............................................................................43 Ejemplo de la adicin de un disco con sistema de archivos ext3...............................46 Verificacin y reparacin del sistema de archivos ext2/ext3......................................49 Gestin del espacio Swap...............................................................................................51 Aadir el espacio Swap...............................................................................................52 Aadir un archivo swap...........................................................................................53 Utilizacin de autofs.........................................................................................................54 Proceso de arranque, inicio y cierre del sistema...........................................................56 Proceso de arranque.......................................................................................................57 Vista detallada del proceso de arranque.....................................................................58 El BIOS........................................................................................................................58 El gestor de arranque..................................................................................................59 Gestores de arranque para otras arquitecturas..........................................................60 El kernel.......................................................................................................................60 Programa /sbin/init.......................................................................................................61 Ejecutar programas adicionales en el momento de arranque....................................64 Uso de sysctl ...................................................................................................................64 Niveles de ejecucin de SysV Init...................................................................................65 Niveles de ejecucin....................................................................................................66 Utilidades de los niveles de ejecucin........................................................................67 Cierre del sistema............................................................................................................68 Administracin de usuarios..............................................................................................70 Usuarios y grupos............................................................................................................71

Herramientas de administracin de usuarios y grupos...............................................71 Configuracin de usuarios desde la lnea de comandos................................................72 Aadir un usuario........................................................................................................72 Aadir un grupo...........................................................................................................73 Vencimiento de la contrasea.....................................................................................74 El archivo /etc/passwd.................................................................................................75 El archivo /etc/group....................................................................................................76 Grupos de usuario privado..........................................................................................76 Directorios de grupos..................................................................................................77 Contraseas Shadow......................................................................................................78 El archivo /etc/shadow.................................................................................................79 Configuracin de la autenticacin...................................................................................81 Mtodos de autenticacin...........................................................................................81 Instalacin y gestin de paquetes...................................................................................84 Gestin de paquetes........................................................................................................85 Metas de diseo RPM.................................................................................................86 Instalacin de paquetes RPM.....................................................................................87 Paquete ya instalado...................................................................................................88 Archivos en conflicto....................................................................................................88 Dependencias no resueltas.........................................................................................89 Desinstalacin.............................................................................................................90 Actualizacin...............................................................................................................90 Refrescamiento...........................................................................................................91 Consultas.....................................................................................................................92 Verificacin..................................................................................................................93 Verificando la firma del paquete......................................................................................95 Importar claves............................................................................................................96 Verificacin de la firma de paquetes...........................................................................96 Tcnicas de uso de rpm..................................................................................................97 Yellowdog Updater Modified (YUM)................................................................................99 Configuracin de YUM................................................................................................99 Utilizacin de YUM....................................................................................................103 Creacin de un repositorio yum local........................................................................104 Creacin del repositorio base para YUM..................................................................104 Creacin del repositorio updates para YUM.............................................................105 Configuracin de los equipos para utilizar el repositorio YUM local.........................106

Configuracin de impresoras ........................................................................................108 Aadir una impresora local........................................................................................110 Aadir una impresora IPP.........................................................................................111 Aadir una impresora UNIX (LPD) remota................................................................112 Aadir una impresora Samba (SMB)........................................................................112 Aadir una impresora JetDirect.................................................................................113 Seleccin del modelo de impresora..........................................................................114 Administracin de trabajos de impresin......................................................................115 Deshabilitando las impresoras y las colas de impresin...............................................117 Compartir una impresora...............................................................................................119 El sistema X Window.......................................................................................................121 El lanzamiento X11R7.1................................................................................................122 Entornos de escritorio....................................................................................................123 Gestores de ventanas....................................................................................................124 Archivos de configuracin del servidor X......................................................................126 El archivo xorg.conf...................................................................................................126 La estructura de Xorg............................................................................................126 Seccin ServerFlags.............................................................................................127 Seccin ServerLayout...........................................................................................128 Seccin Files.........................................................................................................129 Seccin Module.....................................................................................................130 Seccin InputDevice.............................................................................................131 Seccin Monitor.....................................................................................................132 Seccin Device......................................................................................................134 Seccin Screen.....................................................................................................136 DRI.............................................................................................................................137 Fuentes..........................................................................................................................138 Fontconfig..................................................................................................................138 Aadir fuentes a Fontconfig......................................................................................138 Aadir fuentes TrueType...........................................................................................139 Sistema de fuentes base de X..................................................................................140 Configuracin de xfs..................................................................................................140 Aadir fuentes a xfs...................................................................................................142 Fuentes Liberation.....................................................................................................142 Niveles de ejecucin y X................................................................................................143 Nivel de ejecucin 3..................................................................................................143 Nivel de ejecucin 5..................................................................................................144 Ejecutando aplicaciones remotas con X11...................................................................146 Utilizacin de X remoto con telnet.............................................................................148

Utilizacin de X remoto con SSH..............................................................................149 Sesiones grficas remotas (XDMCP).......................................................................149 Sesin grfica remota con GDM...............................................................................149 Configuracin de gdm para aceptar conexiones XDMCP........................................150 Escritorio Remoto......................................................................................................151 Configuracin de las preferencias de vino................................................................151 Cambiando la resolucin de la pantalla desde la lnea de comandos..........................152 Software RAID..................................................................................................................154 Tecnologa RAID...........................................................................................................155 Software RAID...............................................................................................................155 Niveles de RAID............................................................................................................156 RAID Nivel 0 Conjunto de bandas sin paridad.......................................................156 RAID 1 Espejado de discos....................................................................................157 RAID 5 Conjunto de bandas con paridad distribuida.............................................158 RAID 6 Conjunto de bandas con doble paridad distribuida...................................159 Configuracin de software RAID...................................................................................161 Verificacin del estado de los dispositivos RAID......................................................164 Gestin de arreglos con el comando mdadm...........................................................165

1 Instalacin del sistema operativo CentOS Linux

Instalacin del sistema operativo CentOS Linux

Instalacin de CentOS Linux


Aspectos bsicos del hardware
Un sistema operativo debe trabajar ntimamente con el hardware que le sirve de cimientos. El sistema operativo necesita ciertos servicios que solo pueden suministrar el hardware. Para entender totalmente el sistema operativo Linux, se necesita entender los aspectos bsicos del hardware que hay debajo.

La CPU
La CPU, o mejor, microprocesador, es el corazn de cualquier computadora. El microprocesador calcula, realiza operaciones lgicas y gestiona flujos de datos leyendo instrucciones desde la memoria y ejecutndolas. En los primeros das de la informtica los componentes funcionales del microprocesador eran unidades separadas (y grandes fsicamente). Fue entonces cuando se acu el trmino Unidad Central de Proceso (Central Processing Unit). El microprocesador moderno combina esos componentes en un circuito integrado, grabado en una pequea pieza de silicio. Los trminos CPU, microprocesador y procesador se usan de manera intercambiable en este libro. Los microprocesadores operan sobre datos binarios; estos son datos compuestos de unos y ceros. Estos unos y ceros corresponden a interruptores elctricos que estn encendidos o apagados. Igual que 42 es un nmero decimal que significa ``4 decenas y 2 unidades'', un nmero binario es una serie de dgitos binarios, cada uno representando una potencia de 2. Los microprocesadores pueden realizar operaciones aritmticas como sumar, multiplicar y dividir, y operaciones lgicas como es X mayor que Y?'. La ejecucin del procesador viene gobernada por un reloj externo. Este reloj, el reloj del sistema, enva pulsos de reloj regulares al procesador y, a cada pulso de reloj, el procesador hace algn trabajo. Por ejemplo, un procesador podra ejecutar una instruccin a cada pulso de reloj. La velocidad del procesador se describe en trminos de la frecuencia de pulsos del reloj del sistema. Un procesador de 100Mhz
Red Hat Certified Engineer 8

Instalacin del sistema operativo CentOS Linux

recibir 100 000 000 pulsos de reloj cada segundo. Puede llevar a confusin describir la potencia de una CPU por su frecuencia de reloj ya que diferentes procesadores realizan diferentes cantidades de trabajo a cada pulso de reloj. De todos modos, si el resto de las caractersticas son iguales, una mayor velocidad de reloj significa un procesador ms potente. Las instrucciones ejecutadas por el procesador son muy simples; por ejemplo copia en el registro Y el contenido de la posicin X de la memoria. Los registros son el almacn interno del microprocesador, se usan para almacenar datos y realizar operaciones sobre ellos. Las operaciones realizadas pueden hacer que el procesador deje de hacer los que estaba haciendo y salte a otra instruccin en otra parte de la memoria. Estos pequeos ladrillos dan al microprocesador moderno un poder casi ilimitado ya que puede ejecutar millones o incluso miles de millones de instrucciones por segundo. Las instrucciones deben ser obtenidas de la memoria para ejecutarlas. Las propias instrucciones pueden hacer referencia a datos en la memoria, y esos datos deben ser obtenidos de la memoria y guardados en ella cuando se requiera. Para obtener informacin de la CPU que est utilizando el sistema ejecute el comando:
# cat /proc/cpuinfo

El kernel de Linux y Multi-core


En plataformas basadas en procesadores multi-core, ms de un ncleo de ejecucin reside en un paquete fsico. Cada ncleo tiene recursos propios y compartidos los cuales varian dependiendo de la implementacin. Las implementaciones mas tpicas de multi-core comparten al menos un nivel de cache y el bus frontal (front side bus FSB). Mltiples hilos lgicos (Hyper-threading HT) o ncleos de ejecucin (Multicore MC) en un paquete fsico aparece al sistema operativo como mltiples

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

procesadores lgicos, similar a los entornos de multi procesamiento simtrico (SMP). Por ejemplo, un procesador fsico podra visualizarse como cuatro procesadores lgicos, si este utiliza tecnologa dual-core y HT habilitado. El archivo /proc/cpuinfo contiene informacin acerca de las CPU del sistema. Este archivo adems exporta la informacin de multi-core y hyper-threading al sistema operativo. El valor ht en el campo flags de /proc/cpuinfo indican que el procesador soporta los registros para reportar HT o MC. Los campos adicionales en los registros de /proc/cpuinfo dar informacin ms precisa acerca de la topologa de la CPU vista por el sistema operativo:

physical id Identificador del paquete fsico de la CPU lgica. Varias CPU lgicas puede tener el mismo physical id.

siblings Numero total de procesadores lgicos (incluye tanto hilos y ncleos) en el paquete fsico.

cpu cores El numero total de ncleos en el paquete fsico actualmente en uso por el sistema operativo.

core id El identificador del ncleo de la CPU lgica.

A continuacin se presentan algunos ejemplos que permitirn entender cmo utilizar los valores mostrados en cada campo. Un nico procesador, un slo core, con HT: Campo processor physical id siblings core id 0 0 2 0 Valor 1 0 2 0

Red Hat Certified Engineer

10

Instalacin del sistema operativo CentOS Linux

Campo cpu cores 1

Valor 1

Un nico procesador, dual core, sin HT: Campo processor physical id siblings core id cpu cores 0 0 2 0 2 Valor 1 0 2 1 2

Dos procesadores, dual core, con HT: Campo processor physical id siblings core id cpu cores 0 0 4 0 2 1 0 4 0 2 2 0 4 1 2 3 0 4 1 2 Valor 4 1 4 0 2 5 1 4 0 2 6 1 4 1 2 7 1 4 1 2

Un nico procesador, quad core, sin HT: Campo processor physical id siblings core id cpu cores 0 0 4 0 4 1 0 4 2 4 Valor 2 0 4 1 4 3 0 4 3 4

Los Kernels de Linux ms recientes (> 2.6.17) reportan la topologa de la CPU en sysfs adems. Este mecanismo es ms simple y rpido comparado con /proc.

11

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

Los campos exportados bajo /sys/devices/system/cpu/cpuX/topology proporcionan la informacin completa de la topologa:

physical_package_id - Identificador del paquete fsico de la CPU lgica. core_id - El identificador del ncleo de la CPU lgica. core_siblings Mscara de todas las CPUs en el paquete fsico. thread_siblings Mscara de todas las CPU lgicas un ncleo de CPU.

Obteniendo el Hamming Weight (nmero de bits activos) de la mscara proporcionar las capacidades del paquete fsico.

Memoria
Todos los sistemas tienen una jerarqua de memoria, con memoria de diferentes velocidades y tamaos en diferentes puntos de la jerarqua. La memoria ms rpida se conoce como memoria cach y es una memoria que se usa para almacenar temporalmente contenidos de la memoria principal. Este tipo de memoria es muy rpida pero cara, por tanto la mayora de los procesadores tienen una pequea cantidad de memoria cach en el chip y ms memoria cach en el sistema (en la placa). Algunos procesadores tienen una cach para contener instrucciones y datos, pero otros tienen dos, una para instrucciones y la otra para datos. El procesador Alpha tiene dos memorias cach internas; una para datos (la Cach-D) y otra para instrucciones (la Cach-I). La cach externa (o Cach-B) mezcla los dos juntos. Finalmente est la memoria principal, que comparada con la memoria cach externa es muy lenta. Comparada con la cach en la CPU, la memoria principal se arrastra. Las memorias cach y principal deben mantenerse sincronizadas (coherentes). En otras palabras, si una palabra de memoria principal se almacena en una o ms posiciones de la cach, el sistema debe asegurarse de que los contenidos de la cach y de la memoria sean los mismos. El trabajo de coherencia de la cach es

Red Hat Certified Engineer

12

Instalacin del sistema operativo CentOS Linux

llevado a cabo parcialmente por el hardware y parcialmente por el sistema operativo. Esto es cierto tambin para un nmero de tareas principales del sistema, donde el hardware y el software deben cooperar ntimamente para alcanzar sus objetivos. Puede obtener informacin de la memoria del sistema ejecutando el comando:
# cat /proc/meminfo

Buses
Los componentes individuales de la placa del sistema estn conectados entre s por sistemas de conexin mltiple conocidos como buses. El bus de sistema est dividido en tres funciones lgicas; el bus de direcciones, el bus de datos y el bus de control. El bus de direcciones especifica las posiciones de memoria (direcciones) para las transferencias de datos. El bus de datos contiene los datos transferidos El bus de datos es bidireccional; permite escribir datos en la CPU y leerlos desde la CPU. El bus de control contiene varias lineas que se usan para dirigir seales de sincronismo y control a travs del sistema. Existen muchos tipos de bus, por ejemplo los buses ISA y PCI son formas populares de conectar perifricos al sistema. Para obtener informacin del bus pci ejecute:
# cat /proc/pci

Informacin de los dispositivos existentes en los dems buses del sistema, pueden ser obtenidos consultando el directorio /proc/bus.

Controladores y perifricos
Los perifricos son dispositivos reales, como tarjetas grficas o discos controlados por chips controladores que se encuentran en la placa del sistema, o en tarjetas conectadas a ella. Los discos IDE son controlados por el chip controlador IDE, y los discos SCSI por los chips controladores de disco SCSI, y as sucesivamente. Estos

13

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

controladores estn conectados a la CPU y entre ellos por una variedad de buses. La mayora de los sistemas construidos actualmente usan buses PCI e ISA para conectar entre s los principales componentes del sistema. Los controladores son procesadores como la propia CPU, se pueden ver como asistentes inteligentes de la CPU. La CPU tiene el control sobre todo el sistema. Todos los controladores son diferentes, pero usualmente tienen registros que los controlan. El software que se ejecute en la CPU debe ser capaz de leer y escribir en esos registros de control. Un registro puede contener un estado que describa un error. Otro puede ser usado para propsitos de control; cambiando el modo del controlador. Cada controlador en un bus puede ser accedido individualmente por la CPU, esto es as para que el software gestor de dispositivos pueda escribir en sus registros y as controlarlo, La banda IDE es un buen ejemplo, ya que ofrece la posibilidad de acceder a cada unidad en el bus por separado. Otro buen ejemplo es el bus PCI, que permite acceder a cada dispositivo (por ejemplo una tarjeta grfica) independientemente.

Espacios de direcciones
El bus del sistema conecta la CPU con la memoria principal y est separado de los buses que conectan la CPU con los perifricos. El espacio de memoria en el que existen los perifricos hardware se conoce colectivamente como espacio de I/O (por Input/Output, Entrada/Salida). El espacio de I/O puede estar subdividido a su vez, pero no nos preocuparemos demasiado sobre eso de momento. La CPU puede acceder a la memoria en el espacio del sistema y a la memoria en el espacio de I/O, mientras que los controladores slo pueden acceder a la memoria en el espacio del sistema indirectamente, y slo con la ayuda de la CPU. Desde el punto de vista del dispositivo, digamos un controlador de disquetes, ver slo el espacio de direcciones en el que se encuentran sus registros de control (ISA) y no la memoria del sistema. Tpicamente, una CPU tendr instrucciones separadas para acceder al espacio de memoria y al espacio de I/O. Por ejemplo, puede haber una instruccin que signifique lee un byte de la direccin de I/O 0x3f0 y ponlo en el registro X. As es
Red Hat Certified Engineer 14

Instalacin del sistema operativo CentOS Linux

exactamente como controla la CPU a los perifricos hardware del sistema, leyendo y escribiendo en sus registros en el espacio de I/O. En qu lugar del espacio I/O tienen sus registros los perifricos comunes (controlador IDE, puerta serie, controlador de disco flexible, y dems) ha sido definido por convenio a lo largo de los aos conforme la arquitectura del PC se ha desarrollado. Sucede que la direccin 0x3f0 del espacio I/O es la direccin de uno de los registros de control de la puerta serie (COM1). Existen ocasiones en las que los controladores necesitan leer o escribir grandes cantidades de datos directamente desde o a la memoria del sistema. Por ejemplo, cuando se escriben datos del usuario al disco duro. En este caso, se usan controladores de Acceso Directo a Memoria (Direct Memory Access - DMA) para permitir que los perifricos hardware accedan directamente a la memoria del sistema, pero este acceso est bajo el estricto control y supervisin de la CPU. Para obtener informacin del espacio de direcciones ejecute el comando:
# cat /proc/ioports

Cronmetros Todos los sistemas operativos necesitan saber la hora, y as, la placa madre incluye un dispositivo especial llamado el Reloj de Tiempo Real (Real Time Clock - RTC). Este dispositivo suministra dos cosas: una hora del da fiable y un cronmetro preciso. El RTC tiene su propia batera, de forma que siga funcionado incluso cuando el PC no est encendido, as es como el equipo sabe' siempre la fecha y hora correctas. El cronmetro permite que el sistema operativo planifique de manera precisa el trabajo esencial. Interrupciones Linux usa distintos componentes fsicos para llevar a cabo trabajos muy diferentes. El dispositivo de vdeo maneja el monitor, el dispositivo IDE maneja los discos, y as sucesivamente. Puede manejar estos dispositivos de forma sincronizada, es decir, puede enviar una peticin de alguna operacin (como escribir un bloque de
15 Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

memoria a disco) y luego esperar que la operacin se complete. Este mtodo, aunque funciona, es muy poco eficiente y el sistema operativo pasara mucho tiempo ocupado sin hacer nada mientras espera que cada operacin finalice. Una manera mejor y ms eficiente sera realizar la peticin y luego realizar otra, un trabajo ms til que luego se interrumpira cuando el dispositivo haya finalizado la peticin. Con este esquema puede haber muchas peticiones pendientes hacia los dispositivos en el sistema, todas al mismo tiempo. Algunas interrupciones son fijas por convenio de la arquitectura del hardware y entonces el controlador simplemente pide esa interrupcin cuando se haya inicializado. Esto es lo que hace el controlador de la disquetera; siempre pide la IRQ 6 (IRQ = Interrupt ReQuest, peticin de Interrupcin ). Puede haber ocasiones en las que un controlador no sepa qu interrupcin va a usar el dispositivo. Esto no es un problema para los controladores de dispositivos PCI ya que siempre saben cual es su nmero de interrupcin. Desafortunadamente no hay ninguna manera fcil de que los controladores de dispositivos ISA encuentren su nmero de interrupcin. Para obtener informacin de las interrupciones utilizadas ejecute el comando:
# cat /proc/interrupts

Informacin de hardware adicional


Otros comandos que permiten obtener informacin del equipo son dmesg, lshal, lspci, lsusb, dmidecode y hwbrowser.

Instalacin de CentOS Linux


Antes de instalar CentOS Linux verifique que cumple los requisitos de espacio en disco para la instalacin. La instalacin de CentOS Linux requiere de una particin utilizada como rea de intercambio de memoria (swap) de al menos el mismo tamao que la memoria RAM. Los archivos del sistema operativo requieren entre 500 M a 5 GB
Red Hat Certified Engineer 16

Instalacin del sistema operativo CentOS Linux

dependiendo de los paquetes seleccionados.

Nombres de Dispositivo en Linux


En Linux, los nombres de disco y de particiones pueden ser diferentes de otros sistemas operativos. Para crear y montar particiones, necesita conocer los nombres que utiliza Linux. Este es el esquema bsico de nomenclatura:

La primera unidad de disquete se llama /dev/fd0. La segunda unidad de disquete se llama /dev/fd1, etc.

El primer disco duro de tecnologa diferente a IDE (incluyendo los discos USB) se llama /dev/sda. El segundo disco duro de tecnologa diferente a IDE se llama /dev/sdb, el tercero /dev/sdc, etc.

El dispositivo de CD/DVD-ROM normalmente es accedido a travs de /dev/cdrom. Un dispositivo con capacidad de grabacin de medios es accedido a travs de /dev/cdrecorder.

El disco maestro de la controladora IDE primaria se llama /dev/hda. El disco esclavo de la controladora IDE primaria se llama /dev/hdb. El disco maestro de la controladora IDE secundaria se llama /dev/hdc. El disco esclavo de la controladora IDE secundaria se llama /dev/hdd.

El primer dispositivo de cinta se llama /dev/st0. El segundo dispositivo de cinta se llama /dev/st1, etc.

Las particiones de cada disco se representan aadiendo un nmero decimal al nombre del disco: sda1 y sda2 representan la primera y segunda particin del la primera unidad de disco del sistema. He aqu un ejemplo de la vida real. Supongamos que tiene un sistema con dos discos. El primer disco se llama por tanto sda, y el segundo sdb. Si la unidad sda tiene 3 particiones, stas se llamarn sda1, sda2 y sda3. Lo mismo se aplica para
17 Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

el disco sdb y sus particiones. En versiones ms recientes de Linux, los dispositivos IDE utilizan tambin la nomenclatura /dev/sd. Crear un CD-ROM de arranque de instalacin En el directorio images/ encontrar el archivo boot.iso. Este archivo ISO puede ser usado para iniciar el programa de instalacin. Deber quemar el archivo boot.iso a un CD grabable y la mquina debe estar configurada para arrancar desde el CD-ROM. Arranque de la instalacin desde un USB pen drive Si no puede arrancar desde el CD-ROM, pero puede iniciar desde un dispositivo USB, como un USB pen drive, la siguiente alternativa de inicio esta disponible. Para iniciar desde un USB pen drive, utilice el comando dd para copiar la imagen diskboot.img desde el directorio /images/ del medio de instalacin. Por ejemplo:
# dd if=diskboot.img of=/dev/sda

El BIOS debe soportar iniciar desde un dispositivo USB.

Interfaz grfica de usuario del programa de instalacin


Si ha utilizado la interfaz de usuario en modo grfico (GUI) con anterioridad, este proceso le ser muy familiar. Use el ratn para navegar por las pantallas, pulse los botones o rellene los campos de texto. Puede tambin utilizar las teclas [Tab] y [ENTER] para navegar. Si no quiere utilizar el programa de instalacin GUI, est disponible el programa de instalacin en modo texto. Para utilizarlo, ejecute el siguiente comando de arranque:

Red Hat Certified Engineer

18

Instalacin del sistema operativo CentOS Linux


boot: linux text

Nota sobre las consolas virtuales El programa de instalacin de CentOS Linux ofrece ms que las ventanas de dilogo del proceso de instalacin. Adems de darle la posibilidad de insertar comandos desde el intrprete de comandos de la shell, tiene a su disponibilidad muchos tipos diferentes de mensajes. El programa de instalacin despliega estos mensajes en cinco consolas virtuales, entre las que puede cambiarse usando una combinacin de teclas. Consola 1 2 3 4 5 6 Combinacin de teclas [Ctrl]-[Alt]-[F1] [Ctrl]-[Alt]-[F2] [Ctrl]-[Alt]-[F3] [Ctrl]-[Alt]-[F4] [Ctrl]-[Alt]-[F5] [Ctrl]-[Alt]-[F6] Contenido Dilogo de instalacin Intrprete de comandos de la shell Log de instalacin Mensajes de sistema Otros mensajes Pantalla grfica de X

Opciones de arranque adicionales


Aunque para un usuario resulta ms sencillo arrancar desde un CD-ROM y ejecutar una instalacin grfica, en ocasiones hay instalaciones en las que puede ser necesario realizar el arranque con un mtodo distinto. En esta seccin se describen las opciones de arranque adicionales que hay disponibles para el sistema CentOS Linux. Si no desea realizar una instalacin grfica, puede iniciar una instalacin en modo texto mediante el siguiente comando de arranque:
boot: linux text

Las imgenes ISO ahora tienen un md5sum integrado. Para probar la integridad checksum de una imagen ISO, en el indicador de comandos de arranque de la instalacin, escriba:
19 Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux


boot: linux mediacheck

Si el programa de instalacin no detecta correctamente el hardware instalado, probablemente deber reiniciar la instalacin en modo experto. Para usar el modo experto, escriba el siguiente comando de arranque:
boot: linux noprobe

Para ejecutar la instalacin en modo texto en modo experto utilice:


boot: linux text noprobe

Si necesita realizar una instalacin en modo serie, escriba el siguiente comando:


boot: linux console=<dispositivo>

Si tiene un disco de controlador de dispositivo (driver disk), especialmente para controladoras de disco, puede informar al programa de instalacin con la opcin. Se solicitar el disco controlador durante la instalacin del sistema:
boot: linux dd

Para ejecutar la instalacin en modo texto a travs del puerto serie, utilice:
boot: linux text console=<dispositivo>

En el comando anterior, <dispositivo> es el dispositivo que est utilizando (como ttyS0 o ttyS1). Por ejemplo, linux text console=ttyS0,115200n8. Esto es especialmente til para servidores sin tarjeta de video incorporada.

Seleccin de un mtodo de instalacin


Es posible iniciar el programa de instalacin desde la unidad de CD y continuarla a partir de otra fuente de instalacin. Para seleccionar el mtodo de instalacin utilice la siguiente opcin de arranque:
boot: linux askmethod

La instalacin puede ser realizada desde:

Red Hat Certified Engineer

20

Instalacin del sistema operativo CentOS Linux

DVD/CD-ROM: Si posee un lector de DVD/CD-ROM puede utilizar este mtodo.

Disco duro: Si ha copiado las imgenes ISO de CentOS Linux en el disco duro local, puede utilizar este mtodo.

NFS: Si est realizando la instalacin desde un servidor NFS utilizando imgenes ISO o una imagen rplica de CentOS Linux, puede utilizar este mtodo.

FTP: Si est realizando la instalacin directamente desde un servidor FTP, utilice este mtodo.

HTTP: Si est realizando la instalacin directamente desde un servidor Web HTTP, utilice este mtodo.

Instalacin desde un CD-ROM Para instalar CentOS Linux desde un CD-ROM, escoja CD-ROM y seleccione OK. Cuando el programa se lo indique, inserte el CD de CentOS Linux en el lector de disco (si no arranc desde una unidad de CD). Una vez que el CD est en la unidad de CD-ROM, seleccione OK, y presione [Enter].

Instalacin desde un disco duro


Las instalaciones desde un disco duro solamente funcionan con los sistemas de archivos ext2, ext3 o FAT. Si tiene un sistema de archivos diverso de los que aparecen aqu como reiserfs, no podr llevar a cabo este tipo de instalacin. Las instalaciones desde el disco duro usan imgenes ISO. La pantalla Seleccin de la particin se puede aplicar slo si est realizando la instalacin desde una particin del disco (es decir, si ha seleccionado Disco duro en el Mtodo de instalacin. Esta ventana de dilogo le permite nombrar la particin del disco y el directorio desde el que est instalando CentOS Linux.

21

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

Introduzca el nombre del dispositivo de la particin que contiene las imgenes ISO. Tambin hay un campo etiquetado Directorio que contiene imgenes. Si las imgenes ISO no se encuentran en el directorio root de esa particin introduzca el recorrido hacia las imgenes ISO (por ejemplo, si las imgenes ISO estn en /iso/CentOS, introduzca /iso/CentOS).

Preparacin para la instalacin de red


Si est llevando a cabo una instalacin de red, la ventana de dilogo Configurar TCP/IP aparecer. Este dilogo le pedir su IP y otras direcciones de red. Puede escoger configurar la direccin IP y la mscara del dispositivo a travs de DHCP o manualmente. Instalacin a travs de NFS La ventana de NFS aparece solamente si est realizando una instalacin desde un servidor NFS. Introduzca el nombre de dominio completo o la direccin IP del servidor NFS. A continuacin, introduzca el nombre del directorio exportado. Introduzca el directorio que contiene los archivos rpm.

Instalacin a travs de FTP


La ventana de FTP aparece solamente si est realizando una instalacin desde un servidor FTP si seleccion FTP en el Mtodo de instalacin). Esta pantalla le permite identificar el servidor FTP desde el que est realizando la instalacin de CentOS Linux. Introduzca el nombre o la direccin IP del sitio FTP desde el que est instalando y el nombre del directorio que contiene los archivos de instalacin CentOS para su arquitectura.

Red Hat Certified Engineer

22

Instalacin del sistema operativo CentOS Linux

Instalacin a travs de HTTP


La ventana de HTTP aparece solamente si est realizando una instalacin desde un servidor HTTP si seleccion HTTP en la ventana Mtodo de instalacin). Esta pantalla le pedir informacin sobre el servidor HTTP desde el que est realizando la instalacin de CentOS Linux. Introduzca el nombre o la direccin IP del sitio HTTP desde el que est instalando y el nombre del directorio que contiene los archivos de instalacin CentOS para su arquitectura.

Particionamiento automtico de discos


El particionamiento automtico le permite tener control de los datos que se han eliminado en su sistema. Tiene las siguientes opciones:

Remover particiones de linux en dispositivos seleccionados y crear disposicin: seleccione esta opcin para eliminar tan slo las particiones Linux (particiones creadas en una instalacin Linux previa). No borrar el resto de particiones que tenga en el disco(s) duro(s) (tal como VFAT o particiones FAT32).

Remover

particiones

en

dispositivos

seleccionados

crear

disposicin: seleccione esta opcin para eliminar todas las particiones de su disco duro (esto incluye las particiones creadas por otros sistemas operativos).

Usar espacio disponible en dispositivos seleccionados y crear disposicin: seleccione esta opcin para conservar los datos y las particiones actuales, presumiendo que tiene suficiente espacio disponible en los discos duros.

Crear disposicin personalizada: seleccione esta opcin para crear las particiones de manera personalizada.

23

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

Si desea verificar y realizar cambios en las particiones creadas con el particionamiento automtico, puede marcar la opcin Revise y modifique la capa de particiones. Esquema de particionamiento recomendado A no ser que tenga razones para hacerlo de otro modo, le recomendamos que cree las siguientes particiones:

Una particin /boot (100MB 150MB) la particin montada sobre /boot contiene el kernel del sistema operativo (que permitir al sistema arrancar CentOS Linux), junto a otros archivos utilizados para el proceso de arranque. Debido a las limitaciones de la mayora de las BIOS de los ordenadores, se aconseja crear una particin pequea para guardar estos archivos. Para la mayora de los usuarios, una particin de arranque de 100 MB es suficiente.

Una particin swap Las particiones swap se usan para soportar la memoria virtual. En otras palabras, los datos se escriben en la particin swap cuando no hay suficiente RAM para almacenar los datos que su sistema est procesando. El tamao mnimo de la particin swap debera ser igual al de la memoria RAM que tiene el sistema. Hasta CentOS 2.1 exista una limitacin del tamao de la particin de swap hasta 2 GB para cada espacio swap. Esto era debido a que el comando mkswap no soportaba la creacin de reas de swap mayores a 2 GB. En CentOS Enterprise Linux 3 y superior, el comando mkswap permite la creacin de particiones swap mayores a 2 GB. CentOS Enterprise Linux 2.1 soporta hasta 32 particiones de 2 GB. Total 64 GB.CentOS Enterprise Linux 3 y superiores soportan particiones de swap mas grandes y esta dado por el lmite del tamao del dispositivo de bloques. CentOS Enterprise Linux tiene 1 TB como lmite del tamao de los dispositivos de bloques, por tanto es 1 TB.

Red Hat Certified Engineer

24

Instalacin del sistema operativo CentOS Linux

Una particin root (6.0 GB) aqu es donde se ubica "/" (el directorio raz). En esta instalacin, todos los archivos (excepto los almacenados en /boot) se encuentran en la particin raz. Una particin raz 6.0 GB le permitir instalar todos los paquetes con suficiente espacio disponible para futuro crecimiento.

Una particin /home (Tamao variable) Una particin independiente para los directorios HOME de los usuarios es una buena practica, permitiendo independizar el sistema de archivos raz de los datos de usuarios, y tambin permite especificar opciones de montaje adicionales para mayor control del sistema de archivos (ej. nosuid, quota, etc).

Una particin /var (Tamao variable) Una particin independiente para el directorio /var es una buena practica, permitiendo independizar el sistema de archivos raz de los datos de logs y spool, y tambin permite especificar opciones de montaje adicionales para mayor control del sistema de archivos (ej. nosuid, noexec, etc).

Configuracin del gestor de arranque


El gestor de arranque es el primer software que se ejecuta cuando se arranca el ordenador. Es responsable de la carga del kernel para el inicio del sistema operativo. El GRUB (GRand Unified Bootloader) es el gestor de arranque por defecto para Linux. Si el sistema operativo ha sido instalado en un RAID por software, GRUB debe ser instalado manualmente en el disco espejado.

Primer arranque
Durante el primer arranque del sistema operativo, deber realizar ciertas configuraciones adicionales bsicas, tales como fecha y hora, creacin de usuarios regulares, prueba de tarjeta de sonido, configuracin del cortafuegos, Kdump y SELinux.

25

Ing. Ivn Ferreira

Instalacin del sistema operativo CentOS Linux

Configuracin del cortafuegos


Un cortafuegos permite proteger al servidor de posibles ataques o accesos de intrusos a servicios proporcionados por el equipo a travs de la red. Es recomendado que en esta etapa de la instalacin del equipo deshabilite el firewall y lo habilite posteriormente, una vez que todos los servicios hayan sido configurados y probados. Para detalles acerca de configuracin de firewalls, infrmese acerca del curso LE302 Netfilter/IPTables.

Configuracin de Kdump
Kdump es un mecanismo de volcado del kernel en caso de fallo. Si el sistema se cuelga, un archivo del kernel puede ser capturado utilizando kdump. La captura del archivo de kernel puede ayudar a determinar las causas principales del falla en el sistema. Tenga en cuenta que kdump requiere una porcin de la memoria del sistema que no podr ser usada por ningn otro usuario. Es recomendado que habilite Kdump en servidores de tal forma a tener la informacin necesaria para diagnosticar problemas en caso de problemas con el sistema.

Configuracin de SELinux
SELinux proporciona un sistema flexible de control de acceso obligatorio (mandatory access control, MAC) incorporado en el kernel. Bajo el Linux estndar se utiliza el control de acceso a discrecin (discretionary access control, DAC), en el que un proceso o aplicacin ejecutndose como un usuario (UID o SUID) tiene los permisos y de ese usuario en los objetos, archivos, sockets y otros procesos. Al ejecutar un kernel SELinux MAC se protege al sistema de aplicaciones maliciosas o daadas que pueden perjudicar o destruir el sistema. SELinux define el acceso y los derechos de transicin de cada usuario, aplicacin, proceso y archivo en el sistema.

Red Hat Certified Engineer

26

Instalacin del sistema operativo CentOS Linux

Es recomendado que en esta etapa de la instalacin del equipo deshabilite SELinux y lo habilite nicamente si entiende las implicancias de ello. Para detalles acerca de SELinux, infrmese acerca del curso LE-301 Seguridad Local.

El archivo anaconda-ks.cfg
El programa de instalacin de CentOS Linux tambin crea un archivo kickstart de muestra basado en las opciones que seleccion durante la instalacin. Se escribe al archivo /root/anaconda-ks.cfg. Debera ser capaz de modificarlo en cualquier editor de texto o procesador de texto que pueda guardar archivos como texto ASCII. Tambin podr usar la herramienta system-config-kickstart para realizar modificaciones al archivo desde la GUI. Este archivo puede ser utilizado para automatizar la instalacin en otros equipos utilizando el mtodo Kickstart. Para detalles acerca de SELinux, infrmese acerca del curso LE-202 Administracin avanzada de servidores.

27

Ing. Ivn Ferreira

2 Administracin del sistema de archivos

Administracin del sistema de archivos

Administracin del sistema de archivos


El sistema de archivos
Los sistemas de archivos (filesystem en ingls), estructuran la informacin guardada en una unidad de almacenamiento (normalmente un disco duro de una computadora), que luego ser representada ya sea textual o grficamente utilizando un gestor de archivos. La mayora de los sistemas operativos poseen su propio sistema de archivos. Una de los rasgos ms importantes de Linux es su soporte para diferentes sistemas de ficheros. sto lo hace muy flexible y bien capacitado para coexistir con muchos otros sistemas operativos. Linux soporta los sistemas de ficheros; ext2, ext3, minix, umsdos, msdos, vfat, proc, smb, ncp, iso9660, sysv, hpfs, affs and ufs, ntfs, jfs, ReiserFS entre otros. Un importante desarrollo tuvo lugar cuando se aadi en sistema de ficheros EXT en Linux. El sistema de ficheros real se separ del sistema operativo y servicios del sistema a favor de una interfaz conocida como el Sistema de Ficheros Virtual, o VFS por sus siglas en ingls.

29

Ing. Ivn Ferreira

Administracin del sistema de archivos

VFS permite a Linux soportar muchos, incluso muy diferentes, sistemas de ficheros, cada uno presentando un interfaz software comn al VFS. Todos los detalles del sistema de ficheros de Linux son traducidos mediante software de forma que todo el sistema de ficheros parece idntico al resto del kernel de Linux y a los programas que se ejecutan en el sistema. La capa del sistema de Ficheros Virtual de Linux permite al usuario montar de forma transparente diferentes sistemas de ficheros al mismo tiempo. Por ejemplo, al ejecutar el comando mount si el sistema de archivos a montar es ext3 se est utilizando una interfaz al comando mount.ext3, y si el sistema de archivos a montar es FAT/FAT32 se est utilizando una interfaz al comando mount.vfat.

Extended File System


El sistema de archivos Extended File System es el sistema de archivos por defecto de Linux. Los archivos de almacenan en bloques de datos. Estos bloques de datos son todos de la misma longitud y son definidos opcionalmente durante la creacin del sistema de archivos con el comando mkfs. El tamao de cada fichero se redondea hasta un numero entero de bloques. Si el tamao de bloque es 1024 bytes, entonces un fichero de 1025 bytes ocupar dos bloques de 1024 bytes. No todos los bloques del sistema de archivos contienen datos, algunos deben usarse para mantener la informacin que describe la estructura del sistema de ficheros. El Extended File System define la topologa del sistema de archivos describiendo cada archivo del sistema con una estructura de datos conocida como inodo. Un inodo describe que bloques ocupan los datos de un archivo y tambin los permisos de acceso del fichero, las horas de modificacin del fichero y el tipo del fichero. Cada archivo en el sistema de archivos se describe por un nico inodo y cada inodo tiene un nico nmero que lo identifica. Los inodos del sistema de
Red Hat Certified Engineer 30

Administracin del sistema de archivos

ficheros se almacenan juntos en tablas de inodos. En la siguiente figura se presenta la organizacin del sistema de archivos Extended File System:

Grupos de bloques
El sistema de archivos Ext es dividido en grupos de bloques (Block Groups). Los grupos de bloques reducen la fragmentacin debido a que el kernel trata de manter los bloques de datos que pertenecen a un archivo en el mismo grupo de bloques de ser posible. Cada grupo de bloques contiene la siguiente informacin:

Una copia del Super Bloque Una copia del Descriptor de grupo de bloques Un mapa de bits de bloques de datos Un mapa de bits de inodos Una tabla de inodos Bloques de datos

31

Ing. Ivn Ferreira

Administracin del sistema de archivos

Como es posible observar en la figura anterior, el superbloque y los descriptores de grupo son duplicados en cada grupo de bloques. Si una corrupcin de datos ocurre en el superbloque principal o descriptores de grupo del grupo de bloques 0, el administrador puede ejecutar el comando fsck con la opcin -b para utilizar alguna otra copia del superbloque.

Super Bloque
El Super Bloque (Superblock) contiene una descripcin del tamao y forma base del sistema de archivos. Normalmente slo se lee el Super Bloque del Grupo de Bloque 0 cuando se monta el sistema de ficheros pero cada Grupo de Bloque contiene una copia duplicada en caso de que se corrompa sistema de ficheros. La informacin contenida en el Super Bloque puede ser consultada con el comando:
dumpe2fs [-h] <dispositivo>

Entre otra informacin en el Super Bloque es posible encontrar:

Nmero total de inodos del sistema de archivos. Identificador nico del sistema de archivos (UUID). Tamao de particin en bloques. Nmero reservado de bloques a procesos del root. Nmero de bloques total libres. Nmero de inodos total libres. Nmero del primer bloque de datos.

Red Hat Certified Engineer

32

Administracin del sistema de archivos

Tamao bloque. Tamao fragmento (No se usa). Nmero de bloques / Grupo-Bloque. Nmero de inodos / Grupo-Bloque. Hora y fecha del ltimo montado del sistema de archivos. Contador de montajes. Nmero de operaciones de montado. Comportamiento ante errores del sistema de ficheros. Hora y fecha del ltimo fsck. Bloques reservados para un UID. Bloques reservados para un GID. Tamao de inodo. Nmero del Grupo de Bloques al cual pertenece el Super Bloque. Nombre del volumen. Ruta del ltimo montaje.

Descriptor de grupo El Descriptor de grupo (Block Group Descriptor) almacena la ubicacin del mapa de bits de bloques, mapa de bits de inodos y la tabla de inodos para cada grupo de bloques. Un mapa de bits es simplemente una lista de bits que describen que bloques o inodos se encuentran en uso.
33 Ing. Ivn Ferreira

Administracin del sistema de archivos

Mapa de bits de bloques


De manera a tener una contabilidad de los bloques usados en el sistema de archivos se utiliza un mapa de bits (Block bitmap) que mantiene un registro de los bloques que se encuentran en uso y aquellos que se encuentran libres.

Mapa de bits de inodos


Similar al caso de los bloques, los inodos asignados a los archivos son contabilizados. Los inodos almacenan toda la informacin acerca de un archivo. El mapa de bits de inodos (Inode Bitmap) permite tener un registro de los inodos utilizados y liberados cuando un archivo es borrado.

Tabla de inodos
La tabla de inodos es una arreglo que contiene la lista de inodos para ese grupo de bloques en particular.

El inodo Extended File System


En el sistema de ficheros Ext, el inodo es el bloque de construccin bsico; cada fichero y directorio del sistema de ficheros es descrito por un y slo un inodo. Los inodos Ext para cada Grupo de Bloque se almacenan juntos en la tabla de inodos con un mapa de bits que permite al sistema seguir la pista de inodos reservados y libres.

Red Hat Certified Engineer

34

Administracin del sistema de archivos

El inodo proporciona la siguiente informacin del archivo:

Modo Esto mantiene dos partes de informacin; qu inodo describe y los permisos que tienen los usuarios. Para Ext, un inodo puede describir un ficheros, directorio, enlace simblico, dispositivo de bloque, dispositivo de caracter o FIFO.

Propietario y grupo Los identificadores de usuario y grupo de los dueos


Ing. Ivn Ferreira

35

Administracin del sistema de archivos

de este fichero o directorio. Esto permite al sistema de ficheros aplicar correctamente el tipo de acceso,

Tamao El tamao en del fichero en bytes, Marcas de tiempo La hora en la que el inodo fue creado y la ltima hora en que se modific

Contador de enlaces La cantidad de enlaces con las que cuenta el archivo Bloques de datos Punteros a los bloques que contienen los datos que este inodo describe. Los primero doce bloques contienen punteros directos a los bloques de datos. Si un archivo es ms grande, se utilizan bloques indirectos, doble indirecto y triple indirecto para lograr referenciar a mayor cantidad de bloques de datos.

El sistema de archivos EXT3 El sistema de archivos Ext3 es el sistema de archivos por defecto de Linux y es bsicamente una versin mejorada del Ext2. Las mejoras introducidas proporcionan las siguientes ventajas:

Disponibilidad Tras un corte elctrico o una cada inesperada del sistema (tambin se denomina cierre no limpio del sistema), se debe comprobar con el programa e2fsck cada sistema de archivos ext2 montado en la mquina para ver si es consistente. El proceso de comprobacin lleva mucho tiempo y puede prolongar el tiempo de arranque del sistema de un modo significativo, especialmente si hay grandes volmenes que contienen un elevado nmero de archivos. Durante este proceso, no se puede acceder a los datos de los volmenes. Con la caracterstica journaling del sistema de archivos ext3 ya no es necesario realizar este tipo de comprobacin en el sistema de archivos despus de un cierre no limpio del sistema. En el sistema ext3, nicamente se realiza una comprobacin de consistencia en los casos puntuales en los

Red Hat Certified Engineer

36

Administracin del sistema de archivos

que se producen determinados errores de hardware, como, por ejemplo, fallos en el disco duro. El tiempo empleado para recuperar un sistema de archivos ext3 tras un cierre no limpio del sistema no depende del tamao del sistema de archivos ni del nmero de archivos, sino del tamao del journal (diario), utilizado para mantener la consistencia en el sistema. Por defecto, la recuperacin del tamao del "journal" tarda alrededor de un segundo, segn la velocidad del hardware.

Integridad de los datos El sistema de archivos ext3 proporciona una integridad superior de los datos si se produce un cierre no limpio del sistema. El sistema de archivos ext3 le permite seleccionar el tipo y el nivel de proteccin de los datos. Por defecto, CentOS Linux en relacin con el estado del sistema de archivos. configura los volmenes ext3 para que el nivel de consistencia de los datos sea elevado

Velocidad El sistema de archivos ext3, aparte de permitir escribir datos ms de una vez, en la mayora de los casos tiene un rendimiento superior al que proporciona ext2 porque los "journals" de ext3 optimizan el movimiento de los cabezales de los discos duros. Se pueden seleccionar tres modos de journaling para optimizar la velocidad, pero, como contrapartida, la integridad de los datos se ver afectada.

Fcil transicin La migracin de ext2 a ext3 es muy sencilla y se pueden aprovechar las ventajas de un slido sistema de archivos con journaling sin tener que volver a dar formato al sistema, simplemente con el comando tune2fs.

En Ext3, el tamao mximo un un archivo es 2 TB y del sistema de archivos 8 TB.

Gestin de particiones
Un disco puede dividirse en diferentes particiones. Se puede acceder a cada particin como si fuera un disco separado. Adems cada particin tiene un tipo que
37 Ing. Ivn Ferreira

Administracin del sistema de archivos

se usa para indicar como esta almacenada la informacin en la particin. En el primer sector del disco est el registro de arranque maestro junto a la tabla de particiones. El registro de arranque (como su nombre indica) se usa para arrancar el sistema. La tabla de particiones contiene informacin acerca del lugar y el tamao de cada particin. Existen dos clases de particiones:

Primarias: Las ms usadas, debido al lmite del tamao de la tabla de particiones, slo pueden tenerse hasta cuatro particiones primarias en un disco.

Extendidas: Una particin extendida no tiene datos ella misma; en su lugar, acta como "soporte" de particiones lgicas; solo puede tenerse una particin extendida por disco y deber ocupar todo el espacio restante disponible en el disco.

Es posible crear hasta 4 particiones en una unidad de disco combinando particiones primarias y extendidas. La particin extendida debera ser la ltima particin en ser creada y deber utilizar todo el espacio disponible en el disco. Para poder crear ms de cuatro particiones, se utiliza el espacio en la particin extendida para crear particiones lgicas. Se pueden crear cualquier nmero de particiones lgicas de un tamao inferior o igual a la particin extendida.

Numeracin de particiones
Cada particin en Linux es representada por un nmero. Cada particin primaria y extendida se numera consecutivamente a partir del nmero uno. Las unidades lgicas siempre comienzan a enumerarse consecutivamente desde el nmero cinco. Por ejemplo, un disco con 4 particiones y 4 unidades lgicas tendra la siguiente disposicin:

Red Hat Certified Engineer

38

Administracin del sistema de archivos

Usando fdisk
El comando fdisk es utilizado tradicionalmente para gestionar las particiones en Linux. Este comando permite configurar las particiones de un disco por medio de la lnea de comandos. Existen opciones que deben ser conocidas a modo de operar el comando fdisk. La sintaxis es la siguiente:
fdisk [-l] <dispositivo>

La opcin -l indica a fdisk que simplemente muestre la tabla de particiones del dispositivo. Una vez iniciado fdisk, puede utilizar los siguientes comandos: Comando m p n Manual - Muestra la ayuda. Print - Muestra la tabla de particiones actual. New - Crear una nueva particin. Primero le solicitar el nmero de particin, luego el cilindro de inicio y final, el cilindro de inicio es recomendado que acepte el propuesto y el cilindro final puede especificar de la forma +(N)M, lo cual indica al comando fdisk que cree una particin de N MB. Delete - Borrar una particin. Le solicitar el nmero de la particin que desea borrar. Toogle Cambia el tipo de particin. Deber realizar este procedimiento por ejemplo para indicar que la particin creada ser de tipo swap.
Ing. Ivn Ferreira

Descripcin

d t

39

Administracin del sistema de archivos

Comando w q a

Descripcin Write - Guarda los cambios en la tabla de particiones de disco. Quit - Sale sin guardar los cambios en la tabla de particiones del disco. Active - Activa o desactiva una particin para el arranque. La particin activa es aquella que contiene el cargador de arranque. Si el cargador de arranque est en el MBR, la particin activa ser la primera.

El siguiente ejemplo mustra el uso del comando fdisk para listar la tabla de particiones del primer disco y salir sin realizar cambios:
# fdisk /dev/sda Command (m for help): p Disk /dev/sda: 255 heads, 63 sectors, 784 Units = cylinders of 16065 * 512 bytes Device Boot Begin Start End /dev/sda1 * 1 1 26 /dev/sda2 27 27 784 /dev/sda5 27 27 645 /dev/sda6 646 646 776 /dev/sda7 777 777 784 Command (m for help): q

cylinders Blocks 208813+ 6088635 4972086 1052226 64228+ Id 83 5 83 83 82 System Linux native Extended Linux native Linux native Linux swap

Creacin del sistema de archivos


Una vez creada la particin se debe crear el sistema de archivos en ella, para ello use el comando mkfs. La sintaxis del comando es como sigue:
mkfs -t tipo [opciones] dispositivo

Ejemplo: Para crear un sistema de archivos en la primera particin del primer disco ejecute el comando:
# mkfs -t ext3 /dev/sda1

Ajustando parmetros del sistema de archivos ext2/ext3


El comando tune2fs es usado para modificar parmetros del sistema de archivos
Red Hat Certified Engineer 40

Administracin del sistema de archivos

ext2/ext3. La sintaxis es la siguiente:


tune2fs [opciones] filesystem

Las opciones mas comunes para el comando tune2fs son: Opcin -c -i Descripcin Ajusta el contador de montaje mximo entre verificaciones del sistema de archivos. Si es 0 se deshabilita esta opcin. Ajusta el intervalo de tiempo entre verificaciones, por defecto cada 6 meses se realizar una verificacin del sistema de archivos al momento de montado. Agrega un diario (journal) convirtiendo un sistema de archivos ext2 en ext3. Establece una etiqueta para el volmen. Especifica el porcentaje de espacio reservado en el sistema de archivos para el usuario root. Este espacio permite que el sistema de archivos se llene por completo y el usuario root pueda realizar tareas de recuperacin.

-j -L -m

A continuacin se presentan algunos ejemplos: Para migrar un filesystem de tipo ext2 a ext3, sin destruir los datos, ejecute el siguiente comando:
# tune2fs -j /dev/sda1 # tune2fs -c0 -i0 /dev/sda1

Para mostrar los parmetros actuales del sistema de archivos utilice el comando:
dumpe2fs [-h] dispositivo

Montado de sistemas de archivos


Las particiones de los discos en Linux se montan en directorios tales como /, /home y /usr. El sistema tiene un archivo llamado /etc/fstab en el cual se especifican dnde y en que forma se montan los diferentes dispositivos. Cada lnea
41 Ing. Ivn Ferreira

Administracin del sistema de archivos

en este fichero describe un dispositivo, indicando los siguientes aspectos para cada uno:

Nombre del dispositivo o etiqueta: Es posible montar un sistema de archivos por medio del nombre del dispositivo o la etiqueta definida para el sistema de archivos, por ejemplo /dev/hda1, /dev/sdc1, /dev/fd0, LABEL=/home, LABEL=/home, etc. Actualmente para cada dispositivo con sistema de ficheros ext3 en lugar de especificar su nombre en el fichero fstab se puede indicar una etiqueta o identificador asociado. La forma utilizada es LABEL=<etiqueta> o UUID=<uuid>. Esta posibilidad hace ms robusta la configuracin ante la realizacin de cambios en los discos duros ya sea porque se incluyan nuevos o se reordenen los existentes. Para ver o cambiar la etiqueta de un dispositivo se puede emplear el comando e2label.

Directorio donde se monta: La ruta al directorio donde ser montado el dispositivo, por ejemplo /, /home, /var, etc.

Tipo de sistema de archivos: Por ejemplo ext3, vfat, nfs, swap, iso9660, auto, etc.

Opciones de montaje: Las opciones con la que se montar el sistema de archivos, por ejemplo ro, rw, exec, auto, user, etc.

Dos valores nmericos: el primero toma los valores 0 1 indicando si al dispositivo se le har dump o no, esta opcin es obsoleta. El segundo nmero expresa la prioridad que tiene el dispositivo cuando se verifica la integridad del sistema de archivos durante el inicio del sistema.

Las opciones de montaje son numerosas. Las ms usadas se listan a continuacin:

Red Hat Certified Engineer

42

Administracin del sistema de archivos

Opcin auto rw ro owner

Descripcin Indica que el dispositivo se monta siempre que se inicie el sistema. La opuesta es noauto. Indica que el dispositivo se monta con permisos de lectura y escritura. Indica que el dispositivo se monta con permisos de lectura solamente. Indica que el primer usuario distinto de root conectado al sistema localmente tiene derechos a montar y desmontar el dispositivo (se aduea de este). Indica que cualquier usuario puede montar y solo el mismo usuario podr desmontar el dispositivo. La opcin opuesta es nouser. Indica que cualquier usuario puede montar y cualquiera tambin, puede desmontar el dispositivo. Indica que el permiso s tenga efecto para los ejecutables presentes en el dispositivo. La opcin opuesta es nosuid. Indica que los binarios ejecutables almacenados en el dispositivo se pueden ejecutar. La opcin opuesta es noexec. Expresa que todas las operaciones de entrada y salida se hacen de forma asncrona, o sea, no necesariamente en el momento en que se invocan. La opcin opuesta es sync. Indica que se interprete como tal a los dispositivos especiales de bloques y de caracteres presentes en el dispositivo. La opcin opuesta es nodev. es una opcin equivalente a la unin de rw, suid, dev, exec, auto, nouser y async.

user users suid exec async

dev

defaults

Algunos ejemplos de lneas en el fichero /etc/fstab son:


LABEL=/ /dev/sda7 /dev/cdrom /dev/sdb1 /dev/sda2 /dev/sdc1 / /home /media/cdrom /media/usbdisk swap /d0 ext2 ext3 iso9660 auto swap ext3 defaults defaults noauto,owner,ro noauto,owner defaults ro,noexec,owner,noauto 1 1 0 0 0 1 1 2 0 0 0 0

Para montar y desmontar los dispositivos se emplean los comandos mount y umount respectivamente. Estos mantienen una lista de los dispositivos montados en el archivo /etc/mtab.
43 Ing. Ivn Ferreira

Administracin del sistema de archivos

La sintaxis del comando mount es la siguiente:


mount [opciones] [dispositivo] [punto_montaje] umount [opciones] <punto_montaje>|<dispositivo>

Algunas opciones comnmente utilizadas son: Opcin -a Descripcin En el caso de mount monta todos los dispositivos que tienen la opcin auto en el fichero fstab, y para umount desmonta todo lo que est en el fichero /etc/mtab. Indica el tipo de sistema de archivos a montar. Especifica las opciones de montaje (separadas por comas).

-t <tipo> -o <opciones>

Cuando se especifican en el fichero fstab las caractersticas del montaje de un dispositivo, para montarlo no es necesario indicarlo todo, basta con poner el nombre del dispositivo o el directorio donde se monta por defecto. A continuacin se presentan algunos ejemplos: El siguiente comando monta todos los dispositivos con sistemas de archivos ext3 y con la opcin auto en el fichero /etc/fstab
# mount -a -t ext3

El siguiente comando monta un pen drive en el directorio /media/usbdisk


# mount /dev/sdb1 /media/usbdisk

El siguiente comando monta el el dispositivo de CD/DVD-ROM


# mount -o ro /dev/cdrom /media/cdrom

El siguiente comando desmonta el cdrom


# umount /media/cdrom

Red Hat Certified Engineer

44

Administracin del sistema de archivos

Siempre que un dispositivo est siendo utilizado por el sistema no se podr desmontar. Este emitir un mensaje de error como en el siguiente ejemplo:
# umount /media/cdrom umount: /media/cdrom: device is busy

Un dispositivo puede estar ocupado por el simple hecho de tener posicionado un shell en el directorio donde se mont, haber lanzado un ejecutable en segundo plano desde ese directorio, o haber montado otro dispositivo en un subdirectorio del mismo. Para lograr el objetivo ser necesario eliminar todos estos casos. Para identificar si un sistema de archivos est siendo utilizado por algn proceso, ejecute el comando fuser o el comando lsof.

Ejemplo de la adicin de un disco con sistema de archivos ext3


Inicialmente debe particionar el disco, en este ejemplo se eliminar la particin existente y crear una particin primaria de 2GB y una particin extendida con 2 unidades lgicas de 1GB.
# fdisk /dev/sdb El nmero de cilindros para este disco est establecido en 1940. No hay nada malo en ello, pero es mayor que 1024, y en algunos casos podra causar problemas con: 1) software que funciona en el inicio (p.ej. versiones antiguas de LILO) 2) software de arranque o particionamiento de otros sistemas operativos (p.ej. FDISK de DOS, FDISK de OS/2) Orden (m para obtener ayuda): p Disco /dev/sdb: 15.0 GB, 15020457984 bytes 240 cabezas, 63 sectores/pista, 1940 cilindros Unidades = cilindros de 15120 * 512 = 7741440 bytes Disposit. Inicio /dev/sdb1 Principio 1 Fin 555 Bloques 4195768+ Id b Sistema Win95 FAT32

Orden (m para obtener ayuda): d Se ha seleccionado la particin 1

45

Ing. Ivn Ferreira

Administracin del sistema de archivos


Orden (m para obtener ayuda): p Disco /dev/sdb: 15.0 GB, 15020457984 bytes 240 cabezas, 63 sectores/pista, 1940 cilindros Unidades = cilindros de 15120 * 512 = 7741440 bytes Disposit. Inicio Principio Fin Bloques Id Sistema

Orden (m para obtener ayuda): n Accin de la orden e Particin extendida p Particin primaria (1-4) p Nmero de particin (1-4): 1 Primer cilindro (1-1940, valor predeterminado 1): [ENTER] ltimo cilindro o +tamao o +tamaoM o +tamaoK (1-1940, valor predeterminado 1940): +2048M Orden (m para obtener ayuda): n Accin de la orden e Particin extendida p Particin primaria (1-4) e Nmero de particin (1-4): 2 Primer cilindro (267-1940, valor predeterminado 267): [ENTER] ltimo cilindro o +tamao o +tamaoM o +tamaoK (267-1940, valor predeterminado 1940): [ENTER] Orden (m para obtener ayuda): p Disco /dev/sdb: 15.0 GB, 15020457984 bytes 240 cabezas, 63 sectores/pista, 1940 cilindros Unidades = cilindros de 15120 * 512 = 7741440 bytes Disposit. Inicio /dev/sdb1 /dev/sdb2 Principio 1 267 Fin 266 1940 Bloques 2010928+ 12655440 Id 83 5 Sistema Linux Extendida

Orden (m para obtener ayuda): n Accin de la orden l Particin lgica (5 o superior) p Particin primaria (1-4) l Primer cilindro (267-1940, valor predeterminado 267): [ENTER] ltimo cilindro o +tamao o +tamaoM o +tamaoK (267-1940, valor predeterminado 1940): +1024M Orden (m para obtener ayuda): n Accin de la orden l Particin lgica (5 o superior) p Particin primaria (1-4) l

Red Hat Certified Engineer

46

Administracin del sistema de archivos


Primer cilindro (400-1940, valor predeterminado 400): [ENTER] ltimo cilindro o +tamao o +tamaoM o +tamaoK (400-1940, valor predeterminado 1940): +1024M Orden (m para obtener ayuda): p Disco /dev/sdb: 15.0 GB, 15020457984 bytes 240 cabezas, 63 sectores/pista, 1940 cilindros Unidades = cilindros de 15120 * 512 = 7741440 bytes Disposit. Inicio /dev/sdb1 /dev/sdb2 /dev/sdb5 /dev/sdb6 Principio 1 267 267 400 Fin 266 1940 399 532 Bloques 2010928+ 12655440 1005448+ 1005448+ Id 83 5 83 83 Sistema Linux Extendida Linux Linux

Orden (m para obtener ayuda): w Se ha modificado la tabla de particiones! Llamando a ioctl() para volver a leer la tabla de particiones. Se estn sincronizando los discos.

Crear el sistema de archivos.


# mkfs -t ext3 /dev/sdb1 mke2fs 1.34 (25-Jul-2003) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 251392 inodes, 502732 blocks 25136 blocks (5.00%) reserved for the super user First data block=0 16 block groups 32768 blocks per group, 32768 fragments per group 15712 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 32 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.

Repita el comando para cada una de las particiones primarias o unidades lgicas de tipo Linux (83) creadas.
47 Ing. Ivn Ferreira

Administracin del sistema de archivos

Ajustar los parmetros para el sistema de archivos creado.


# tune2fs -c0 -i0 /dev/sdb1 tune2fs 1.34 (25-Jul-2003) Setting maximal mount count to -1 Setting interval between check 0 seconds Setting reserved blocks percentage to 0 (0 blocks)

Repita el comando para cada uno de los sistemas de archivos ext3 creados. Creacin de los puntos de montaje para cada sistema de archivos.
# mkdir /d0 # mkdir /d1 # mkdir /d2

Seleccione el nombre que desee para el directorio el cual ser el punto de montaje. No es requisito que el directorio se encuentre en la raz del sistema. Edite el archivo /etc/fstab para el montado al inicio de los sistemas de archivos.
# vi /etc/fstab /dev/sdb1 /d0 ext3 defaults 0 0 /dev/sdb2 /d1 ext3 defaults 0 0 /dev/sdb3 /d2 ext3 defaults 0 0

Montado de los sistemas de archivos.


# mount /d0 # mount /d1 # mount /d2

Verificacin y reparacin del sistema de archivos ext2/ext3


El comando fsck permite hacer una verificacin y reparacin del sistema de archivos ext2/ext3. Si el sistema de archivos es ext3, fsck normalmente aplicar el journal y terminar. El comando fsck verificar:

Que todos los bloques sean referenciados en al menos una lista, ninguno se
48

Red Hat Certified Engineer

Administracin del sistema de archivos

encuentre duplicado en una lista o sea referenciado por ms de una lista.

Que un inodo utilizado tenga una entrada en un directorio, y que los directorios no referencien a inodos libres.

Que el tamao del archivo y la cantidad de bloques que ocupa concuerden.

El comando fsck no realiza una verificacin de la superficie del disco duro, es decir, no buscar bloques defectuosos que no puedan ser ledos o escritos. Sin embargo, puede instruirse al comando fsck que utilice el comando badblocks para actualizar la tabla de bloques daados con la opcin -c. Nunca es requerido ejecutar badblocks sobre discos SCSI. La sintaxis del comando fsck es la siguiente:
fsck [opciones] [dispositivo]

Entre las opciones ms comunes se encuentran: Opcin -s -A -C -y -c -b Descripcin Serializar operaciones. Es til para cuando se realizan verificaciones mltiples. ntenta verificar todos los sistemas de archivos definidos en el /etc/fstab. Despliega una barra de progreso para aquellos sistemas de archivos que estn siendo verificados. Responder Si a todas las preguntas. Utiliza el comando badblocks para verificar la superficie del disco. Permite la recuperacin del superbloque a partir de una copia existente en el grupo de bloques indicado.

Slo el usuario root puede ejecutar el comando fsck y debe ser corrido sobre sistemas de archivos que no estn montados, de lo contrario, puede provocar corrupcin de datos. Para verificar el sistema de archivos root /, deber montarlo como slo lectura.
49 Ing. Ivn Ferreira

Administracin del sistema de archivos

El fsck devuelve los siguientes cdigos de salida (exit code): Cdigo 0 1 2 4 8 16 32 128 Sin errores Errores corregidos El sistema debera ser reiniciado Errores de sistemas de archivos no corregidos Error operacional Error de sintaxis Cancelado por peticin del usuario Error de bibliotecas compartidas Descripcin

Los cdigos de error pueden ser consultados ejecutando el comando man fsck.

Gestin del espacio Swap


El Espacio swap en Linux es usado cuando la cantidad de memoria fsica (RAM) est llena. Si el sistema necesita ms recursos de memoria y la memoria fsica est llena, las pginas inactivas de la memoria se mueven al espacio swap. Mientras que el espacio swap puede ser de ayuda para las mquinas con poca memoria RAM, no debera considerarse como algo que pueda sustituir a ms RAM. El espacio Swap se encuentra en discos duros, que tienen un tiempo de acceso ms lento que la memoria fsica. El espacio Swap puede ser una particin swap dedicada (recomendable), un archivo swap o una combinacin de particiones y archivos swap.

Aadir el espacio Swap


A veces es necesario aadir ms espacio swap despus de la instalacin. Por ejemplo, puede actualizar la cantidad de RAM en su sistema de 1 GB a 2 GB, pero hay tan slo 1 GB de espacio swap. Sera conveniente aumentar la cantidad de espacio swap hasta 2 GB sobre todo si lleva a cabo operaciones de uso intensivo de memoria o si ejecuta aplicaciones que requieran gran cantidad de memoria.
Red Hat Certified Engineer 50

Administracin del sistema de archivos

Tiene dos opciones: aadir una particin swap o un archivo swap. Se recomienda que aada una particin swap, pero a veces no resulta fcil si no cuenta con espacio libre disponible. Para aadir una particin swap ( asumiendo que /dev/sdb2 es la particin que quiere agregar): El disco duro no puede estar en uso (no puede tener particiones montadas, y no se puede tener activado el espacio swap) Cree la particin swap usando fdisk. Por ejemplo
# fdisk /dev/sdb

Cree la particin (n), cambie el tipo de sistema de archivos a linux swap (t) ID 82 y salga guardando las modificaciones (w) Ahora que tiene la particin swap, use el comando mkswap para configurar la particin swap. En el indicador de comandos shell como root, escriba lo siguiente:
# mkswap /dev/sdb2

Para activar la particin swap inmediatamente, escriba el comando siguiente:


# swapon /dev/sdb2

Para activarlo cuando se arranca, edite /etc/fstab para incluir:


/dev/sdb2 swap swap defaults 0 0

La prxima vez que se arranque el sistema, activar la nueva particin swap. Despus de aadir la nueva particin swap y de haberla activado, asegrese de que est activa visualizando el resultado del comando cat /proc/swaps, free o swapon -s.

51

Ing. Ivn Ferreira

Administracin del sistema de archivos

Aadir un archivo swap


Para aadir un archivo en disco como rea de swap en lugar de una particin de disco, primero determine el tamao del nuevo archivo swap. En el intrprete de comandos, como root, cree un archivo lleno de ceros, indicando un tamao de bloque de 1 MB (1024k). El valor de count indica cuantas veces 1 MB sern escritos, para el siguiente ejemplo, 1024 veces 1 MB representan a 1 GB:
# dd if=/dev/zero of=/d0/swapfile bs=1024k count=1024

Configure el archivo swap con el comando:


# mkswap /d0/swapfile

Para activar el archivo swap inmediatamente pero no automticamente cuando se arranca:


# swapon /d0/swapfile

5. Para activarlo cuando se arranca, edite /etc/fstab para incluir:


/d0/swapfile swap swap defaults 0 0

La prxima vez que se arranque el sistema, se activar el nuevo archivo swap. Despus de haber aadido el nuevo archivo swap y de haberlo activado, asegrese de que est activado visualizando el resultado del comando cat /proc/swaps, free o swapon -s.

Utilizacin de autofs
Autofs controla la operacin de los demonios automount, normalmente es invocado al inicio. Autofs consultar el archivo de configuracin /etc/auto.master para encontrar puntos de montaje del sistema. El auto.master define los puntos de montaje y
Red Hat Certified Engineer 52

Administracin del sistema de archivos

apunta a otro archivo describiendo los sistemas de archivos a ser montados en ese punto de montaje. El formato del archivo /etc/auto.master es el siguiente:
/punto_montaje mapa opciones

El primer campo es el punto de montaje a ser monitoreado, el segundo campo es el archivo mapa a consultar para este punto de montaje, y el tercer campo especifica las opciones de montaje para todos los sistemas de archivos en ese punto de montaje. Ejemplo del archivo /etc/auto.master:
# /misc /etc/auto.misc --timeout=60

El directorio misc ser monitoreado y se montarn automticamente los sistemas de archivos especificados en el archivo mapa /etc/auto.misc y se desmontarn luego de sesenta segundos. El formato del archivo mapa es el siguiente:
clave [-opciones] ubicacin

Campo clave

Descripcin Subdirectorio dentro del directorio especificado en /etc/auto.master que actuarn como punto de montaje para el sistema de archivos especificado. Opciones de montado del sistema de archivos. De dnde los sistemas de archivos sern montados.

opciones ubicacin

Ejemplo del archivo mapa /etc/auto.misc


cdrom usbdisk -fstype=iso9660,ro -fstype=auto :/dev/cdrom :/dev/sdb1

De la configuracin de los archivos /etc/auto.master y /etc/auto.misc


53 Ing. Ivn Ferreira

Administracin del sistema de archivos

obtenemos que el directorio /misc ser monitoreado. Si se realiza una solicitud al directorio /misc/cdrom se montar automticamente el dispositivo /dev/cdrom como slo lectura en ese directorio y se desmontar luego de sesenta segundos. Si se realiza una solicitud al directorio /misc/usbdisk se montar automticamente el dispositivo /dev/sdb1 en ese directorio.

Red Hat Certified Engineer

54

3 Proceso de arranque, inicio y cierre del sistema

Proceso de arranque, inicio y cierre del sistema

Proceso de arranque, inicio y cierre del sistema

Una de las caractersticas ms importantes y poderosas de CentOS Linux es el mtodo abierto y configurable para el inicio y cierre del sistema operativo. Los usuarios son libres de configurar muchos aspectos del proceso de arranque, incluyendo qu programas se lanzarn al momento de arranque. De forma parecida, el cierre del sistema finaliza los procesos de forma organizada y configurable, aunque la personalizacin de este proceso casi nunca es necesaria. Entender el funcionamiento del proceso de arranque y cierre no solo le permitir personalizar fcilmente CentOS Linux, sino que tambin le facilitar resolver problemas relacionados con el inicio y el cierre del sistema.

Proceso de arranque
A continuacin obtendr las etapas bsicas del proceso de arranque para un sistema x86:

La BIOS del sistema comprueba y lanza la primera etapa del gestor de arranque del MBR del disco duro primario.

La primera etapa del gestor de arranque se autocarga en memoria y lanza la segunda etapa del gestor de arranque desde la particin /boot/.

La segunda etapa del gestor de arranque carga el kernel en memoria, lo cual en su momento carga los mdulos necesarios y monta la particin root para slo-lectura.

El kernel transfiere el control del proceso de arranque al programa /sbin/init.

El programa /sbin/init carga todos los servicios y herramientas de


56

Red Hat Certified Engineer

Proceso de arranque, inicio y cierre del sistema

espacio del usuario y monta todas las particiones listadas en /etc/fstab.

El usuario se presenta con un intrprete de comandos de registro para el sistema Linux apenas arrancado.

Ya que la configuracin del proceso de arranque es ms comn que la del proceso de cierre, en el resto de la seccin se discutir el modo en el que el proceso de arranque funciona y cmo se puede personalizar para satisfacer sus necesidades.

Vista detallada del proceso de arranque


El inicio del proceso de arranque vara dependiendo de la plataforma de hardware usada. Sin embargo, una vez que se encuentra el kernel y se carga el sistema, el proceso de arranque por defecto es idntico a travs de todas las arquitecturas. Esta seccin se basa en la arquitectura x86.

El BIOS
Cuando un ordenador x86 se carga, el procesador busca al final de la memoria del sistema por Basic Input/Output System o el programa BIOS y lo ejecuta. El BIOS controla no slo el primer paso del proceso de arranque, sino que tambin proporciona una interfaz de bajo nivel para dispositivos perifricos. Por este motivo se escribe tan slo en modo lectura, memoria permanente y est siempre disponible para el uso. Otras plataformas usan programas diferentes para ejecutar tareas a bajo nivel equivalentes a aquellas del BIOS en el sistema x86. Por ejemplo, los ordenadores
57 Ing. Ivn Ferreira

Proceso de arranque, inicio y cierre del sistema

basados en Itanium usan Interfaz de Firmware extensible (EFI) Shell. Una vez que se haya cargado, la BIOS chequea los perifricos y localiza un dispositivo con el que arrancar el sistema. Habitualmente, en primer lugar comprueba cualquier disquete y unidades de CD-ROM presente por los medios de arranque, y a continuacin si esto falla, echa un vistazo a las unidades de disco duro del sistema. El orden de las unidades necesario para arrancar puede ser controlado con una configuracin del BIOS. El BIOS carga en memoria cualquier programa que resida en el primer sector de este dispositivo, llamado Master Boot Record o MBR. La MBR slo tiene 512 bytes de tamao y contiene las instrucciones de cdigo de mquina para el arranque del equipo, llama un gestor de arranque as como tambin la tabla de particiones. Una vez que el BIOS haya encontrado y cargado el gestor de arranque en memoria, le deja el control del proceso de arranque a ste.

El gestor de arranque
Esta seccin revisa los gestores de arranque para la plataforma x86. Dependiendo de la arquitectura del sistema, el proceso de arranque diferir ligeramente. Bajo CentOS Linux estn disponibles dos gestores de arranque: GRUB o ELILO para plataformas Itanium. Los gestores de arranque de Linux para la plataforma x86 se dividen en dos etapas. La primera es un cdigo binario de mquina pequea en el MBR. Su nica funcin es la de localizar el gestor de arranque de la segunda etapa y cargar la primera parte de ste en memoria. GRUB es el gestor de arranque ms nuevo y tiene la ventaja de ser capaz de leer particiones ext2 y ext3 y cargar su archivo de configuracin /boot/grub/grub.conf al momento de arranque. Una vez que el gestor de arranque de la segunda etapa est en memoria, presenta al usuario con la pantalla inicial, grfica de CentOS Linux mostrando los diferentes

Red Hat Certified Engineer

58

Proceso de arranque, inicio y cierre del sistema

sistemas operativos o kernels que para los que ha sido configurado para arrancar. En esta pantalla el usuario puede usar las flechas de direccin para escoger el sistema operativo o kernel con el que desea arrancar y presione la tecla [ENTER]. Si no se presiona ninguna tecla, el gestor de arranque carga la seleccin predeterminada luego de un perodo de tiempo de espera (tambin configurable). Una vez que el gestor de arranque de la segunda etapa haya determinado qu kernel arrancar, localizar el binario del kernel correspondiente en el directorio /boot/. El kernel binario es llamado usando (donde el siguiente formato /boot/vmlinuz-<kernel-version> de arranque). El gestor de arranque luego coloca la imagen apropiada de initial RAM disk, conocida como initrd, en la memoria. El initrd es usado por el kernel para cargar controladores necesarios para arrancar el sistema. Esto es muy importante si posee unidades de disco duro SCSI o si est usando el sistema de ficheros ext3. Una vez que el kernel y la imagen initrd se cargan en memoria, el gestor de arranque controla el proceso de arranque para el kernel. <kernel-version>

corresponde a la versin del kernel especificada en las configuraciones del gestor

Gestores de arranque para otras arquitecturas


Una vez que el kernel de CentOS Linux arranca y pasa el proceso de arranque al comando init, los mismos acontecimientos suceden en cada arquitectura exactamente en el mismo modo. La nica diferencia entre el proceso de arranque de cada arquitectura est en la aplicacin que se usa para encontrar y cargar el kernel.

El kernel
Cuando el kernel se carga, inmediatamente se inicializa y configura la memoria del ordenador y los diferentes hardware conectado al sistema, incluyendo procesadores, subsistemas de entrada/salida y dispositivos de almacenamiento. A

59

Ing. Ivn Ferreira

Proceso de arranque, inicio y cierre del sistema

continuacin buscar la imagen initrd en una ubicacin predeterminada en memoria, la descomprimir, la montar y cargar todos los controladores necesarios. A continuacin inicializa los dispositivos virtuales relacionados con el sistema de ficheros, tal como LVM o software RAID antes de desmontar la imagen del disco initrd y liberar toda la memoria que la imagen del disco ocup anteriormente. El kernel luego crea un dispositivo root, monta la particin root como slo lectura y libera cualquier memoria no utilizada. Llegados a este punto, el kernel est cargado en memoria y operativo. Sin embargo, como no hay aplicaciones de usuario que permitan la entrada significativa de datos al sistema, no se puede hacer mucho ms. Para configurar el entorno de usuario, el kernel inicia el programa /sbin/init.

Programa /sbin/init
El programa /sbin/init (tambin llamado init) coordina el resto del proceso de arranque y configura el ambiente del usuario. Cuando el comando init arranca, se vuelve el padre o abuelo de todos los procesos que comienzan automticamente en el sistema CentOS Linux. Primero, ejecuta el script /etc/rc.d/rc.sysinit, que establece la ruta a otros programas, activa el swap, controla los sistemas de archivos y y se encarga de todo lo que el sistema necesita tener hecho al momento de la inicializacin. El comando init luego ejecuta el script /etc/inittab, que describe cmo el sistema debera configurarse en cada nivel de ejecucin de SysV init. Entre otras cosas, /etc/inittab configura el nivel de ejecucin por defecto y establece que /sbin/update debera de ejecutarse cuando se arranque un nivel de ejecucin en concreto.

Red Hat Certified Engineer

60

Proceso de arranque, inicio y cierre del sistema

A continuacin, el comando init configura la librera de funcin de fuente, /etc/ rc.d/init.d/functions, para el sistema. Esto indica el modo en que empezar o matar un programa y cmo determinar el PID del programa. El programa init inicia todos los procesos de fondo buscando en el directorio apropiado rc por el nivel de ejecucin especificado por defecto en /etc/inittab. Los directorios rc estn numerados para corresponder al nivel de ejecucin que represente. Por ejemplo, /etc/rc.d/rc5.d/ es el directorio para el nivel de ejecucin 5. Cuando se arranca el nivel de ejecucin 5, el programa init consulta el directorio /etc/rc.d/rc5.d/ para determinar qu procesos iniciar o parar. A continuacin un ejemplo de listado del directorio /etc/rc.d/rc5.d/:
K05innd->../init.d/innd K05saslauthd->../init.d/saslauthd K10psacct->../init.d/psacct . . . S95atd->../init.d/atd S97rhnsd->../init.d/rhnsd S99local->../rc.local S99mdmonitor->../init.d/mdmonitor

Como puede ver, ninguno de los scripts que inician y cierran los servicios estn localizados en el directorio /etc/rc.d/rc5.d/. Casi todos los ficheros en /etc/ rc.d/rc5.d/ son enlaces simblicos apuntando a los scripts localizados en el directorio /etc/rc.d/init.d/. Los enlaces simblicos se usan en cada uno de los directorios rc de manera que los niveles de ejecucin puedan ser reconfigurados al crear, modificar y eliminar los enlaces simblicos sin que afecte a los scripts actuales a los que se refiere. El nombre de cada enlace simblico inicia con K o S. Los enlaces K son procesos eliminados en ese nivel de ejecucin, mientras que aquellos que inician por S son procesos iniciados.
61 Ing. Ivn Ferreira

Proceso de arranque, inicio y cierre del sistema

El comando init en primer lugar detiene todos los enlaces simblicos de K en el directorio mediante la ejecucin del comando /etc/rc.d/init.d/<command> stop, en el que <command> es el proceso a matar. A continuacin inicia todos los enlaces simblicos S al ejecutar /etc/rc.d/init.d/<command> start. Cada uno de los enlaces simblicos se numera para dictaminar el orden de inicio. Puede cambiar el orden en el que los servicios inician o paran al cambiar el nmero. Mientras ms bajo es el nmero, ms rpido se arrancar. Los enlaces simblicos con el mismo nmero se inician de modo alfabtico. Despus que el comando
init

ha progresado a travs del directorio adecuado rc

para el nivel de ejecucin, el script /etc/inittab bifurca los procesos /sbin/mingetty para cada consola virtual (intrpretes de comando de registro,
login)

ubicada para el nivel de ejecucin. Los niveles de ejecucin del 2 al 5

obtienen todas las seis consolas virtuales, mientras que el nivel de ejecucin 1 (modo usuario nico) obtiene tan slo uno y lo niveles de ejecucin del 0 al 6 no obtienen ninguno. El proceso /sbin/mingetty abre las rutas de la comunicacin para los dispositivos tty, establece sus modos, imprime el indicador de inicio de sesin, toma el nombre del usuario, e inicia el proceso de inicio de sesin para el usuario. En el nivel de ejecucin 5, el /etc/inittab ejecuta un script llamado /etc/X11/ prefdm. El script ejecuta prefdm ejecuta su gestor de pantalla preferido para X gdm, kdm, o xdm, dependiendo de los contenidos del archivo /etc/sysconfig/desktop. En este punto, el sistema est operando en el nivel de ejecucin nivel 5 y mostrando la pantalla de inicio de sesin.

Ejecutar programas adicionales en el momento de arranque


El script /etc/rc.d/rc.local lo ejecuta el comando init en tiempo de arranque, o cuando se cambien niveles de ejecucin. El agregar comandos a este
Red Hat Certified Engineer 62

Proceso de arranque, inicio y cierre del sistema

script es una forma fcil de realizar tareas necesarias como arrancar servicios especiales o inicializar dispositivos sin tener que escribir scripts complejos de inicializacin en el directorio /etc/rc.d/init.d/ y creando los enlaces simblicos.

Uso de sysctl
El comando /sbin/sysctl es usado para visualizar, configurar y automatizar configuraciones del kernel en el directorio /proc/sys/. Para tener una vista rpida de todas las variables configurables en el directorio /proc/sys/, escriba el comando /sbin/sysctl -a como root. Esto crear una lista grande y exhaustiva, de la cual le mostramos una pequea parte:
net.ipv4.route.min_delay = 2 kernel.sysrq = 0 kernel.sem = 250 32000 32 128

Esta es la misma informacin que verla si echara un vistazo a cada uno de los archivos individualmente. La nica diferencia es la localizacin del archivo. Por ejemplo, el archivo /proc/sys/net/ipv4/route/min_delay est representado por net.ipv4.route.min_delay, con las barras oblicuas del directorio sustituidas por puntos y la porcin asumida proc.sys. El comando sysctl se puede usar en vez de echo para asignar valores a los archivos en los que se puede escribir en el directorio /proc/sys/. Por ejemplo, en vez de usar el comando:
# echo 1 > /proc/sys/kernel/sysrq

Utilice el comando sysctl equivalente como se muestra:


sysctl -w kernel.sysrq="1" kernel.sysrq = 1

A pesar de que es muy til durante las pruebas el poder rpidamente efectuar configuraciones de valores simples en /proc/sys/, esto no funciona bien en un

63

Ing. Ivn Ferreira

Proceso de arranque, inicio y cierre del sistema

ambiente

de

produccin

puesto

que

las

configuraciones

especiales

en

/proc/sys/ se pierden cuando se vuelve a arrancar el sistema. Para conservar las configuraciones personalizadas, agreguelas al archivo /etc/sysctl.conf. Cada vez que el sistema arranque, el programa init ejecuta el script /etc/rc.d/rc.sysinit. Este script contiene un comando para ejecutar sysctl mediante el uso de /etc/sysctl.conf para determinar los valores pasados al kernel. Cualquier valor aadido a /etc/sysctl.conf surtir efecto cada vez que el sistema arranque.

Niveles de ejecucin de SysV Init


El sistema de niveles de ejecucin SysV init provee de un proceso estndar para controlar cules programas init lanza o detiene cuando se inicializa un nivel de ejecucin. SysV init fue escogido porque es ms fcil de usar y ms flexible que el proceso tradicional init estilo BSD. Los ficheros de configuracin para SysV init estn en el directorio /etc/rc.d/. Dentro de este directorio, se encuentran los scripts rc, rc.local, rc.sysinit y opcionalmente, los scripts rc.serial as como los siguientes directorios:
init.d/ rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d/

El directorio init.d/ contiene los scripts usados por el comando /sbin/init cuando se controlan los servicios. Cada uno de los directorios numerados representa los seis niveles de ejecucin predeterminados configurados por defecto bajo CentOS Linux.

Red Hat Certified Engineer

64

Proceso de arranque, inicio y cierre del sistema

Niveles de ejecucin
Los niveles de ejecucin son un estado, o modo, definido por los servicios listados en el SysV directorio /etc/rc.d/rc<x>.d/, donde <x> es el nmero de nivel de ejecucin. La idea detrs de los niveles de ejecucin de SysV init gira alrededor del hecho que sistemas diferentes se pueden usar de formas diferentes. Por ejemplo, el servidor corre de forma ms eficiente sin tener que arrastrar recursos del sistema creados por el sistema X. Otras veces, el administrador del sistema puede necesitar operar el sistema en un nivel ms bajo de ejecucin para realizar tareas de diagnstico, como reparar corrupcin del disco duro, cuando no es posible que ningn otro usuario est usando el sistema. Las caractersticas de un nivel de ejecucin dado determinan qu servicios son detenidos o iniciados por
init.

Por ejemplo, el nivel de ejecucin 1 (modo nico

usuario) detiene cualquier servicio de red, mientras que el nivel 3 arranca estos servicios. Asignando servicios especficos a ser detenidos o arrancados en un nivel dado, init puede fcilmente cambiar el modo de la mquina sin que el usuario tenga que manualmente arrancar o detener servicios. Los siguientes niveles de ejecucin estn definidos por defecto para CentOS Linux: Nivel 0 2 3 4 5 6 Detener el sistema Sin usar (usuario-definible) Modo texto multiusuario completo Sin usar (usuario-definible) Modo grfico multiusuario completo (con una pantalla de inicio de sesin basada en X) Reiniciar Descripcin

Generalmente, los usuarios utilizan CentOS Linux al nivel de ejecucin 3 o nivel de ejecucin 5 ambos modos multiusuario. Ya que los niveles de ejecucin 2 y 4 no
65 Ing. Ivn Ferreira

Proceso de arranque, inicio y cierre del sistema

son usados, los usuarios a veces personalizan estos niveles para cubrir necesidades especficas. El nivel de ejecucin por defecto para el sistema est listado en /etc/inittab. Para saber el nivel de ejecucin por defecto de un sistema, busque por la lnea similar a la que se muestra abajo cerca de la parte superior de /etc/inittab:
id:5:initdefault:

El nivel de ejecucin predeterminado en el ejemplo de arriba es cinco, como indica el nmero despus del punto y coma. Para cambiarlo, modifique /etc/inittab como usuario root. Es posible cambiar al nivel de ejecucin por defecto al momento de arranque modificando los argumentos pasados del gestor de arranque al kernel.

Utilidades de los niveles de ejecucin


Una de las mejores formas de configurar los niveles de ejecucin es usando las herramientas initscript. Estas herramientas estn diseadas para simplificar las tareas de mantener archivos en la jerarqua del directorio SysV init y descargan a los administradores de sistemas de tener que directamente manipular numerosos enlaces simblicos en los subdirectorios de /etc/rc.d/. CentOS Linux ofrece tres de tales utilidades:

/sbin/chkconfig - La utilidad /sbin/chkconfig es una herramienta de lnea de comandos sencilla para mantener la jerarqua del directorio /etc/rc.d/init.d.

/sbin/ntsysv - La utilidad basada en ncurses /sbin/ntsysv provee de una interfaz interactiva basada en texto, que muchos encuentran ms fcil de usar que chkconfig.

Herramienta de configuracin de servicios - El programa de interfaz


66

Red Hat Certified Engineer

Proceso de arranque, inicio y cierre del sistema

grfica Herramienta de configuracin de servicios system-onfigservices es una utilidad flexible basada en GTK2 para la configuracin de niveles de ejecucin.

Cierre del sistema


Para apagar CentOS Linux, el usuario root puede ejecutar el comando /sbin/shutdown. La pgina man de shutdown tiene una lista completa de opciones, pero las dos ms usadas son:
# /sbin/shutdown -h now # /sbin/shutdown -r now

Despus de apagar todo, la opcin -h detendr la mquina, y la opcin -r la reiniciar. Los usuarios no root pueden usar los comandos reboot y halt para apagar el equipo mientras se est en niveles de ejecucin 1 hasta 5. Sin embargo, no todos los sistemas operativos Linux soportan esta caracterstica. Si la computadora no se apaga, tenga cuidado de no apagar la computadora hasta que aparezca un mensaje indicando que el sistema ha sido detenido. Si no espera por este mensaje puede significar que no todas las particiones de discos duros han sido desmontadas, y puede llevar a un sistema de archivos corrupto. Puede utilizar el comando last -x para identificar cundo se apago, reinicio o cambi de nivel de ejecucin el sistema.

67

Ing. Ivn Ferreira

4 Administracin de usuarios

Administracin de usuarios

Administracin de usuarios
Usuarios y grupos
El control de los usuarios y grupos es un elemento clave en la administracin de sistemas de CentOS Linux. Los usuarios pueden ser gente real, es decir, cuentas ligadas a un usuario fsico en particular o cuentas que existen para ser usadas por aplicaciones especficas. Los grupos son siempre expresiones lgicas de organizacin, reuniendo usuarios para un propsito comn. Los usuarios dentro de un mismo grupo pueden leer, escribir o ejecutar archivos que pertenecen al grupo. Cada usuario y grupo tiene un nmero de identificacin nico llamado user id (UID) y un group id (GID). Cuando se crea un archivo se asigna a un usuario y a un grupo. De la misma manera se asignan los permisos de lectura, escritura y ejecucin para el propietario del archivo, para el grupo y para cualquier otro usuario en un host. El usuario y el grupo de un archivo particular, as como los permisos en ese archivo, pueden ser cambiados por un root o, en la mayora de los casos, por el creador del archivo. Una de las tareas ms importantes de cualquier administrador del sistema, es la de administrar adecuadamente usuarios y grupos, as como asignar y revocar permisos.

Herramientas de administracin de usuarios y grupos


La gestin de usuarios y grupos ha sido tradicionalmente tediosa, pero CentOS Linux posee algunas herramientas y convenciones que facilitan a los administradores su gestin. La forma ms fcil de manejar usuarios y grupos es a travs de la aplicacin
69 Ing. Ivn Ferreira

Administracin de usuarios

grfica Administrador de usuarios, system-config-users. Las siguientes herramientas de lnea de comandos tambin se pueden utilizar para manejar usuarios y grupos:

useradd, usermod y userdel Mtodos estndar de la industria para aadir, eliminar y modificar cuentas de usuarios.

groupadd, groupmod y groupdel Mtodos estndar de la industria para aadir, eliminar y modificar grupos de usuarios.

pwck, grpck Herramientas para la verificacin de contraseas, grupo y archivos shadow asociados.

pwconv, pwunconv Herramientas para la conversin a contraseas shadow y de vuelta a contraseas estndar.

Configuracin de usuarios desde la lnea de comandos


Si prefiere las herramientas de lnea de comandos o no tiene el sistema X Window instalado, use este captulo para configurar usuarios y grupos.

Aadir un usuario
Para aadir un usuario al sistema ejecute el comando useradd para crear una cuenta de usuario bloqueada: useradd <nombre_usuario> Desbloquee la cuenta ejecutando el comando passwd para asignar una contrasea y configurar el vencimiento de la misma: passwd <nombre_usuario>

Red Hat Certified Engineer

70

Administracin de usuarios

Las opciones de lnea de comandos ms comunes son: Opcin -c comentario -d home-dir -e fecha -f das Descripcin Comentario para el usuario Directorio principal a ser usado en vez del directorio predeterminado /home/nombre_usuario Fecha en que la cuenta ser desactivada usando el formato de fecha YYYY-MM-DD Nmero de das que pasarn despus que la contrasea ha caducado hasta que la cuenta se desactivar (Si se especifica 0, la cuenta ser desactivada inmediatamente despus que la contrasea expire. Si se especifica -1, la cuenta no se desactivar despus que la contrasea caduque.) Nombre o nmero del grupo para el grupo predeterminado del usuario (El grupo debe existir.) Lista de nombres de los grupos adicionales (adems del predeterminado), separados por comas, de los cuales el usuario es miembro (Los grupos deben existir.) Crea el directorio principal si no existe No crea el directorio principal No crea un grupo de usuario privado para el usuario Crea una cuenta de sistema con un UID menor que 500 y dentro del directorio principal. La contrasea encriptada con crypt Lnea de comando de conexin del usuario, predeterminada a /bin/bash ID de usuario, el cual debe ser nico y mayor que 499

-g nombre_grupo -G lista_grupos

-m -M -n -r -p contrasea -s -u uid

Aadir un grupo
Para agregar un grupo al sistema, use el comando groupadd:
groupadd <nombre_grupo>

Las opciones de lnea de comandos ms comunes son: Opcin -g gid Descripcin ID para el grupo, el cual debe ser nico y mayor que 499.

71

Ing. Ivn Ferreira

Administracin de usuarios

Opcin -r -f

Descripcin Crea un grupo de sistema con un GID menor que 500. Sale con un error si el grupo ya existe. (El grupo no es alterado.) Si se especifica -g y -f, pero el grupo ya existe, la opcin -g es ignorada.

Vencimiento de la contrasea
Para configurar el vencimiento de la contrasea para un usuario desde el intrprete de comandos, use el comando chage, seguido de una opcin: Opcin -m das Descripcin Especifica el nmero mnimo de das entre los cuales el usuario debe cambiar su contrasea. Si el valor es 0, la contrasea no caduca. Especifica el nmero mximo de das durante los cuales la contrasea es vlida. Cuando el nmero de das especificado por esta opcin ms el nmero de das especificado con la opcin -d es menor que el da actual, el usuario debe cambiar su contrasea antes de usar la cuenta. Especifica el nmero de das desde Enero 1, 1970 que la contrasea fu cambiada. Especifica el nmero de das inactivos despus de la expiracin de la contrasea antes de bloquear la cuenta. Si el valor es 0, la cuenta no es bloqueada despus que la contrasea caduca. Especifica la fecha en la cual la cuenta es bloqueada, en el formato YYYY-MM-DD. Tambin se puede usar el nmero de das transcurridos desde Enero 1, 1970 en lugar de la fecha. Especifica el nmero de das antes de la fecha de expiracin de la contrasea para advertir al usuario.

-M das

-d das -I das

-E fecha

-W das

Si el administrador del sistema desea que un usuario configure su contrasea la primera vez que ste se conecte, la contrasea del usuario puede ser configurada a que expire de inmediato, obligando al usuario a cambiarla inmediatamente despus de conectarse la primera vez.

El archivo /etc/passwd
El archivo /etc/passwd contiene la lista de usuarios en el sistema, una lnea por usuario. Es consultado cuando el usuario ingresa al sistema para determinar su
Red Hat Certified Engineer 72

Administracin de usuarios

UID; en muchos casos, podra contener tambin la contrasea encriptada, aunque la tendencia actual es retener la contrasea encriptada en otro archivo, /etc/shadow, con permisos de acceso ms restringidos. En este ltimo caso, el proceso de login consulta ambos archivos, /etc/passwd y /etc/shadow. Los campos de /etc/passwd y /etc/shadow estn separados por ":", al igual que la mayora de los archivos de configuracin en UNIX. Ejemplo de entradas en /etc/passwd:
root:x:0:0::/root:/bin/bash bin:x:1:1:bin:/bin: ftp:x:404:1::/home/ftp:/bin/bash daemon:x:2:2:daemon:/sbin:

El archivo /etc/passwd contiene los siguientes campos, de izquierda a derecha:

Nombre de login Contrasea encriptada Identificador del usuario (UID) Identificador de grupo primario (GID) Informacin de usuario (campo "GECOS") Se usa ahora, sin una sintaxis fija, para contener informacin del usuario. El comando finger interpreta este campo como una lista separada por comas conteniendo: 1) nombre en la vida real, 2) edificio y nmero de oficina, 3) telfono interno, 4) telfono domiciliario. El comando chfn permite al usuario cambiar su informacin propia.

El directorio HOME del usuario Shell o programa inicial.

73

Ing. Ivn Ferreira

Administracin de usuarios

El archivo /etc/group
El archivo /etc/group contiene los nombres de los grupos UNIX definidos en el sistema y una lista de sus miembros. Hay una lnea por cada grupo. Los campos estn separados por ":". Ejemplo de entradas en /etc/group:
root::0:root bin::1:root,bin,daemon daemon::2:root,bin,daemon sys::3:root,bin,adm adm::4:root,adm,daemo

Cada lnea contiene:

Nombre del grupo: algunos sistemas piden 8 caracteres o menos. Contrasea encriptada: histrico, no se usa. Nmero GID: nmero nico identificador del grupo. Lista de integrantes: nombres de usuarios de los integrantes del grupo separados por comas, sin blancos.

Grupos de usuario privado


CentOS Linux utiliza un esquema de grupo de usuario privado (UPG), lo que hace ms fcil de manejar los grupos de UNIX. Se crea un UPG siempre que se aade un nuevo usuario al sistema. Un UPG tiene el mismo nombre que el usuario para el cual se crea y ese usuario es el nico miembro de ese UPG. Los UPGs hacen que sea ms seguro configurar los privilegios por defecto para un nuevo archivo o directorio lo que permite a ambos, tanto el usuario como al grupo de ese usuario hacer modificaciones al archivo o directorio.
Red Hat Certified Engineer 74

Administracin de usuarios

El parmetro que determina qu permisos son aplicados a un nuevo archivo o directorio es llamado un umask y es configurado en el archivo /etc/bashrc. Tradicionalmente, en sistemas UNIX el umask es configurado a 022, lo que slo permite al usuario que crea el archivo o directorio realizar modificaciones. Bajo este esquema, todos los dems usuarios incluyendo miembros del grupo del creador no tienen derecho a realizar ninguna modificacin. Sin embargo, bajo el esquema UPG, esta "proteccin de grupo" no es necesaria puesto que cada usuario tiene su propio grupo privado.

Directorios de grupos
Muchas organizaciones de IT (del ingls Information Technologies) prefieren crear un grupo para cada proyecto importante y luego asignar personas al grupo si estos necesitan acceso a los archivos de ese proyecto. Usando este esquema tradicional, el manejo de archivos ha sido difcil pues cuando alguien crea un archivo, este es asociado con el grupo primario al cual pertenece. Cuando una persona individual trabaja en mltiples proyectos, se hace difcil asociar los archivos correctos con el grupo correcto. Usando el esquema UPG, sin embargo, los grupos son automticamente asignados a archivos creados dentro de un directorio con el bit SGID configurado, lo que hace muy simple el manejo de proyectos de grupos que comparten un directorio comn. Digamos, por ejemplo, que un grupo de personas trabajan con archivos en el directorio /datos/contabilidad/. Algunas personas son de confianza como para modificar el directorio, pero ciertamente no todos. Entonces primero cree un grupo contab, como se muestra en el siguiente comando:
# /usr/sbin/groupadd contab

Para poder asociar los contenidos del directorio con el grupo contab, escriba:
# chown -R root.contab /datos/contabilidad/

75

Ing. Ivn Ferreira

Administracin de usuarios

Ahora es posible aadir los usuarios adecuados al grupo con el comando gpasswd:
# /usr/bin/gpasswd -a <nombre_usuario> contab

Permita a los usuarios crear archivos dentro del directorio y configure el bit SGID, el cual asigna que todo lo que se cree en el directorio el mismo grupo del directorio padre (contab). Use el comando siguiente:
# chmod 2775 /datos/contabilidad

En este punto, puesto que cada usuario tiene por defecto su umask en 002, todos los miembros del grupo contab pueden crear y modificar archivos en el directorio / datos/contabilidad/ sin que el administrador tenga que cambiar los permisos de los archivos cada vez que un usuario escriba nuevos archivos.

Contraseas Shadow
En entornos multiusuario es muy importante utilizar contraseas shadow (proporcionadas por el paquete shadow-utils). Haciendo esto se mejora la seguridad de los archivos de autenticacin del sistema. Por esta razn, el programa de instalacin de CentOS Linux activa por defecto las contraseas shadow. Lo siguiente es una lista de las ventajas de las contraseas shadow sobre el mtodo antiguo de almacenar contraseas en los sistemas basados en UNIX.

Mejora la seguridad del sistema al mover las contraseas encriptadas desde el archivo /etc/passwd que puede leer todo el mundo, a /etc/shadow, el cual slo puede ser ledo por el usuario root.

Almacena informacin sobre la vigencias de las contraseas. Permite el uso del archivo /etc/login.defs para reforzar las polticas de seguridad.

La mayora de las utilidades proporcionadas por el paquete shadow-utils


Red Hat Certified Engineer 76

Administracin de usuarios

funcionan adecuadamente sin importar si las contraseas shadow estn activadas o no. Sin embargo, puesto que la informacin sobre la vigencia de las contraseas es almacenada exclusivamente en el archivo /etc/shadow, cualquier comando que cree o modifique la informacin sobre la vigencia de las contraseas, no funcionar. Abajo se muestra una lista de los comandos que no funcionan a menos que se activen las contraseas shadow:

chage gpasswd Las opciones /usr/sbin/usermod -e o -f Las opciones /usr/sbin/useradd -e o -f

El archivo /etc/shadow
El archivo /etc/shadow contiene una lnea por usuario y solo es visible por root. Provee adems informacin relativa a cambio de contraseas y expiracin de la cuenta. Ejemplo de entradas en /etc/shadow:
root:1eklLr8RdBuao:10461:0::::: bin:*:9797:0::::: ftp:*:9797:0::::: daemon:*:9797:0:::::

Contiene los siguientes campos:

Nombre de login: el mismo nombre que en /etc/passwd; Contrasea encriptada: bajo las mismas condiciones que en la contrasea encriptada es desplazada del
/etc/passwd /etc/passswd; /etc/shadow,

al

77

Ing. Ivn Ferreira

Administracin de usuarios

dejando en /etc/passwd una x en este campo.

Fecha de limo cambio de contrasea: registra la fecha en que el usuario cambi por ltima vez su contrasea.

Mnima cantidad de das entre cambios de contrasea: una vez cambiada una contrasea, el usuario no puede volver a cambiarla hasta que haya transcurrido esta cantidad de das como mnimo. No se recomienda fijar este valor; si ha habido una violacin de seguridad puede ser necesario cambiar la contrasea de inmediato, sin tener que esperar.

Mxima cantidad de das entre cambios de contrasea: obliga a los usuarios a cambiar su contrasea peridicamente. En Linux, este valor se suma al campo de inactividad antes de bloquear la cuenta.

Cantidad de das de adelanto para avisar expiracin de contrasea: avisa al usuario de la necesidad del cambio de contrasea, a partir de esta cantidad de das antes de la fecha lmite.

Cantidad de das de inactividad antes de expirar la cuenta: Linux, son das de gracia despus del mximo sin cambiar contrasea y antes de bloquear la cuenta.

Fecha de expira de la contrasea: da contado a partir del 1-1-1970, en que la cuenta expirar. Si el campo est en blanco, la cuenta no expira nunca. Si ha transcurrido esta fecha, el campo debe ser repuesto por el administrador para rehabilitar la cuenta.

Banderas: reservado para usos futuros.

Configuracin de la autenticacin
Para cambiar la configuracin de autenticacin despus de finalizar la instalacin, use el comando system-config-authentication, authconfig o authconfig-tui.
Red Hat Certified Engineer 78

Administracin de usuarios

Escriba el comando authconfig en la lnea de comandos. Si no es usuario root, se le pedir la contrasea root para continuar.

Mtodos de autenticacin
Las opciones de autenticacin que puede seleccionar son:

Habilitar contraseas MD5 le permite usar una contrasea larga (de hasta 256 caracteres), en vez de las ocho letras.

Habilitar contraseas shadow proporciona un mtodo seguro para conservar contraseas. Las contraseas se almacenan en /etc/shadow, al que tan slo se puede acceder como root.

Habilitar NIS le permite ejecutar un grupo de ordenadores en el mismo dominio Network Information Service con una contrasea comn y un fichero de grupo. Puede escoger desde las siguientes opciones:

Dominio NIS le permitir especificar el dominio o grupo de ordenadores al que pertenece su sistema.

Usar broadcast para encontrar el servidor NIS le permitir hacer un broadcast en su red local para encontrar el servidor NIS.

Servidor NIS hace que su ordenador utilice un servidor NIS especfico, en vez de enviar un broadcast a toda la red para encontrar el servidor NIS disponible.

Activar LDAP le dice a su ordenador que utilice LDAP para algunas o todas las autenticaciones. LDAP consolida ciertos tipos de informacin en el seno de su organizacin. Por ejemplo, todas las diferentes listas de usuarios que puede haber en la organizacin se pueden unir en un slo directorio LDAP.

Servidor LDAP le permite acceder a un servidor especfico (mediante su direccin IP) que est ejecutando el protocolo LDAP.

79

Ing. Ivn Ferreira

Administracin de usuarios

LDAP Base DN le permite buscar informacin acerca de los usuarios mediante su Distinguished Name (DN).

Usar TLS (Transport Layer Security) esta opcin permite a LDAP enviar informacin encriptada de nombres de usuario y contraseas al servidor LDAP antes de la autenticacin.

Activar Kerberos Kerberos es un sistema de seguridad que proporciona servicios de autentificacin en red. Puede elegir entre tres opciones:

Reino esta opcin le permite acceder a una red que utiliza Kerberos, compuesta por uno o varios servidores (tambin conocidos como KDCs) y un nmero potencialmente alto de usuarios.

KDC Esta opcin le permite acceder al Centro de Distribucin de Claves (Key Distribution Center, KDC), una mquina que emite tickets de Kerberos (a veces se llama tambin Ticket Granting Server o TGS).

Servidor de Administracin Esta opcin le permite acceder a un servidor que ejecute kadmind.

Activar la autenticacin SMB Configura PAM para usar un servidor SMB para la autenticacin de usuarios. Deber proporcionar dos tipos de informacin:

Servidor SMB Indica qu servidor SMB contactar su estacin de trabajo para la autenticacin.

Grupo de trabajo SMB Indica en qu grupo de trabajo estn los servidores SMB.

Red Hat Certified Engineer

80

Administracin de usuarios

81

Ing. Ivn Ferreira

5 Instalacin y gestin de paquetes

Instalacin y gestin de paquetes

Instalacin y gestin de paquetes


Gestin de paquetes
Todo el software en un sistema CentOS Linux est dividido en paquetes RPM los cuales pueden ser instalados, actualizados o eliminados. Esta parte describe como manejar los paquetes RPM en un sistema CentOS Linux usando herramientas grficas y de lnea de comandos. El Administrador de paquetes (RPM) es un sistema de empaquetado abierto que trabaja en CentOS Linux adems de otros sistemas Linux y UNIX y que est a la disposicin de cualquiera. CentOS, Inc. fomenta el uso de RPM por parte de otros vendedores para sus propios productos. RPM se puede distribuir bajo los trminos de GPL. RPM facilita las actualizaciones de sistema para el usuario final. Es posible instalar, desinstalar y actualizar paquetes RPM por medio de comandos breves. RPM mantiene una base de datos de los paquetes instalados y de sus archivos, y usted puede hacer consultas y verificaciones poderosas en su sistema. Si prefiere una interfaz grfica, puede utilizar la Herramienta de administracin de paquetes system-config-packages o pirut para ejecutar muchos comandos RPM. Durante las actualizaciones, RPM maneja cuidadosamente los archivos de configuracin para que usted nunca pierda sus modificaciones de personalizacin algo que no lograra hacer con archivos .tar.gz normales. RPM permite al desarrollador tomar el cdigo fuente del software y empaquetarlo en paquetes binarios y de fuente para los usuarios finales. Este proceso es bastante sencillo y se controla desde un nico archivo y parches opcionales creados por usted mismo. Esta clara delineacin de fuentes originarias y sus parches y las instrucciones de construccin facilitan el mantenimiento del paquete al ir apareciendo nuevas versiones del software.

83

Ing. Ivn Ferreira

Instalacin y gestin de paquetes

Metas de diseo RPM


Podra ser til conocer las metas de diseo de RPM para poder aprender a usar RPM:

Predisposicin a la actualizacin Al usar RPM es posible actualizar componentes individuales de su sistema sin tener que reinstalarlos completamente. Cuando obtenga una versin nueva de un sistema operativo basado en RPM (como CentOS Linux), no es necesario efectuar reinstalaciones en su mquina (como debe hacerse con sistemas operativos basados en otros sistemas de empaquetado). RPM permite actualizaciones inteligentes, in situ y completamente automatizadas en su sistema. Los archivos de configuracin en los paquetes se conservan no obstante las actualizaciones, y as no perder sus personalizaciones. No existen archivos de actualizacin especficos para actualizar un paquete porque se utiliza el mismo archivo RPM para instalar y actualizar el paquete en su sistema.

Consultas poderosas RPM fue ideado para proporcionar opciones de consulta poderosas. Se pueden efectuar bsquedas por toda su base de datos para encontrar un paquete o slo algn archivo. Tambin es posible averiguar a cual paquete pertenece un determinado archivo y de dnde proviene el paquete. Los archivos contenidos en el paquete RPM estn en un archivo comprimido, con un encabezado binario personalizado que contiene informacin til sobre el paquete y su contenido, permitindole consultar paquetes individuales rpida y sencillamente.

Verificacin de sistema Otra caracterstica poderosa es la de verificar paquetes. Si est preocupado porque borra un archivo importante para algn paquete, verifique el paquete. Se le notificar si hay anomalas. En este punto, puede reinstalar el paquete si es necesario. Cualquier archivo de configuracin que haya modificado ser preservado durante la reinstalacin.

Fuentes originarias Un objetivo crucial ha sido el de permitir el uso de fuentes de software originario, tal y como ha sido distribuido por los autores

Red Hat Certified Engineer

84

Instalacin y gestin de paquetes

originales del software. Con RPM tendr las fuentes originarias junto con cualquier parche que haya sido usado adems de las instrucciones de construccin completas. Esta es una ventaja importante por varios motivos. Si por ejemplo sale una versin nueva de un programa, no necesariamente necesita empezar desde cero para que se compile. Puede revisar el parche para ver lo que tal vez necesitara hacer. Usando esta tcnica se ven fcilmente todos los elementos predeterminados y compilados en el programa y todos los cambios que se le han hecho al software para construir adecuadamente. El objetivo de mantener las fuentes originarias podr parecer importante slo para los desarrolladores, pero el resultado tambin sera software de ms alta calidad para los usuarios finales. Quisiramos dar las gracias a la gente de distribucin de BOGUS por haber ideado el concepto de la fuente originaria.

Instalacin de paquetes RPM


Los paquetes RPM normalmente tienen nombres de archivo como foo-1.01.i386.rpm. El nombre de archivo incluye el nombre de paquete ( foo), versin (1.0), lanzamiento (1) y arquitectura (i386). La instalacin de un paquete es tan simple como teclear el siguiente comando en el intrprete de comandos de shell:
# rpm -ivh foo-1.0-1.i386.rpm

Si la instalacin es correcta ver lo siguiente:


Preparing... 1:foo ########################################### [100%] ########################################### [100%]

Como podr ver, RPM imprime el nombre del paquete y luego imprime una serie de smbolos de numeral (#) mientras se instala el paquete como una especie de medidor de progreso.

La firma del paquete se autentica en el momento de la instalacin o de la


85 Ing. Ivn Ferreira

Instalacin y gestin de paquetes

actualizacin del paquete. Si la verificacin de la firma falla, ver el siguiente mensaje de error:
error: V3 DSA signature: BAD, key ID 0352860f

Si se trata de una nueva firma en el cabezal, ver el siguiente error:


error: Header V3 DSA signature: BAD, key ID 0352860f

Si no tiene instalada la clave apropiada para verificar la firma, el mensaje dir NOKEY y ser como lo siguiente:
warning: V3 DSA signature: NOKEY, key ID 0352860f

Paquete ya instalado
Si ya est instalado un paquete de la misma versin, ver:
Preparing... ########################################### [100%] package foo-1.0-1 is already installed

Si desea instalar el paquete de todos modos y la versin que est intentando instalar ya est instalada, podr usar la opcin --replacepkgs, la cual le dir a RPM que ignore el error:
# rpm -ivh --replacepkgs foo-1.0-1.i386.rpm

Esta opcin es til si se borraron los archivos instalados del RPM o si desea que se instalen los archivos de configuracin originales del RPM.

Archivos en conflicto
Si intenta instalar un paquete que contiene un archivo que ya ha sido instalado por otro paquete o una versin ms antigua del mismo paquete, ver lo siguiente:
Preparing... ########################################### [100%] file /usr/bin/foo from install of foo-1.0-1 conflicts with file from package bar-2.0.20

Para hacer que RPM ignore este error, use la opcin --replacefiles:

Red Hat Certified Engineer

86

Instalacin y gestin de paquetes


# rpm -ivh --replacefiles foo-1.0-1.i386.rpm

Dependencias no resueltas
Los paquetes RPM pueden "depender" de otros paquetes, lo cual significa que requieren de la instalacin de otros paquetes para poder ejecutarse adecuadamente. Si intenta instalar un paquete que tiene una dependencia no resuelta, ver lo siguiente:
Preparing... ########################################### [100%] error: Failed dependencies: bar.so.2 is needed by foo-1.0-1 Suggested resolutions: bar-2.0.20-3.i386.rpm

Si est instalando un paquete oficial de CentOS, se le sugerir resolver la dependencia de este paquete. Encuentre este paquete en los CD-ROMs de CentOS Linux o en el sitio FTP (o espejo) y adalo al comando:
# rpm -ivh foo-1.0-1.i386.rpm bar-2.0.20-3.i386.rpm

Si se realiza la instalacin correctamente, ver lo siguiente:


Preparing... 1:foo 2:bar ########################################### [100%] ########################################### [ 50%] ########################################### [100%]

Si desea forzar la instalacin de todas maneras (no es una buena idea ya que el paquete no funcionar correctamente), use la opcin nodeps. Para resolver las dependencias, es preferible utilizar el comando yum para instalar los paquetes y configurar un repositorio local. El archivo /etc/yum.repos.d/CentOS-Media.repo permite configurar un repositorio local a partir del DVD de instalacin.

Desinstalacin
Desinstalar un paquete es tan simple como instalarlo. Teclee el siguiente comando en el intrprete de comandos de la shell:

87

Ing. Ivn Ferreira

Instalacin y gestin de paquetes


# rpm -e foo

Podra encontrarse con un error de dependencia cuando est desinstalando un paquete si otro paquete instalado depende del que est tratando de eliminar. Por ejemplo:
Preparing... ########################################### [100%] error: removing these packages would break dependencies: foo is needed by bar-2.0.20-3.i386.rpm

Para hacer que RPM ignore este error y desinstale el paquete de todos modos (que tampoco es buena idea ya que al hacerlo, el paquete que depende de l probablemente dejar de funcionar correctamente), use la opcin --nodeps.

Actualizacin
Actualizar un paquete es parecido a instalarlo. Teclee el siguiente comando en un intrprete de comandos de la shell:
# rpm -Uvh foo-2.0-1.i386.rpm

Lo que no se ve arriba es que RPM ha desinstalado automticamente cualquier versin antigua del paquete foo. De hecho, tal vez desee usar -U siempre para instalar paquetes, ya que funcionar aunque no haya versiones precedentes del paquete instaladas. Ya que RPM lleva a cabo la actualizacin inteligente de paquetes con archivos de configuracin, tal vez vea un mensaje como el siguiente:
saving /etc/foo.conf as /etc/foo.conf.rpmsave

Este mensaje significa que los cambios hechos al archivo de configuracin podran no ser "compatibles" con el archivo de configuracin nuevo en el paquete, as que RPM ha almacenado su archivo original y ha instalado uno nuevo. Debera averiguar cules son las diferencias entre los dos archivos de configuracin y resuelva el problema tan pronto como le sea posible para asegurarse que su sistema contine funcionando correctamente.
Red Hat Certified Engineer 88

Instalacin y gestin de paquetes

La actualizacin es en realidad una combinacin de las actividades de desinstalacin e instalacin, as que durante una actualizacin RPM, podr encontrar errores de desinstalacin e instalacin, adems de cualquier otro tipo de error. Si RPM cree que usted est tratando de actualizar a un nmero de versin de paquete ms antiguo, aparecer lo siguiente:
package foo-2.0-1 (which is newer than foo-1.0-1) is already installed

Para hacer que RPM "actualice" de todos modos, use la opcin --oldpackage:
rpm -Uvh --oldpackage foo-1.0-1.i386.rpm

Refrescamiento
Refrescar un paquete es parecido a actualizarlo. Teclee el siguiente comando en un intrprete de comandos shell:
# rpm -Fvh foo-1.2-1.i386.rpm

La opcin de refrescamiento RPM compara las versiones de los paquetes especificados en la lnea de comandos con las versiones de los paquetes que ya han sido instalados en su sistema. Cuando la opcin de refrescamiento de RPM elabora una versin ms reciente de un paquete ya instalado, ste ser actualizado a la versin ms reciente. Sin embargo, la opcin de refrescamiento de RPM no instalar un paquete si no existe un paquete previamente instalado del mismo nombre. Esto no es igual a la opcin de actualizacin de RPM, ya que una actualizacin s instalar paquetes, no importa si ya est instalada una versin ms antigua de un paquete. La opcin de refrescamiento de RPM funciona ya sea para paquetes individuales que para un grupo de paquetes. Si usted acaba de descargar una gran cantidad de paquetes diferentes y slo desea actualizar los paquetes que ya estaban instalados en su sistema, la solucin es el refrescamiento. Si utiliza la opcin de refrescamiento, antes de usar RPM no tendr que eliminar ningn paquete indeseado del grupo que ha descargado.

89

Ing. Ivn Ferreira

Instalacin y gestin de paquetes

En este caso, puede ejecutar el comando siguiente:


# rpm -Fvh *.rpm

RPM actualizar automticamente slo los paquetes que ya estn instalados.

Consultas
Use el comando rpm -q para hacer consultas a la base de datos de los paquetes instalados. El comando rpm -q foo imprimir el nombre de paquete, versin y nmero de lanzamiento del paquete foo instalado:
foo-2.0-1

En vez de especificar el nombre del paquete, se pueden usar las siguientes opciones con -q para especificar lo(s) paquete(s) que desea consultar. Se llaman Opciones de especificacin de paquetes: Opcin -a Descripcin Consulta todos los paquetes actualmente instalados.

-f <archivo> Consultar el paquete que posea <archivo>. Cuando especifique un archivo, deber especificar la ruta completa del archivo (/usr/bin/ls, por ejemplo). -p <paquete> Consulta un paquete rpm no instalado. Debe especificar la ruta al archivo rpm.

Hay varias maneras de especificar qu informacin mostrar sobre los paquetes consultados. Las siguientes opciones sirven para seleccionar el tipo de informacin que usted est buscando. Se llaman Opciones de seleccin de informacin. Opcin -i Descripcin Muestra informacin del paquete como el nombre, la descripcin, la versin, el tamao, la fecha de construccin, la

Red Hat Certified Engineer

90

Instalacin y gestin de paquetes

Opcin miscelnea. -l -s -d

Descripcin fecha de instalacin, el distribuidor, y otra informacin

Muestra la lista de archivos contenidos en el paquete. Muestra el estado de todos los archivos en el paquete. Muestra una lista de archivos marcados como documentacin (pginas de manual, pginas de informacin, archivos LAME, etc.).

-c

Muestra una lista de archivos marcados como archivos de configuracin. Estos son los archivos que usted cambia despus de la instalacin para adaptar el paquete a su sistema.

Para acceder a opciones que muestran listas de archivos, puede aadir -v al comando para que muestre las listas en un formato ls -l conocido.

Verificacin
La verificacin de un paquete tiene que ver con comparar la informacin sobre archivos instalados de un paquete con la misma informacin del paquete original. Entre otras cosas, la verificacin compara el tamao, la suma MD5, los permisos, el tipo, el dueo y el grupo de cada archivo. El comando rpm -V verifica un paquete. Usted puede utilizar cualquiera de las Opciones de seleccin de paquete de la lista para pedir que se especifiquen los paquetes que desea verificar. Un modo sencillo de verificar es rpm -V foo, que verifica si todos los archivos en el paquete foo se encuentran en el mismo estado en que estaban cuando originalmente fueron instalados. Por ejemplo: Para verificar un paquete que contiene un determinado archivo:
91 Ing. Ivn Ferreira

Instalacin y gestin de paquetes


# rpm -Vf /bin/vi

Para verificar TODOS los paquetes instalados:


# rpm -Va

Para verificar un paquete instalado contra un archivo de paquete RPM


# rpm -Vp foo-1.0-1.i386.rpm

Este comando puede ser til si sospecha que sus bases de datos de RPM estn daadas. Si todo fue verificado correctamente, no habr salida. Si se encuentran discrepancias, sern mostradas. El formato de la salida es una cadena de ocho caracteres (una c identifica un archivo de configuracin) seguido por el nombre del archivo. Cada uno de los ocho caracteres seala el resultado de una comparacin entre un atributo del archivo al valor de ese atributo escrito en la base de datos de RPM. Un slo . (punto) significa que ha pasado la prueba. Los siguientes caracteres sealan que ciertas pruebas no han sido pasadas: Prueba 5 S L T D U G M ? MD5 suma de verificacin Tamao del archivo Enlace simblico Hora de modificacin de archivo Dispositivo Usuario propietario Grupo propietario Modo Archivo que no se puede leer Descripcin

Si ve alguna salida, use su buen juicio para determinar si debera quitar o reinstalar el paquete o resolver el problema de otra manera.

Red Hat Certified Engineer

92

Instalacin y gestin de paquetes

Verificando la firma del paquete


Si desea verificar si algn paquete ha sido daado o alterado examine slo la suma md5 tecleando el siguiente comando en un intrprete de comandos de shell (sustituya <archivo-rpm> con el nombre de archivo de su paquete):
# rpm -K --nosignature <archivo-rpm>

Aparecer el mensaje <archivo-rpm>: md5 OK. Este breve mensaje significa que el archivo no ha sido daado al momento de la descarga. Si desea un mensaje ms detallado, reemplace -K por -Kvv en el comando. Por otra parte, cunto es de fiable el desarrollador que cre el paquete? Si el paquete est firmado con la clave GnuPG del desarrollador, sabr que el desarrollador de verdad es quien dice ser. Se puede firmar un paquete RPM usando la Gnu Privacy Guard (o GnuPG), para ayudarle a asegurarse que el paquete descargado es de fiar. GnuPG es una herramienta para comunicacin segura; reemplaza completa y gratuitamente la tecnologa de encriptacin de PGP, un programa electrnico de privacidad. Con GnuPG usted puede autentificar la validez de los documentos y encriptar/descifrar datos de y hacia otros destinatarios. Durante la instalacin de CentOS Linux, GnuPG est instalado por defecto. De este modo podr usar inmediatamente GnuPG para verificar cualquier paquete que reciba desde CentOS. En primer lugar necesitar importar la clave pblica privada de CentOS.

Importar claves
Para verificar los paquetes de CentOS tiene que importar las claves de GPG de CentOS. Para ello, ejecute el siguiente comando en el intrprete de comandos de la shell:
# rpm --import /usr/share/rhn/RPM-GPG-KEY

93

Ing. Ivn Ferreira

Instalacin y gestin de paquetes

Para ver la lista de todas las claves instaladas para la verificacin de RPM, ejecute el comando:
# rpm -qa gpg-pubkey*

Para la clave de CentOS, la salida incluye:


gpg-pubkey-db42a60e-37ea5438

Para mostrar ms detalles sobre una clave determinada, use rpm -qi seguido de la salida del anterior comando:
# rpm -qi gpg-pubkey-db42a60e-37ea5438

Verificacin de la firma de paquetes


Para controlar la firma GnuPG de un archivo RPM despus de importar la clave del constructor GnuPG, use el siguiente comando (sustituya <archivo-rpm> con el nombre de archivo de su paquete RPM):
# rpm -K <archivo-rpm>

Si todo va bien, ver el siguiente mensaje: no est daado.

md5 gpg OK.

Esto significa que el paquete

Tcnicas de uso de rpm


RPM es una herramienta til ya sea para administrar su sistema que para diagnosticar y solucionar problemas. La mejor manera de comprender todas sus opciones es viendo algunos ejemplos. Tal vez usted haya borrado algunos archivos accidentalmente, pero no est seguro de lo que ha eliminado. Si desea verificar su sistema entero y ver lo que podra hacer falta, podra intentarlo con el siguiente comando:
# rpm -Va

Si faltan algunos archivos o parecen daados, probablemente debera o reinstalar


Red Hat Certified Engineer 94

Instalacin y gestin de paquetes

el paquete o desinstalarlo y luego reinstalarlo. Tal vez alguna vez ver un archivo que no reconoce. Para saber a qu paquete pertenece, tecleara:
# rpm -qf /usr/X11R6/bin/ghostview

La salida es parecida a lo siguiente:


gv-3.5.8-22

Podemos combinar los dos ejemplos de arriba en la siguiente hiptesis. Digamos que est teniendo problemas con /usr/bin/paste. Le gustara verificar el paquete al cual pertenece ese programa, pero no sabe a cul paquete pertenece paste. Simplemente teclee el siguiente comando:
# rpm -Vf /usr/bin/paste

y se verificar el paquete correcto. Desea encontrar ms informacin sobre un determinado programa? Puede intentar el siguiente comando para localizar la documentacin que acompaaba el paquete al cual pertenece ese programa.
# rpm -qdf /usr/bin/free

La salida debera ser parecida a la siguiente:


/usr/share/doc/procps-2.0.11/BUGS /usr/share/doc/procps-2.0.11/NEWS /usr/share/doc/procps-2.0.11/TODO /usr/share/man/man1/free.1.gz /usr/share/man/man1/oldps.1.gz /usr/share/man/man1/pgrep.1.gz /usr/share/man/man1/pkill.1.gz /usr/share/man/man1/ps.1.gz /usr/share/man/man1/skill.1.gz /usr/share/man/man1/snice.1.gz /usr/share/man/man1/tload.1.gz /usr/share/man/man1/top.1.gz /usr/share/man/man1/uptime.1.gz /usr/share/man/man1/w.1.gz

95

Ing. Ivn Ferreira

Instalacin y gestin de paquetes


/usr/share/man/man1/watch.1.gz /usr/share/man/man5/sysctl.conf.5.gz /usr/share/man/man8/sysctl.8.gz /usr/share/man/man8/vmstat.8.gz

Podra encontrar un RPM nuevo y no saber para qu sirve. Para encontrar informacin sobre l, use el siguiente comando:
# rpm -qip crontabs-1.10-5.noarch.rpm

La salida es parecida a lo siguiente:


Name : crontabs Relocations: (not relocateable) Version : 1.10 Vendor: CentOS, Inc. Release : 5 Build Date: Fri 07 Feb 2003 04:07:32 PM EST Install date: (not installed) Build Host: porky.devel.centos.org Group : System Environment/Base Source RPM: crontabs-1.10-5.src.rpm Size : 1004 License: Public Domain Signature : DSA/SHA1, Tue 11 Feb 2003 01:46:46 PM EST, Key ID fd372689897da07a Packager : CentOS, Inc. Summary : Root crontab files used to schedule the execution of programs. Description : The crontabs package contains root crontab files. Crontab is the program used to install, uninstall, or list the tables used to drive the cron daemon. The cron daemon checks the crontab files to see when particular commands are scheduled to be executed. If commands are scheduled, then it executes them.

Quizs desea ver qu archivos instala el RPM crontabs. Ingrese lo siguiente:


# rpm -qlp crontabs-1.10-5.noarch.rpm

La salida ser de la siguiente manera:


/etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/cron.weekly /etc/crontab /usr/bin/run-parts

Estos son solamente algunos ejemplos. Al usarlo, descubrir muchos ms usos para RPM.

Red Hat Certified Engineer

96

Instalacin y gestin de paquetes

Yellowdog Updater Modified (YUM)


Yum es un actualizador automatico y administrador de paquetes para sistemas basados en rpm. Yum provee:

Multiples repositorios. Archivo simple de configuracion. Calculo correcto de dependencias. Interfaz simple.

Configuracin de YUM
Antes de utilizar yum y para obtener el potencial total de yum, debemos importar la clave GPG de CentOS. Para seguridad adicional, todos los paquetes del proyecto CentOS son firmados con la clave pblica. Si intenta realizar una actualizacin sin importar la clave, vera lo siguiente:
# yum update You have enabled checking of packages via GPG keys. This is a good thing. However, you do not have any GPG public keys installed. You need to download the keys for packages you wish to install and install them. You can do that by running the command: rpm --import public.gpg.key For more information contact your distribution or package provider.

La clave GPG de CentOS ha sido instalado en el sistema durante la instalacin inicial, de tal forma que importar la clave es un proceso simple:
# rpm --import /usr/share/{rhn,rpm-*}/RPM-GPG-KEY # rpm --import /usr/share/doc/centos-*/RPM-GPG-KEY

Ahora el comando yum update se ejecutar correctamente. Es importante conocer como agregar repositorios de terceros quienes pueden ofrecer paquetes no disponibles directamente desde el proyecto CentOS. El archivo
97 Ing. Ivn Ferreira

Instalacin y gestin de paquetes

de configuracin por defecto es

/etc/yum.conf, el cual contiene la seccin

[main], y toda la informacin de los repositorios est almacenada en los archivos /etc/yum.repos.d como archivos .repo. La configuracin por defecto utiliza los siguientes sitios mirror:
# cat /etc/yum.repos.d/CentOS-Base.repo [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=os #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 priority=1 protect=1

#released updates [update] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=updates #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 priority=1 protect=1 #packages used/produced in the build but not released [addons] name=CentOS-$releasever - Addons mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=addons #baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 priority=1 protect=1 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=extras #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4

Red Hat Certified Engineer

98

Instalacin y gestin de paquetes


priority=1 protect=1 enabled=1 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=centosplus #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 priority=2 protect=1 #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib mirrorlist=http://mirrorlist.centos.org/? release=$releasever&arch=$basearch&repo=contrib #baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4 priority=2 protect=1

El archivo Centos-Media.repo permite configurar un repositorio local a partir del DVD de instalacin.
# cat /etc/yum.repos.d/CentOS-Media.repo [c4-media] name=CentOS-$releasever - Media baseurl=file:///media/cdrom/ file:///media/cdrecorder/ gpgcheck=1 enabled=0 gpgkey=file:///usr/share/doc/centos-release-4/RPM-GPG-KEY-centos4

La configuracin debera modificarse para utilizar sitios mirror que se encuentren geogrficamente mas cerca o sean mas rpidos. Fjese en los sitios mirror para los paquetes base y updates y seleccione el mas apropiado. Las variables $releasever y $basearch son reemplazadas por la versin de Linux y arquitectura utilizada respectivamente.
99 Ing. Ivn Ferreira

Instalacin y gestin de paquetes

El fuerte de yum es la facilidad con la que puede agregar repositorios de terceros. Para agregar un repositorio, simplemente agregue archivos .repo. He aqu unos archivos de configuracin para unos repositorios comunes:
# cat /etc/yum.repos.d/Extras.repo [dries] name=Extra CentOS rpms dries - $releasever - $basearch baseurl=http://ftp.belnet.be/packages/dries.ulyssis.org/redhat/el$releasever/en/ $basearch/dries/RPMS/ enabled=1 gpgcheck=0 [rpmforge] name = CentOS $releasever - RPMforge.net - dag mirrorlist = http://apt.sw.be/redhat/el$releasever/en/mirrors-rpmforge enabled = 1 protect = 0 gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag gpgcheck = 1 [kbs-CentOS-Extras] name=CentOS.Karan.Org-EL$releasever - Stable gpgcheck=1 gpgkey=http://centos.karan.org/RPM-GPG-KEY-karan.org.txt enabled=1 baseurl=http://centos.karan.org/el$releasever/extras/stable/$basearch/RPMS/

La opcin enabled habilita el repositorio, la opcin gpgcheck debera ser deshabilitada a menos que se cuente con la clave pblica del sitio de descarga.

Utilizacin de YUM
Lo primero es actualizar la cabecera de rpms desde el repositorio.
# yum makecache

Para verificar las actualizaciones existentes ejecute:


# yum check-update

Para actualizar todo el sistema ejecute:


# yum update

Red Hat Certified Engineer

100

Instalacin y gestin de paquetes

Para actualizar un paquete especifico ejecute:


# yum update <paquete>

Para instalar un paquete que no tiene actualmente ejecute:


# yum install <paquete>

Para buscar un paquete puede utilizar el comando:


# yum search <texto_de_busqueda>

Suponiendo que una dependencia solicite una biblioteca que no es un paquete en si, como libc6.1-1.so.2, como lo obtiene? Ejecute:
# yum provides libc6.1-1.so.2

Para desinstalar un paquete ejecute:


# yum remove <paquete>

Para eliminar paquetes en cache que son viejos y cabeceras no necesarias ejecute el comando:
# yum clean all

Para obtener informacion de un paquete ejecute el comando:


# yum info <paquete>

101

Ing. Ivn Ferreira

Instalacin y gestin de paquetes

Creacin de un repositorio yum local


Si se tienen varias computadoras que deben ser actualizadas va yum, entonces debera considerar la creacin de un repositorio local yum. Esto no solo conserva ancho de banda, sino mejora la respuesta de yum para instalar programas adicionales. Adems, la ejecucin de yum a travs de LAN en lugar de WAN es mucho mas rpida. La desventaja es que probablemente este descargando actualizaciones no necesarias para sus mquinas.

Creacin del repositorio base para YUM


Para crear un repositorio local yum, necesitar un servidor Web. La configuracin por defecto proporcionada con CentOS es suficiente. Cree una carpeta yum en el directorio especificado como DocumentRoot en el archivo de configuracin del Apache, /etc/httpd/conf/httpd.conf. Por defecto es /var/www/html:
# mkdir /var/www/html/yum

Ahora, puede crear una estructura de directorios para almacenar los archivos. Yum soporta mltiples repositorios, de tal forma que puede actuar como servidor para cualquier versin de CentOS en el mismo servidor. La estructura utilizada para almacenar los archivos ser:
/var/www/html/yum/CentOS/<version>/base

Siendo <version> un nmero entero correspondiente con la versin de CentOS utilizada. Copie el contenido de cada CD de CentOS al directorio base.
# cp /media/cdrom/CentOS/RPMS/*.rpm /var/www/html/yum/CentOS/<version>/base

Ahora debe crear el archivo de metadatos XML para el repositorio, para ello necesitar el paquete createrepo.

Red Hat Certified Engineer

102

Instalacin y gestin de paquetes


# yum install createrepo

Para crear el archivo de metadatos XML para el directorio de RPMS base ejecute:
# createrepo /var/www/html/yum/CentOS/<version>/base

Si el comando se ejecuta correctamente, los archivos de metadatos sern creados en un directorio llamado /var/www/html/yum/CentOS/<version>/base/repodata.

Creacin del repositorio updates para YUM


El tener su propio repositorio base es excelente para la instalacin de software, pero puede sacar provecho de tener su propio repositorio de actualizaciones. La creacin de uno es tan fcil como la creacin de un directorio base. La estructura para el directorio de actualizaciones ser:
/var/www/html/yum/CentOS/updates/<version>/

Luego, obtenga una copia de las actualizaciones, las cuales pueden ser obtenidas de cualquier servidor de descarga de archivos de CentOS, o algn mirror listado en http://www.centos.org/modules/tinycontent/index.php?id=13. rsync. Puede crear una tarea cron para mantener actualizado el repositorio updates. Luego de descargar todos los paquetes a la carpeta updates, ejecute nuevamente el comando createrepo para generar los metadatos XML.
# createrepo /var/www/html/yum/CentOS/updates/<version>/

Existen

servidores

identificados como rsync. Para descargar los archivos, puede utilizar el comando

Si el comando se ejecuta correctamente, los archivos de metadatos sern creados en un directorio llamado /var/www/html/yum/CentOS/updates/<version>/ repodata. Una vez creados los repositorios asegrese de iniciar el servicio httpd:
103 Ing. Ivn Ferreira

Instalacin y gestin de paquetes


# service httpd start

Configuracin de los equipos para utilizar el repositorio YUM local


Una vez creado el repositorio yum, es necesario indicar a los equipos que lo utilicen. Esto se hace configurando el archivo /etc/yum.repos.d/local.repo:
[base] name=CentOS $releasever - $basearch - Base baseurl=http://nombre_servidor/CentOS/$releasever/base/

Luego configure el archivo /etc/yum.repos.d/local-updates.repo


[updates-released] name=CentOS $releasever - $basearch - Released Updates baseurl=http://nombre_servidor/CentOS/updates/$releasever/

Ahora, simplemente ejecute el comando yum update para actualizar los sistemas. Si comparte los archivos a travs de NFS, no necesita un servidor web para actuar como repositorio, puede configurar yum para que utilice el repositorio via NFS, utilizando como protocolo file://, por ejemplo, el archivo /etc/yum.repos.d/ local_nfs.repo sera como sigue:
[base] name=CentOS $releasever - $basearch - Base baseurl=file:///recurso_nfs/CentOS/$releasever/base/

El archivo /etc/yum.repos.d/local_nfs-updates.repo sera como sigue


[updates-released] name=CentOS $releasever - $basearch - Released Updates baseurl=file:///recurso_nfs/CentOS/updates/$releasever/

Red Hat Certified Engineer

104

6 Configuracin de impresoras

Configuracin de impresoras

Configuracin de impresoras
La Herramienta de configuracin de impresoras permite a los usuarios configurar una impresora en CentOS Linux. Esta herramienta ayuda a mantener el archivo de configuracin de la impresora, los directorios spool y los filtros de impresin. En CentOS Linux, CUPS es el sistema de impresin predeterminado. Para usar la Herramienta de configuracin de impresoras debe tener privilegios como root. Para iniciar la aplicacin, escriba el comando system-configprinter. Este comando determina automticamente si ejecutar la versin grfica o la versin basada en texto dependiendo de si el comando es ejecutado desde el ambiente grfico X Window o desde una consola basada en texto. CUPS adems proporciona una interfaz web para la gestin de colas e impresoras. Para acceder a la interfaz de administracin, utilizando un navegador web conctese al URL http://localhost:631. Tambin proporciona la herramienta por lnea de comandos lpadmin. Para configurar manualmente las impresoras, debe conocer el URI (Uniform Resource Identifier) el cual consiste de un back-end y parmetros. Se pueden configurar los siguientes tipos de colas de impresin:

Conectada-localmente

una

impresora

directamente

conectada

al

computador a travs de un puerto paralelo o USB. El URI de una impresora conectada al puerto paralelo sera parallel:/dev/lp0 y el URI de una impresora conectada al puerto USB sera usb:/dev/usb/lp0.

Conectada CUPS (IPP) una impresora conectada a un sistema CUPS diferente que puede ser accedida sobre una red TCP/IP (por ejemplo, una impresora conectada a otro sistema CentOS Linux corriendo CUPS en la red). El URI de una impresora accedida a travs del protocolo IPP sera ipp://nombre_host/printers/impresora.

Red Hat Certified Engineer

106

Configuracin de impresoras

Conectada UNIX (LPD) una impresora conectada a un sistema UNIX diferente que puede ser accedida sobre una red TCP/IP (por ejemplo, una impresora conectada a otro sistema CentOS Linux corriendo LPD en la red). El URI de una impresora accedida a travs del protocolo LPD sera lpd:// nombre_host/impresora.

Conectada Windows (SMB) una impresora conectada a un sistema diferente el cual est compartiendo una impresora sobre una red SMB (por ejemplo, una impresora conectada a una mquina Microsoft Windows. El URI de una impresora accedida a travs del protocolo SMB sera smb://usuario:contrasea@nombre_host/impresora smb://nombre_host/impresora. o

Conectada JetDirect una impresora conectada directamente a la red a travs de HP JetDirect en vez de a un computador. El URI de una impresora accedida a travs de JetDirec sera socket://nombre_host:9100.

Aadir una impresora local


Para aadir una impresora local, tal como una conectada al puerto paralelo o USB en su computador, haga clic el botn Nueva Impresora en la ventana principal de la Herramienta de configuracin de impresoras. Haga clic en Siguiente para proceder. Introduzca un nombre nico para la impresora en el campo de texto Nombre de impresora. El nombre de la impresora no puede contener espacios y debe comenzar con una letra. El nombre de la impresora puede contener letras, nmeros, guiones (-), y rayas (_). Opcionalmente, introduzca una descripcin corta para la impresora, la cual puede contener espacios y la ubicacin. Haga clic en el botn Adelante. Seleccione el tipo de conexin de la impresora de la lista Seleccione Conexin. El prximo paso es seleccionar el tipo de impresora.
107 Ing. Ivn Ferreira

Configuracin de impresoras

Aadir una impresora IPP


Una impresora de red IPP es una impresora conectada a un sistema Linux diferente en la misma red ejecutando CUPS o una impresora configurada para usar IPP en otro sistema operativo. Por defecto, la Herramienta de configuracin de impresoras navega la red en busca de impresoras compartidas IPP. Si tiene un cortafuegos (firewall) configurado en el servidor de impresin, este debe ser capaz de enviar y recibir conexiones en el puerto de entrada UDP 631. Si tiene un cortafuegos configurado en el cliente (la computadora enviando la peticin de impresin), se le debe permitir enviar y aceptar conexiones en el puerto 631. Introduzca un nombre nico para la impresora en el campo de texto Nombre de impresora. El nombre de la impresora no puede contener espacios y debe comenzar con una letra. El nombre de la impresora puede contener letras, nmeros, guiones (-), y rayas (_). Opcionalmente, introduzca una descripcin corta para la impresora, la cual puede contener espacios. Despus de hacer clic en Adelante. Seleccione Internet Printing Protocol (ipp) de la lista Seleccione Conexin. Aparecen los campos de texto para las opciones siguientes:

Nombre de Equipo El nombre de la mquina o direccin IP de la mquina remota a la cual la impresora est conectada.

Nombre de la impresora El nombre de la impresora compartida en la mquina remota. Ej. hp2100.

Aadir una impresora UNIX (LPD) remota


Para agregar una impresora UNIX remota, tal como una conectada a un sistema Linux diferente en la misma red, haga clic en el botn Nueva impresora en la ventana principal de la Herramienta de configuracin de impresoras.

Red Hat Certified Engineer

108

Configuracin de impresoras

Introduzca un nombre nico para la impresora en el campo de texto Nombre de impresora.. El nombre de la impresora no puede contener espacios y debe comenzar con una letra. El nombre de la impresora puede contener letras, nmeros, guiones (-), y rayas (_). Opcionalmente, introduzca una descripcin corta para la impresora, la cual puede contener espacios. Seleccione LPR/LPD Host or Printer de la lista Seleccione Conexin. Aparecen los campos de texto para las opciones siguientes:

Nombre de Equipo El nombre de la mquina o direccin IP de la mquina remota a la cual la impresora est conectada.

Nombre de la impresora El nombre de la impresora compartida en la mquina remota. Ej. lp.

Haga clic en Adelante para continuar. El prximo paso es seleccionar el tipo de impresora.

Aadir una impresora Samba (SMB)


Para aadir una impresora que es accedida usando el protocolo SMB (tal como una impresora conectada a un sistema Microsoft Windows), haga clic en el botn Nueva impresora en la ventana principal de la Herramienta de configuracin de impresoras. Introduzca un nombre nico para la impresora en el campo de texto Nombre de impresora.. El nombre de la impresora no puede contener espacios y debe comenzar con una letra. El nombre de la impresora puede contener letras, nmeros, guiones (-), y rayas (_). Opcionalmente, introduzca una descripcin corta para la impresora, la cual puede contener espacios. Seleccione Windows Printer via SAMBA de la lista Seleccione Conexin.

109

Ing. Ivn Ferreira

Configuracin de impresoras

Las impresoras SMB son detectadas automticamente y listadas en la columna Compartir. Si la impresora que busca no se encuentra en la lista, ingrese la direccin SMB en el campo smb://. Utilice el formato equipo/impresora, por ejemplo pc01/hplj01. En el campo Nombre de usuario ingrese el nombre de usuario con el que debe conectarse para acceder a la impresora. Este usuario debe existir en el sistema Windows y el usuario debe tener permiso para acceder a la impresora. El nombre de usuario predeterminado es tpicamente guest para los servidores Windows, o nobody para los servidores Samba. Ingrese la Contrasea (si se necesita) para el usuario especificado en el campo Nombre de usuario. Haga clic en Adelante para continuar. El prximo paso es seleccionar el tipo de impresora. Advertencia: Los nombres de usuarios y contraseas se almacenan en el servidor de impresin como campos no encriptados con acceso de lectura para root y lpd. Por tanto, otros usuarios que tienen acceso como root al servidor de impresin pueden ver el usuario y la contrasea proporcionada para conectarse a la impresora.

Aadir una impresora JetDirect


Para agregar una impresora JetDirect, haga click en el botn Nueva impresora en la ventana principal de la Herramienta de configuracin de impresoras. Introduzca un nombre nico para la impresora en el campo de texto Nombre. El nombre de la impresora no puede contener espacios y debe comenzar con una letra. El nombre de la impresora puede contener letras, nmeros, guiones (-), y rayas (_). Opcionalmente, introduzca una descripcin corta para la impresora, la cual puede contener espacios.

Red Hat Certified Engineer

110

Configuracin de impresoras

Seleccione AppSocket/HP JetDirect de la lista Seleccione Conexin. Aparecern los campos de texto para las siguientes opciones:

Nombre de Equipo El nombre de la mquina o direccin IP de la impresora JetDirect.

Puerto El puerto en la impresora JetDirect que est escuchando por trabajos de impresin. El puerto predeterminado es 9100.

Haga clic en Adelante para continuar. El prximo paso es seleccionar el tipo de impresora.

Seleccin del modelo de impresora


Despus de seleccionar el tipo de cola de impresin, el prximo paso es seleccionar el modelo de la impresora. Si no fue detectado automticamente, seleccione el modelo de la lista. Las impresoras son divididas por fabricantes. Seleccione el nombre del fabricante desde el men. Los modelos de impresoras son actualizados cada vez que un nuevo fabricante es seleccionado. Seleccione el modelo de impresora de la lista. El controlador de la impresora recomendado es escogido basado en el modelo de impresora seleccionado. El controlador de la impresora procesa los datos que desea imprimir en un formato que la impresora pueda entender. Puesto que hay una impresora local conectada a su computador, necesita un controlador de impresora para procesar los datos que son enviados a la misma. Si est configurando una impresora remota (IPP, LPD, SMB), el servidor de impresin remoto usualmente tiene su propio controlador de impresin. Si selecciona un controlador de impresin adicional en su computador local, los datos son filtrados mltiples veces y convertido a un formato que la impresora no puede entender.
111 Ing. Ivn Ferreira

Configuracin de impresoras

Para asegurarse de que los datos no son filtrados ms de una vez, primero trate de seleccionar Genrico como el fabricante e Impresora Postscript como el modelo de impresora. Despus de aplicar los cambios, imprima una pgina de prueba para probar la nueva configuracin. Si la prueba falla, el servidor de impresin remoto puede que no tenga un controlador de impresora configurado. Intente seleccionando un controlador de acuerdo al fabricante y modelo de la impresora remota, aplique los cambios e imprima una pgina de prueba. Tambin puede proporcionar un archivo PPD (PostScript Printer Description). Este archivo es normalmente proporcionado por el fabricante de la impresora.

Administracin de trabajos de impresin


Cuando usted enva un trabajo de impresin al demonio de impresin, tal como imprimir un archivo de texto desde Emacs o imprimir una imagen desde El GIMP, el trabajo de impresin es aadido al spool de la cola de impresin. El spool de la cola de impresin es una lista de los trabajos de impresin que han sido enviados a la impresora e informacin acerca de cada peticin de impresin, tal como el estado de la peticin, el nombre del usuario de la persona que envi la peticin, el nombre de la mquina que lo envi, el nmero de trabajo, etc. Para ver una lista de los trabajos de impresin en el spool de impresin desde el intrprete de comandos, escriba el comando lpstat. La salida de este comando, sern similares a lo siguiente:
# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:42:22 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT la impresora hplj01 est inactiva. activada desde vie 09 oct 2009 09:42:22 PYT la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT

Con la opcin -R del comando lpstat puede visualizar los trabajos de impresin.

Red Hat Certified Engineer

112

Configuracin de impresoras
# lpstat -R 0 hplj01-1 1 hplj01-2

root root

1024 vie 09 oct 2009 09:44:43 PYT 2048 vie 09 oct 2009 09:44:47 PYT

Si desea cancelar un trabajo de impresin, use el comando cancel y el identificador de trabajo. Por ejemplo:
# cancel hplj01-2

Para borrar todos los trabajos de impresin de la cola hplj01 ejecute el comando:
# cancel -a hplj01

Si desea mover un trabajo de impresin pude utilizar el comando lpmove, por ejemplo, para mover un trabajo de impresin de la cola hplj01 a la cola hplj02 utilice los siguientes comandos:
# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:57:31 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT la impresora hplj01 est imprimiendo hplj01-3. activada desde vie 09 oct 2009 09:57:31 PYT No pages found! la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT hplj01-3 root 2048 vie 09 oct 2009 09:57:31 PYT # lpmove hplj01-3 hplj02 # lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:57:43 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT la impresora hplj01 est inactiva. activada desde vie 09 oct 2009 09:57:43 PYT No pages found! la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT hplj02-3 root 2048 vie 09 oct 2009 09:57:31 PYT

113

Ing. Ivn Ferreira

Configuracin de impresoras

Deshabilitando las impresoras y las colas de impresin


Los comandos cupsenable y cupsdisable pueden ser utilizados para controlar la impresin de los trabajos en la cola de impresin. La sintaxis del comando es la siguiente:
/usr/sbin/cupsdisable destino(s) /usr/sbin/cupsenable destino(s)

Las colas de impresin deshabilitadas an aceptarn solicitudes de impresin pero no comenzarn a imprimir hasta que sean habilitadas. Los comandos accept y reject permiten o deniegan trabajos de impresin. La sintaxis del comando es:
/usr/sbin/reject destinos(s) /usr/sbin/accept destino(s)

Con el comando reject la impresora no aceptar nuevos trabajos de impresin hasta que se ejecute el comando accept nuevamente. Puede suponer que los comandos anteriores permiten controlar vlvulas como se muestra en la siguiente imgen:

Por ejemplo, para controlar la impresora y la cola de impresin hplj01, primero utilice el comando lpstat para identificar el estado de la impresora:

Red Hat Certified Engineer

114

Configuracin de impresoras
# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:48:48 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT la impresora hplj01 est inactiva. activada desde vie 09 oct 2009 09:48:48 PYT la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT

Deshabilite la impresora hplj01:


# /usr/sbin/cupsdisable hplj01

Verifique nuevamente el estado de la impresora:


# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:52:01 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT impresora hplj01 desactivada desde vie 09 oct 2009 09:52:01 PYT Paused la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT

Deshabilite la cola de impresin:


# /usr/sbin/reject hplj01

Verifique nuevamente el estado de la impresora:


# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 no acepta peticiones desde vie 09 oct 2009 09:52:01 PYT Rejecting Jobs hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT impresora hplj01 desactivada desde vie 09 oct 2009 09:52:01 PYT Rejecting Jobs la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT

Habilite la cola de impresin y la impresora:

115

Ing. Ivn Ferreira

Configuracin de impresoras
# /usr/sbin/accept hplj01 # /usr/sbin/cupsenable hplj01

Verifique nuevamente el estado de la impresora:


# lpstat -t el programa de planificacin de tareas se est ejecutando destino por omisin del sistema: hplj01 dispositivo para hplj01: usb:/dev/usb/lp0 dispositivo para hplj02: parallel:/dev/lp0 hplj01 acepta peticiones desde vie 09 oct 2009 09:54:51 PYT hplj02 acepta peticiones desde vie 09 oct 2009 09:42:37 PYT la impresora hplj01 est inactiva. activada desde vie 09 oct 2009 09:54:51 PYT la impresora hplj02 est inactiva. activada desde vie 09 oct 2009 09:42:37 PYT

Compartir una impresora


La habilidad de la Herramienta de configuracin de impresoras de compartir las opciones de configuracin slo puede ser usada si est usando el sistema de impresin CUPS. El permitir a otros usuarios en un computador diferente en la red imprimir a una impresora configurada para su sistema se llama compartir la impresora. Por defecto, las impresoras configuradas con la herramienta de configuracin de impresoras estn compartidas. Para compartir o dejar de una impresora configurada, arranque la Herramienta de configuracin de impresoras y seleccione una impresora desde la lista. Luego en la pestaa Configuracin marque la opcin Compartido en las opciones de Estado.

Red Hat Certified Engineer

116

7 El sistema X Window

El sistema X Window

El sistema X Window
Mientras que el corazn de CentOS Enterprise Linux es el kernel, para muchos usuarios, la cara del sistema operativo es el entorno grfico proporcionando por el Sistema X Window, tambin llamado simplemente X. En el mundo UNIX, los entornos de ventanas han existido desde hace dcadas, siendo stos precursores de muchos de los utilizados en los sistemas operativos actuales. A travs de los aos X se ha convertido en el entorno grfico (GUI) predominante para sistemas operativos del tipo UNIX. El entorno grfico para CentOS Enterprise Linux es suministrado por la Fundacin X.Org, una implementacin de cdigo abierto creada para manejar el desarrollo y la estrategia para el sistema X y sus tecnologas asociadas. X.Org es un proyecto de gran escala que se apoya en un gran nmero de desarrolladores en todo el mundo. Presenta una amplia gama de soporte para diferentes dispositivos de hardware y arquitecturas, as como la posibilidad de ejecutarse en diferentes sistemas operativos y plataformas. La versin actual de CentOS Enterprise Linux incluye especficamente el lanzamiento X11R7.1 del sistema X Window. El sistema X Window utiliza una arquitectura cliente-servidor. El servidor de X (el binario Xorg) escucha por conexiones desde las aplicaciones cliente X a travs de la red o una interfaz local de loopback. El servidor gestiona la comunicacin con el hardware, que puede ser una tarjeta grfica, un monitor, un teclado o un ratn. Las aplicaciones cliente de X existen en el espacio del usuario, creando una interfaz grfica del usuario (GUI) y pasando peticiones al servidor de X.

El lanzamiento X11R7.1
CentOS Enterprise Linux 5 utiliza el lanzamiento X11R7.1 del sistema de ventanas X. Este lanzamiento incluye varios controladores de vdeo, EXA, soporte mejorado de plataformas en comparacin con versiones anteriores y otras caractersticas. Adems, este lanzamiento incluye varias funciones de configuracin automtica

Red Hat Certified Engineer

118

El sistema X Window

para el servidor X. En el lanzamiento X11R7.1, todas las bibliotecas, archivos de cabecera, y archivos binarios se encuentran en /usr/ y no en /usr/X11R6. El directorio /etc/X11/ contiene archivos de configuracin para los clientes X y las aplicaciones del servidor. Entre estos archivos se encuentran los archivos de configuracin del servidor mismo, del servidor de fuentes xfs, de los administradores de visualizacin X y de otros componentes base. El archivo de configuracin para la nueva arquitectura de fuentes basado en Fontconfig es /etc/fonts/fonts.conf. Ya que el servidor X ejecuta tareas avanzadas sobre una amplia variedad de hardware, ste requiere informacin detallada sobre el hardware sobre el cual trabaja. El servidor X detecta automticamente gran parte de esta informacin. Sin embargo, algunos detalles deben ser configurados. El programa de instalacin instala y configura X automticamente, a menos que los paquetes del lanzamiento X11R7.1 no sean seleccionados para la instalacin. Sin embargo, si la tarjeta de vdeo o el monitor cambian, X debe ser reconfigurado. La manera ms apropiada de reconfigurar el servidor es a travs de systemconfig-display, particularmente para dispositivos que no se detectan automticamente. En algunas circunstancias, la reconfiguracin del servidor X puede requerir la edicin manual del archivo de configuracin, /etc/X11/xorg.conf.

Entornos de escritorio
Un entorno de escritorio une diferentes clientes de X, los cuales cuando se usan juntos crean un ambiente de usuario grfico comn y una plataforma de desarrollo. Los entornos de escritorio tienen caractersticas avanzadas las cuales permiten a los clientes X y a otros procesos comunicarse unos con otros y permitir a todas las
119 Ing. Ivn Ferreira

El sistema X Window

aplicaciones escritas para funcionar en ese ambiente a que realicen tareas avanzadas, tales como operaciones de arrastrar y soltar. CentOS Linux proporciona dos entornos de escritorio:

GNOME Es el entorno de escritorio por defecto en CentOS Linux basado en el conjunto de herramientas grficas GTK+ 2.

KDE Un entorno de escritorio alternativo basado en el conjunto de herramientas grficas Qt 3.

Ambos entornos GNOME y KDE tienen aplicaciones de productividad avanzadas, tales como procesadores de palabras, hojas de clculo y navegadores Web as como herramientas para personalizar la apariencia de la GUI. Adicionalmente, si ambas libreras estn presentes, la GTK+ 2 y la Qt, las aplicaciones KDE pueden ejecutarse en GNOME y viceversa. Puede utilizar el comando switchdesk para cambiar el entorno de escritorio utilizado. La sintaxis del comando es:
switchdesk < KDE | GNOME | XFCE | FVWM | WindowMaker >

Gestores de ventanas
Los gestores de ventanas son programas clientes de X que son o parte del entorno de escritorio o, en otros casos, standalone. Su propsito principal es controlar la forma en que las ventanas grficas son posicionadas, redimensionadas o movidas. Los manejadores de ventanas controlan las barras de ttulos, el comportamiento del foco, los vnculos del botn del ratn y teclas especificadas por el usuario. Se incluyen cuatro gestores de ventanas con CentOS Linux:

kwin El gestor de ventanas KWin es el manejador por defecto para el entorno KDE. Es un manejador de ventanas que soporta temas

Red Hat Certified Engineer

120

El sistema X Window

personalizados.

metacity El gestor de ventanas Metacity es el manejador por defecto del entorno GNOME. Es un manejador de ventanas simple y eficiente que tambin soporta temas personalizados.

mwm El gestor de ventanas Motif, es un gestor bsico tipo standalone. Puesto que est diseado para ser un gestor standalone, no se debera utilizar en conjunto con los entornos de escritorios GNOME o KDE.

twm El minimalista Administrador de pestaas de ventanas, el cual proporciona el conjunto de herramientas ms bsicas de cualquier gestor de ventanas y puede ser usado bien sea standalone o con un entorno de escritorio. Es instalado como parte del lanzamiento X11R7.1.

Estos gestores de ventanas pueden ejecutarse sin los entornos de escritorio para poder obtener una impresin de sus diferencias. Teclee el comando:
xinit -e <ruta-al-gestor-de-ventanas>

Donde <ruta-al-gestor-de-ventanas> es la ubicacin del archivo binario de gestor de ventanas. El archivo binario puede ser encontrado escribiendo which <nombre-de-gestor-de-ventanas>. Por ejemplo:
# which twm /usr/bin/twm # xinit -e /usr/bin/twm

El primer comando retorna la ruta absoluta del gestor de ventanas twm, el segundo comando inicia twm. Para salir de un gestor de ventanas, cierra la ltima ventana o presione Ctrl-AltBackspace. Una vez haya salido del gestor de ventanas, puede regresar al nivel de ejecucin 5 escribiendo startx en el intrprete de comandos.

121

Ing. Ivn Ferreira

El sistema X Window

Archivos de configuracin del servidor X


El servidor X es un binario ejecutable (/usr/bin/Xorg). Los archivos de configuracin asociados se almacenan en el directorio /etc/X11/ (es un enlace simblico X que apunta a /usr/bin/Xorg). El archivo de configuracin para el servidor X es /etc/X11/xorg.conf. El directorio /usr/lib/xorg/modules/ contiene los mdulos del servidor X que pueden ser cargados dinmicamente en tiempo de ejecucin. Por defecto, el servidor X slo carga algunos de los mdulos en /usr/lib/xorg/modules/. Para cargar mdulos opcionales, stos deben ser especificados en el archivo de configuracin del servidor X, /etc/X11/xorg.conf. Cuando se instala CentOS Enterprise Linux, los archivos de configuracin para X son creados con la informacin sobre el hardware del sistema reunida durante el proceso de instalacin.

El archivo xorg.conf
Mientras que casi nunca se necesita editar manualmente el

/etc/X11/xorg.conf, es muy til conocer sobre las varias secciones y los parmetros opcionales disponibles, especialmente cuando se estn solucionando problemas.

La estructura de Xorg
El archivo /etc/X11/xorg.conf est formado de muchas secciones diferentes las cuales hacen referencia a aspectos especficos del hardware del sistema. Cada seccin comienza con una lnea Section "<nombre-seccion>" (donde <nombre-seccion> es el ttulo para la seccin) y termina con una lnea EndSection. Dentro de cada seccin, hay lneas conteniendo nombres de opciones y al menos un valor de opcin, ocasionalmente visto en comillas.

Red Hat Certified Engineer

122

El sistema X Window

Las lneas que comienzan con un smbolo de numeral o almohadilla [#] no son ledas por el servidor y son usadas como comentarios. Algunas opciones dentro del archivo de configuracin aceptan un switch boleano el cual activa o desactiva la caracterstica. Los valores boleanos son:

1, on, true, yes - Activa la opcin. 0, off, false, no - Desactiva la opcin.

A continuacin se describen algunas de las secciones ms importantes ordenadas como aparecen en un archivo de configuracin tpico.

Seccin ServerFlags
La seccin opcional ServerFlags contiene varios parmetros globales del servidor. Cualquier parmetro en esta seccin puede ser sobreescrito por opciones colocadas en la seccin ServerLayout Las entradas dentro de la seccin ServerFlags estn en sus propias lneas y comienzan con el trmino Option seguido por una opcin encerrada en dobles comillas ["]. A continuacin un ejemplo de la seccin ServerFlags:
Section "ServerFlags" Option "DontZap" "true" EndSection

Las opciones ms tiles son:

"DontZap"

"<booleano>" - Cuando el valor de <booleano> est

configurado a verdadero, esta configuracin previene el uso de la combinacin de teclas [Ctrl]-[Alt]-[Retroceso] para terminar inmediatamente el servidor X.

123

Ing. Ivn Ferreira

El sistema X Window

"DontZoom" "<booleano>" - Cuando el valor de <booleano> est colocado a verdadero, esta configuracin previene moverse a lo largo de las resoluciones de vdeo configuradas usando las combinaciones de teclas [Ctrl]-[Alt]-[Keypad-Mas] y [Ctrl]-[Alt]-[Keypad-Menos]

Seccin ServerLayout
La seccin ServerLayout vincula los dispositivos de entrada y salida controlados por el servidor X. Como mnimo, esta seccin debe especificar un dispositivo de salida y al menos dos dispositivos de entrada (un teclado y un ratn). El ejemplo siguiente ilustra una seccin ServerLayout tpica:
Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" EndSection

Las entradas siguientes son usadas a menudo en la seccin ServerLayout:

Identifier - Especifica un nombre nico para esta seccin ServerLayout. Screen - Especifica el nombre de la seccin Screen a ser usado con el servidor X. Pueden estar presentes ms de una opcin Screen. El siguiente ejemplo es de una entrada Screen tpica:
Screen 0 "Screen0" 0 0

El primer nmero en esta entrada de ejemplo Screen (0) indica que el primer conector del monitor o head en la tarjeta de vdeo usa la configuracin especificada en la seccin Screen con el identificador "Screen0".

Red Hat Certified Engineer

124

El sistema X Window

Si la tarjeta de vdeo tiene ms de una cabeza, ser necesaria otra entrada Screen con un nmero diferente y un identificador de seccin Screen. Los nmeros a la derecha de "Screen0" proporcionan las coordenadas absolutas X y Y para la esquina superior izquierda de la pantalla (0 0 por defecto).

InputDevice - Especifica el nombre de una seccin InputDevice a ser usada con el servidor X. Al menos deben haber dos entradas InputDevice: una para el ratn por defecto y una para el teclado por defecto. Las opciones CorePointer y CoreKeyboard indican que estos son el ratn y teclado principales.

Option "<nombre-opcion>" - Una entrada opcional que especifica parmetros extra para esta seccin. Cualquier seccin listada aqu sobreescriben aquellas listadas en la seccin ServerFlags. Reemplace <nombre-opcion> con una opcin vlida listada para esta seccin en la pgina man X.

Es posible crear ms de una seccin ServerLayout. Sin embargo, el servidor slo leer la primera seccin que aparezca a menos que se especifique una seccin ServerLayout alternativa como argumento en la lnea de comandos cuando inicie la sesin X.

Seccin Files
La seccin Files configura la ruta para servicios vitales al servidor X, tal como la ruta de la fuente. Esta seccin es opcional, estas rutas son normalmente detectadas de forma automtica. Esta seccin puede ser usada para sobreescribir las rutas detectadas automticamente. El siguiente ejemplo ilustra una seccin Files:
125 Ing. Ivn Ferreira

El sistema X Window
Section "Files" RgbPath FontPath EndSection

"/usr/X11R6/lib/X11/rgb" "unix/:7100"

Las siguientes entradas son usadas comnmente en la seccin Files:

RgbPath - Especifica la ubicacin de la base de datos de colores RGB. Esta base de datos define todos los esquemas de color en X y los junta para valores RGB especficos.

FontPath - Especifica dnde el servidor X debe ser conectado para obtener las fuentes desde el servidor de fuentes xfs. Por defecto, la FontPath es unix/:7100. Esto le dice al servidor X para obtener informacin de fuentes usando sockets de dominio UNIX para la comunicacin entre procesos (IPC) en el puerto 7100.

ModulePath - Un parmetro opcional el cual especifica directorios alternativos el cual almacena mdulos de servidor X.

Seccin Module
La seccin Module especifica cuales mdulos del directorio

/usr/lib/xorg/modules/

cargar el servidor X. Los mdulos aaden

funcionalidad adicional al servidor X. Por defecto, el servidor X carga automticamente los siguientes mdulos desde el directorio /usr/lib/xorg/modules/:

extmod dbe glx

Red Hat Certified Engineer

126

El sistema X Window

freetype type1 record dri

El ejemplo siguiente ilustra una seccin Module tpica:


Section "Module" Load "extmod" Load "dbe" Load "glx" Load "freetype" Load "type1" Load "record" Load "dri" EndSection

El directorio predeterminado para cargar estos mdulos puede modificarse a travs del parmetro opcional ModulePath en la seccin Files. Si se aade una seccin Module a /etc/X11/xorg.conf, el servidor X cargar los mdulos listados en esta seccin en vez de los mdulos predeterminados.

Seccin InputDevice
Cada seccin InputDevice configura un dispositivo de entrada para el servidor X. Los sistemas tpicamente tienen al menos dos secciones InputDevice, un teclado y un ratn. El ejemplo siguiente ilustra una seccin InputDevice tpica para un teclado:
Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "es" EndSection

127

Ing. Ivn Ferreira

El sistema X Window

Las entradas siguientes son comnmente usadas en la seccin InputDevice:

Identifier - Especifica un nombre nico para esta seccin InputDevice. Esto es una entrada requerida.

Driver - Especifica el nombre del controlador del dispositivo que X debe cargar para el dispositivo.

Option - Especifica las opciones necesarias pertinentes al dispositivo. Para un ratn, estas opciones incluyen:

Protocol - Indica el protocolo usado por el ratn, tal como IMPS/2. Device - Indica la ubicacin del dispositivo fsico. Emulate3Buttons - Especifica si se va a permitir a un ratn de dos botones a que se comporte como uno de tres cuando se presionen ambos botones simultneamente.

Consulte la pgina man xorg.conf para una lista de las opciones vlidas para esta seccin.

Seccin Monitor
Cada seccin Monitor configura un tipo de monitor utilizado por el sistema. Esta tambin es una entrada opcional, ya que la mayora de monitores son detectados automticamente. La forma ms sencilla de configurar un monitor es durante el proceso de instalacin o usando system-config-display. Este ejemplo muestra una seccin de Monitor tpica:

Red Hat Certified Engineer

128

El sistema X Window
Section "Monitor" Identifier VendorName ModelName DisplaySize HorizSync VertRefresh EndSection

"Monitor0" "Monitor Vendor" "DDC Probed Monitor - ViewSonic G773-2" 320 240 30.0 - 70.0 50.0 - 180.0

Tenga cuidado cuando modifique manualmente valores en la seccin Monitor de los archivos de configuracin. Valores inapropiados pueden daar o destruir su monitor. Consulte la documentacin sobre monitores para un listado de parmetros seguros. A continuacin se muestran entradas comunes usadas en la seccin Monitor:

Identifier - Proporciona un nombre nico para esta seccin Monitor. Esta es una entrada requerida.

VendorName - Parmetro opcional que muestra el nombre del fabricante del monitor.

ModelName - Parmetro opcional que muestra el nombre del modelo del monitor.

DisplaySize - Un parmetro opcional que especifica, en milmetros, el tamao fsico del rea de dibujo del monitor.

HorizSync - Especifica el rango de la frecuencia de sincronizacin horizontal compatible con el monitor en kHz. Estos valores ayudan al servidor X a determinar la validez de las entradas Modeline especificadas para el monitor.

VertRefresh - Lista de los rangos de frecuencias de refresco verticales soportados por el monitor, en Hz. Estos valores se usan como referencia para que el servidor X sepa cuando deber utilizar cada una de las entradas que aparecen en Modeline con este monitor.

129

Ing. Ivn Ferreira

El sistema X Window

Modeline - Un parmetro opcional el cual especifica los modos de vdeo adicionales para el monitor en resoluciones particulares, con ciertas resoluciones de refrescamiento de sincronizacin horizontal y vertical. Vea la pgina man de X para una explicacin ms detallada de las entradas Modeline.

Option "<nombre-opcion>" - Una entrada opcional la cual especifica parmetros extra para la seccin. Reemplace <nombre-opcion> con una opcin vlida listada para esta seccin en la pgina man de xorg.conf.

Seccin Device Cada seccin Device configura una tarjeta de vdeo en el sistema. Mientras una seccin Device es lo mnimo, instancias adicionales pueden ocurrir para cada tarjeta de vdeo instalada en la mquina. El siguiente ejemplo ilustra una seccin Device tpica para una tarjeta de vdeo:
Section "Device" Identifier "Videocard0" Driver "mga" VendorName "Videocard vendor" BoardName "Matrox Millennium G200" VideoRam 8192 Option "dpms" EndSection

Las siguientes entradas son usadas comnmente en la seccin Device:

Identifier - Especifica un nombre nico para esta seccin Device. Esta es una entrada requerida.

Driver - Especifica cul controlador debe cargar el servidor X para poder utilizar la tarjeta de vdeo. Se puede encontrar una lista de los controladores en /usr/X11R6/lib/X11/Cards, el cual es instalado con el paquete hwdata.

Red Hat Certified Engineer

130

El sistema X Window

VendorName - Un parmetro opcional el cual especifica el fabricante de la tarjeta de vdeo.

BoardName - Un parmetro opcional el cual especifica el nombre de la tarjeta de vdeo.

VideoRam - Un parmetro opcional el cual especifica la cantidad de RAM disponible en la tarjeta de vdeo en kilobytes. Este valor slo es necesario para tarjetas de vdeo que el servidor X no puede probar para detectar la cantidad de RAM.

BusID - Una entrada opcional la cual especifica la ubicacin del bus de la tarjeta de vdeo. Esta opcin es necesaria solamente para sistemas con mltiples tarjetas.

Screen - Una entrada opcional la cual especifica que conector de monitor o cabezal en la tarjeta de vdeo configura la seccin Device. Esta opcin es til solamente para tarjetas de vdeo con mltiples cabezales. Si mltiples monitores son conectados a diferentes cabezales en la misma tarjeta de vdeo, deben existir secciones Device separadas y cada una de estas secciones debe tener un valor Screen diferente. Los valores para la entrada Screen deben ser enteros. El primer cabezal en la tarjeta de vdeo tiene un valor de 0. El valor para cada cabezal adicional incrementa este valor en uno.

Option "<nombre-opcion>" - Una entrada opcional la cual especifica parmetros extra para la seccin. Reemplace <nombre-opcion> con una opcin vlida listada para esta seccin en la pgina man de X. Una de las opciones ms comunes es "dpms", la cual activa la conformidad de energa Service Star para el monitor.

131

Ing. Ivn Ferreira

El sistema X Window

Seccin Screen
Cada seccin Screen vincula una tarjeta de vdeo (o cabezal) a un monitor referenciando la seccin Device y la seccin Monitor para cada uno. Mientras que una seccin Screen es lo mnimo, pueden ocurrir instancias adicionales para cada combinacin de tarjeta de vdeo y monitor presente en la mquina. El ejemplo siguiente ilustra una seccin Screen tpica:
Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 16 SubSection "Display" Depth 24 Modes "1280x960" "1152x864" "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 16 Modes "1152x864" "1024x768" "800x600" "640x480" EndSubSection EndSection

Las siguientes entradas son usadas a menudo en la seccin Screen:

Identifier - Especifica un nombre nico para esta seccin Screen. Esta es una entrada requerida.

Device - Especifica el nombre nico de una seccin Device. Esta es una entrada requerida.

Monitor - Especifica el nombre nico de una seccin Monitor. Esta es una entrada requerida.

DefaultDepth - Especifica la profundidad del color por defecto en bits. En el ejemplo anterior, el valor por defecto es 16, lo que proporciona miles de colores. Mltiples entradas de DefaultDepth son permitidas, pero al menos una debe estar presente.

Red Hat Certified Engineer

132

El sistema X Window

SubSection "Display" - Especifica los modos de la pantalla disponibles en una profundidad de color particular. Una seccin Screen puede tener mltiples subsecciones Display, pero debe haber al menos una para la profundidad de color especificada en la entrada DefaultDepth.

Option

"<option-name>"

Una entrada opcional que especifica

parmetros extra para la seccin. Reemplace <option-name> con una opcin vlida listada para esta seccin en la pgina man.

DRI
La seccin opcional DRI especifica parmetros para Direct Rendering Infrastructure (DRI). DRI es una interfaz que permite a las aplicaciones de software 3D sacar provecho de las capacidades de aceleracin de hardware 3D incorporadas en la mayora del hardware moderno de vdeo. Adems, DRI puede mejorar el rendimiento de 2D a travs de la aceleracin de hardware, si es soportado por el controlador de la tarjeta. Esta seccin es ignorada a menos que DRI est activada en la seccin Module. El ejemplo siguiente muestra una seccin DRI tpica:
Section "DRI" Group Mode EndSection

0 0666

Puesto que tarjetas de vdeo diferentes utilizan DRI de formas diferentes, no modifique estos valores para esta seccin sin primero referirse a http://dri.sourceforge.net/.

Fuentes
CentOS Linux utiliza dos mtodos para manejar fuentes y mostrarlas bajo X. El subsistema de fuentes ms nuevo Fontconfig simplifica la gestin de fuentes y proporciona caractersticas avanzadas, tales como anti-aliasing. Este sistema es
133 Ing. Ivn Ferreira

El sistema X Window

usado automticamente para aplicaciones programadas usando el conjunto de herramientas Qt 3 o GTK+ 2. Por compatibilidad, CentOS Linux incluye el subsistema de fuentes original, llamado el subsistema de fuentes nucleo de X. Este sistema, el cual tiene ms de 15 aos, est basado en el Servidor de fuentes de X (xfs). Esta seccin discute cmo configurar fuentes para X usando ambos sistemas.

Fontconfig
El subsistema de fuentes Fontconfig permite a las aplicaciones accesar directamente fuentes en el sistema y usar Xft u otros mecanismos de traduccin de fuentes para interpretar fuentes Fontconfig con anti-aliasing avanzados. Las aplicaciones grficas pueden usar la librera Xft con Fontconfig para dibujar texto a la pantalla. Con el tiempo, el subsistema de fuentes Fontconfig/Xft reemplazar el subsistema de fuentes base de X. Es importante resaltar que Fontconfig comparte el archivo de configuracin /etc/fonts/fonts.conf, el cual sustituye al /etc/X11/XftConfig. El archivo de configuracin Fontconfig no debera se modificado manualmente.

Aadir fuentes a Fontconfig


Aadir fuentes al subsistema Fontconfig es un proceso bastante directo. Para aadir fuentes para todo el sistema, copie las nuevas fuentes en el directorio /usr/share/fonts/local/. Para aadir fuentes para un usuario individual, copie las nuevas fuentes en el directorio .fonts/ en el directorio principal del usuario. Utilice el comando fc-cache para actualizar la informacin cach de la fuente,
Red Hat Certified Engineer 134

El sistema X Window

como en el ejemplo siguiente:


fc-cache <path-to-font-directory>

En este comando, sustituya <path-to-font-directory> con el directorio conteniendo las nuevas fuentes (bien sea /usr/share/fonts/local/ o ~/.fonts/).

Aadir fuentes TrueType


Mientras Linux viene con una seleccin de fuentes ya instalada, existe una seleccin mucho mayor de fuentes TrueType disponibles en la web e includo con productos que cualquier otro tipo de fuente. Inicialmente cree un directorio para almacenar las fuentes TrueType:
# mkdir /usr/X11R6/lib/X11/fonts/TTF

Copie las fuentes a ese directorio y ejecute los siguientes comandos:


# cd /usr/X11R6/lib/X11/fonts/TTF # ttmkfdir > fonts.scale # mkfontdir

Si verifica el contenido del directorio debera encontrar dos archivos adems de los archivos de fuente, fonts.scale y fonts.dir. Estos archivos simplemente contienen una lista de los nombres de las fuentes para cada fuente TrueType. Finalmente debe agregar el nuevo directorio a la lista de ubicaciones en la cual Xwindow buscar las fuentes:
chkfontpath -a /usr/X11R6/lib/X11/fonts/TTF

Para agregar nuevas fuentes repita el mismo procedimiento, sin embargo el comando chkfontpath se ejecuta una sola vez, solamente cada vez que se desea agregar un directorio.

135

Ing. Ivn Ferreira

El sistema X Window

Sistema de fuentes base de X


Por compatibilidad, CentOS Linux todava proporciona el subsistema de fuentes base de X, el cual utiliza el servidor de fuentes X (xfs) para proporcionar fuentes a las aplicaciones clientes X. El servidor X busca por un servidor de fuentes especificado en la entrada FontPath bajo la seccin Files del archivo de configuracin.

Configuracin de xfs
El script /etc/rc.d/init.d/xfs inicia el servidor xfs. Se pueden configurar muchas opciones en el archivo /etc/X11/fs/config. La siguiente es una lista de las opciones ms usadas:

alternate-servers - Configura una lista de servidores alternativos de fuentes que podrn ser utilizados en el caso de que el servidor actual no est disponible. Los diferentes servidores debern estar separados por comas.

catalogue - Lista ordenada de rutas que contienen las fuentes a utilizar. Cada ruta hacia las fuentes deber estar separada por una coma antes de que comience otra nueva ruta en la lista. Puede utilizar la cadena :unscaled inmediatamente despus de la ruta hacia las fuentes para hacer que las fuentes no escalables se carguen antes que el resto de las fuentes de la ruta. Entonces, podr especificar la ruta completa de nuevo de tal forma que las otras fuentes que sean escalables puedan ser cargadas.

client-limit - Configura el nmero de clientes que el servidor de fuentes podr servir antes de comenzar a denegar las conexiones. El nmero por defecto es 10.

Red Hat Certified Engineer

136

El sistema X Window

clone-self Permite al servidor de fuentes clonar una nueva versin de s mismo si se llega al lmite definido por el parmetro client-limit. Por defecto, esta opcin est configurada como on.

default-point-size - Configura el tamao de punto por defecto para cualquier fuente que no especifique este valor. El valor de esta opcin est estimado en dcimas de puntos. El valor por defecto de 120 se corresponde a fuentes de 12 puntos.

default-resolutions - Especifica una lista de resoluciones soportadas por el servidor X. Cada resolucin de la lista debe estar separada por una coma.

deferglyphs - Especifica si retrasar la carga de glyphs (el grfico usado para visualmente representar una fuente). Para desactivar esta caracterstica utilice none, para activarla para todas las fuentes utilice all, o para activar esta caracterstica solamente para fuentes de 16-bit use 16.

error-file - Le permite especificar la ruta y el nombre de archivo donde se almacenarn los informes de error de xfs.

no-listen - Dice a xfs que no escuche utilizando un protocolo en particular. Por defecto, esta opcin est configurada con tcp para evitar que xfs escuche utilizando puertos TCP, por motivos de seguridad. Si planea utilizarxfs para servir fuentes a estaciones de trabajo en red, deber borrar esta lnea.

port - Especifica el puerto TCP en el cual xfs escuchar si no-listen no existe o est entre comentarios.

use-syslog - Especifica si utilizar el registro de errores del sistema.

137

Ing. Ivn Ferreira

El sistema X Window

Aadir fuentes a xfs


Para aadir fuentes al subsistema base de fuentes de X (xfs), siga los pasos siguientes: Si an no existe, cree un directorio llamado /usr/share/fonts/local/ usando el comando siguiente como usuario root:
# mkdir /usr/share/fonts/local/

Si es necesario la creacin del directorio /usr/share/fonts/local/, se debe aadir a la ruta xfs usando el comando siguiente como root:
# chkfontpath --add /usr/share/fonts/local/

Copie el nuevo archivo de fuente en el directorio /usr/share/fonts/local/ Actualice la informacin de la fuente emitiendo el siguiente comando como root:
# ttmkfdir -d /usr/share/fonts/local/ -o /usr/share/fonts/local/fonts.scale

Reinicie el servidor de fuentes xfs utilizando el comando siguiente como root:


# service xfs reload

Fuentes Liberation
En Mayo de 2007, Red Hat anunci la liberacin pblica de estas fuentes bajo la marca registrada LIBERATION, para sustituir las privativas que vienen con los sistemas de Microsoft y que este no licencia a terceros, algo que facilitara la compatibilidad y hara ms sencillo a los usuarios cambiar de procesador de textos, por ejemplo. Bsicamente se trata de igualar las caractersticas principales de es espaciado horizontal y ancho para que al usar otro paquete de fuentes, el texto no se modifique ni cambie su posicin. Existen tres conjuntos: Sans (un substituto para Arial, Albany, Helvetica, Numbus
Red Hat Certified Engineer 138

El sistema X Window

Sans L y Bitstream Vera Sans), Serif (un sustituto para Times New Roman, Thornade, Nimbus Roman, y Bitstream Vera Serif) y Mono (un substituto para Courier New, Cumberland, Courier, Nimbus Mono L, y Bitstream Vera Sans Mono). Estn disponibles para su descarga como paquetes .RPM para CentOS Linux y como un archivo comprimido .TAR.GZ para instalarlas mediante los ficheros .TTF.

Niveles de ejecucin y X
En la mayora de los casos, la instalacin por defecto de CentOS Linux configura una mquina para arrancar en un entorno de conexin grfico, conocido como nivel de ejecucin 5. Es posible, sin embargo, arrancar en el modo multiusuario de slo texto llamado nivel de ejecucin 3 y comenzar una sesin X desde all.

Nivel de ejecucin 3
Cuando estamos en el nivel de ejecucin 3, la forma habitual de iniciar una sesin X es escribiendo el comando startx. El comando startx es un front-end del programa xinit el cual lanza el servidor X y conecta los clientes X al mismo. Ya que usted debe de haber entrado en el sistema con su usuario cuando realice este procedimiento a partir del nivel de ejecucin 3, startx no lanzar un gestor de visualizacin o autenticar al usuario. Cuando startx comienza, busca un archivo .xinitrc en el directorio principal del usuario para definir el entorno de escritorio y posiblemente otras aplicaciones clientes X a ejecutar. Si este archivo .xinitrc no se encuentra, se utilizar el archivo por defecto /etc/X11/xinit/xinitrc. El script por defecto xinitrc luego buscar por los archivos definidos por el usuario y archivos de sistema por defecto, incluyendo .Xresources, .Xmodmap y .Xkbmap en el directorio principal del usuario y Xresources, Xmodmap y Xkbmap en el directorio /etc/X11/. Los archivos Xmodmap y Xkbmap, si existen, son usados por la utilidad xmodmap para configurar el teclado. Los archivos Xresources son ledos para asignar valores de preferencia especficos a
139 Ing. Ivn Ferreira

El sistema X Window

aplicaciones. Despus de configurar estas opciones, el script xinitrc ejecuta todos los scripts localizados en el directorio /etc/X11/xinit/xinitrc.d/. Un script muy importante en este directorio es xinput, el cual configura los parmetros tales como el idioma por defecto. Luego, el script xinitrc intenta ejecutar .Xclients en el directorio principal del usuario y cambia a /etc/X11/xinit/Xclients si no lo puede encontrar. El propsito del archivo Xclients es arrancar el entorno de escritorio o posiblemente, slo un gestor de ventanas bsico. El script .Xclients en el directorio principal del usuario inicia el entorno de escritorio especificado por el usuario en el archivo .Xclients-default. Si .Xclients no existe en el directorio principal del usuario, el script estndar /etc/X11/init/Xclients intenta iniciar otro entorno de escritorio, intentando primero con GNOME y luego con KDE seguido por twm. El usuario es devuelto a una sesin de modo texto despus de desconectarse de X del nivel de ejecucin 3.

Nivel de ejecucin 5
Cuando el sistema arranca en el nivel de ejecucin 5, se lanza una aplicacin cliente de X especial, llamada un gestor de visualizacin. Un usuario debe autenticarse usando el gestor de visualizacin antes de que se inicien cualquier entorno de escritorio o gestores de ventanas. Dependiendo de los entornos de escritorio instalados en su mquina, estan disponibles tres gestores de visualizacin diferentes para manejar la autenticacin de los usuarios.

gdm - Es el gestor de visualizacin por defecto para CentOS Linux y permite que los usuarios puedan configurar los parmetros de idioma, cierre del sistema, reinicio o conexin al sistema.

Red Hat Certified Engineer

140

El sistema X Window

kdm - es el gestor de visualizacin de KDE que permite a los usuarios apagar, reiniciar o conectarse al sistema.

xdm - Este es un gestor de visualizacin muy bsico que slo permite que el usuario se conecte al sistema.

Cuando arranque en el nivel de ejecucin 5, el script prefdm determina el gestor de visualizacin preferido haciendo Refirase referencia al al archivo archivo /etc/sysconfig/desktop.

/usr/share/doc/initscripts-<version-number>/sysconfig.txt (donde <version-number> es el nmero de la versin del paquete initscripts) para ver un listado de las opciones disponibles para este archivo. Cada uno de los gestores de visualizacin hace referencia al archivo /etc/X11/xdm/Xsetup_0 para configurar la pantalla de conexin. Una vez que el usuario se conecte al sistema, el script /etc/X11/xdm/GiveConsole corre para asignar la propiedad de la consola para el usuario. Luego, el script /etc/X11/xdm/Xsession se ejecuta para llevar a cabo muchas de las tareas que son normalmente realizadas por el script xinitrc cuando arranca X desde el nivel de ejecucin 3, incluyendo la configuracin del sistema y los recursos del usuario, as como tambin ejecutar los scripts en el directorio /etc/X11/xinit/xinitrc.d/. El usuario puede especificar cul entorno de escritorio desea utilizar cuando se autentican usando los gestores de visualizacin gdm o kdm seleccionndolo desde el men Session (accesado al seleccionar Botn de men principal [en el Panel] => Preferencias => Ms Preferencias => Sesiones). Si el entorno de escritorio no es especificado en el gestor de visualizacin, el script /etc/X11/xdm/Xsession verificar los archivos .xsession y .Xclients en el directorio principal del usuario para decidir cul entorno de escritorio cargar. Como ltimo recurso el archivo /etc/X11/xinit/Xclients es usado para seleccionar un entorno de escritorio o gestor de ventanas para usarse de la misma forma que en el nivel de ejecucin 3.

141

Ing. Ivn Ferreira

El sistema X Window

Cuando el usuario termina una sesin X en la visualizacin por defecto (:0) y se desconecta, el script /etc/X11/xdm/TakeConsole se ejecuta y vuelve a asignar la propiedad de la consola al usuario root. El gestor de visualizacin original, que contina ejecutndose despus que el usuario se conecta, toma el control liberando un nuevo gestor de visualizacin. Esto reinicia el servidor XFree86, despliega una nueva ventana de conexin y reinicia el proceso completo otra vez. El usuario es devuelto al gestor de visualizacin despus de desconectarse de X desde el nivel de ejecucin 5. Para ms informacin sobre cmo los gestores de visualizacin controlan la autenticacin de los usuarios, consulte /usr/share/doc/gdm-<versionnumber>/README (donde <version-number> es el nmero de la versin para el paquete gdm instalado) y la pgina man de xdm.

Ejecutando aplicaciones remotas con X11


Cada aplicacin grfica en X Window lee al iniciarse la variable de entorno DISPLAY para averiguar a qu pantalla debe enviar sus grficos. Esto junto con la capacidad de red del Sistema X Window hace posible ejecutar aplicaciones grficas remotamente. Es decir, se utiliza la capacidad de CPU de una mquina mientras se utiliza la aplicacin desde otra mquina distinta. Todo el GUI (graphical user interface, interfaz grfica de usuario) aparece en la mquina desde la que se opera. No se nota que se utilizan dos ordenadores. Todas las aplicaciones X Window, realmente son clientes de red que se conectan a un servidor, el servidor X. La funcin de este servidor X es comunicarse con el hardware grfico, dibujar las imgenes en la pantalla, leer las entradas del ratn y del teclado. Los clientes (sus programas como gimp, mozilla ...) envan al servidor instrucciones sobre cmo pintar cuadros y botones. A cambio reciben del servidor los eventos de ratn y teclado. Obviamente se necesita algn tipo de autentificacin, de otra forma cualquiera podra estropear la pantalla de cualquier otro.

Red Hat Certified Engineer

142

El sistema X Window

Existen dos programas para controlar el acceso:

xhost - usando este programa puede dar permiso a cualquier usuario en una mquina dada a escribir grficos en su pantalla. Ejemplo: usted est sentado frente a una mquina llamada mercurio. Para permitir el acceso a cualquier programa en el host venus a su pantalla debera escribir el comando: # xhost +venus

xauth - es una autentificacin basada en cookies y mucho ms sofisticada. Con xauth se puede dar acceso a los usuarios de forma individual. Es mucho ms seguro que xhost. La autentificacin usa una cookie alojada en el fichero .Xauthority en el directorio personal de los usuarios. Si la mquina remota tiene una cookie vlida en este fichero entonces se garantizar el acceso. Para copiar la cookie desde la mquina frente a la que est sentado (mercurio) al host desde donde quiere lanzar el programa (venus) puede usar uno de los siguientes mtodos:
# xauth extract - mercurio:0.0 | ssh venus /usr/X11R6/bin/xauth merge

o
# scp ~/.Xauthority venus:

Al lanzar un programa (cliente) ocurre lo siguiente: 1. El cliente busca en la variable de entorno DISPLAY el servidor, si no intenta conectarse al servidor en este host. 2. El servidor comprueba si el cliente tiene permiso para enviarle "imgenes". Si el cliente est autorizado entonces el servidor dibujar la imagen en la pantalla. La variable de entorno DISPLAY tiene la siguiente sintaxis:

143

Ing. Ivn Ferreira

El sistema X Window
# export DISPLAY=nombre_host:nmero_display.nmero_pantalla

Un ejemplo para podra ser:


# export DISPLAY=mercurio:0.0

Utilizacin de X remoto con telnet


Telnet es un protocolo obsoleto e inseguro. Es recomendado que utilice SSH en su lugar. Sin embargo, en caso de contar con un host antiguo que no soporte SSH, puede utilizar este procedimiento. Suponiendo que se se encuentra actualmente con una sesin X en el equipo llamado mercurio.linux.com.py y desea ejecutar algo remotamente desde el equipo llamado venus.linux.com.py. Observe atentamente el nombre de host en el prompt. Debe indicar a su servidor X que clientes desde venus.linux.com.py tienen permiso para dibujar imgenes en su pantalla:
[root@mercurio ~]# xhost +venus.linux.com.py

Conctese al host remoto venus.linux.com.py:


[root@mercurio ~]# telnet venus.linux.com.py

Ahora ha iniciado sesin en venus, cada comando que ejecute ser ejecutado en venus. Debe exportar la variable display indicando que la pantalla estar en el host mercurio.linux.com.py:0.0:
[root@venus ~]# export DISPLAY=mercurio.linux.com.py:0.0

Inicie el programa. Por ejemplo:


[root@venus ~]# xterm &

Como resultado, el programa estar ejecutndose en el host venus, pero la interfaz grfica ser mostrada en host mercurio.

Red Hat Certified Engineer

144

El sistema X Window

Utilizacin de X remoto con SSH


La utilizacin de X remoto con SSH es mucho mas simple. Debe conectarse al equipo remoto utilizando la opcin -X de ssh:
# ssh -X usuario@host # xterm &

SSH se encarga de configurar automticamente las variables y los permisos de seguridad requeridos.

Sesiones grficas remotas (XDMCP)


Cuando se tienen distintas mquinas en una LAN y se desea aprovechar el poder y recursos de una de estas y ahorrar trabaj, una sesin grfica remota ser de gran utilidad.

Sesin grfica remota con GDM


GDM tiene una caracterstica poco usada, pero muy til. El mtodo ser de mucha utilidad suponiendo que se tiene un servidor central con buena cantidad de memoria y un buen microprocesador y lo ms nuevo en software, y en la red de rea local (LAN) se tienen una o varias mquinas con muy poco espacio en disco y/ o poco poder en el microprocesador, o resulta mucho trabajo instalar todo un sistema optimizado y personalizado. El objetivo ser entonces querrs que los usuarios puedan utilizar el servidor con mayor poder y recursos para que se ejecuten ah las sesiones grficas y as tener un mayor control en toda la red.

Configuracin de gdm para aceptar conexiones XDMCP


En el servidor, abra una terminal como root y ejecute el comando gdmsetup, vaya a la pestaa de Remota y seleccione de la lista desplegable Estilo: Igual que la entrada local.

145

Ing. Ivn Ferreira

El sistema X Window

Como medida de seguridad, deshabilite el acceso de root tanto local como remotamente en la pestaa seguridad, desmarcando la casilla Permitir la entrada remota al administrador del sistema. En los clientes, debe respaldarse y editarse el archivo /etc/X11/prefdm y debe hacerse que contenga nicamente lo siguiente, considerando que se debe poner la ruta completa de X:
#!/bin/sh /usr/bin/X -query <direccin_ip_del_Servidor>

Ejemplo:
#!/bin/sh /usr/bin/X -query 192.168.1.254

Deben reiniciarse los servidores X de las mquinas clientes. Las mquinas clientes vern a GDM ejecutndose como si se estuviese en el mismo servidor, y permitir iniciar GNOME o KDE o cualquier otro entorno grfico
Red Hat Certified Engineer 146

El sistema X Window

utilizado. Si cuenta con buenos adaptadores de red, ni siquiera se notar si se est en un cliente o en el servidor. Si lo prefiere, tambin puede iniciar el servidor de vdeo remoto simplemente ejecutando:
/usr/bin/X -query <direccin_ip_del_Servidor>

Desde el prompt de cualquier terminal.

Escritorio Remoto
En instalaciones empresariales los administradores de sistema tpicamente tienen que lidiar con un gran nmero de problemas bsicos en estaciones de trabajo de usuarios. Tomar el control remoto de una sesin de usuario para arreglar el problema al mismo tiempo que se entrena al usuario en cmo resolverlo por si mismos es una forma simple y eficiente de manejar este tipo de escenarios de soporte. Vino es un servidor VNC para GNOME. Permite que usuarios remotos se conecten a una sesin ejecutando GNOME a travs de VNC.

Configuracin de las preferencias de vino


En una terminal, ejecute el comando vino-preferences.

# vino-preferences

147

Ing. Ivn Ferreira

El sistema X Window

Marque la casilla de verificacin Permitir a otros usuarios ver mi escritorio, si desea que los dems usuarios controlen la sesin, marque la casilla Permitir a otros usuarios controlar tu escritorio. En las opciones de seguridad, si lo desea, marque la casilla de verificacin Pedir confirmacin si desea que sea notificado antes de que su sesin sea controlada remotamente Requerir que el usuario introduzca una contrasea si desea que el usuario remoto introduzca una antes de conectarse a su escritorio. Desde el equipo remoto, para conectarse a la sesin del usuario, debe ejecutar el comando:
# vncviewer mercurio.linux.com.py:0

Cambiando la resolucin de la pantalla desde la lnea de comandos


Si desea cambiar la resolucin de la pantalla desde la lnea de comandos, puede utilizar el comando xrandr. Si ejecuta el comando xrandr sin argumentos, se mostrarn las opciones de resolucin posibles. La resolucin actual est indicada con un *. Para cambiar la resolucin, ejecute el comando xrandr con la opcin -s <resolucin>, por ejemplo:
Red Hat Certified Engineer 148

El sistema X Window
# xrandr -s 800x600 # xrandr -s 1024x768 # xrandr -s 1280x1024

149

Ing. Ivn Ferreira

8 Software RAID

Software RAID

Tecnologa RAID
Los medios magnticos ms comunes para almacenar informacin son los dispositivos denominados discos duros. Bsicamente, los discos duros estn compuestos por platos magnticos que mantienen los impulsos elctricos que representan los datos, y cabezas de lectura/escritura que son componentes mecnicos mviles encargados de convertir los bits en pulsos electromagnticos y almacenarlos en los platos. Los discos duros son muy frgiles, es el componente de un sistema computacional que puede fallar con mayor facilidad. Esto es debido a los componentes mecnicos mviles, los cuales se desgastan y tienen un cierto tiempo de vida til. Adems variaciones en la corriente de alimentacin puede ocasionar que un disco se estropee, haciendo que los datos no puedan ser obtenidos. En 1987, la universidad de California Berkeley, public un artculo titulado A case for Redundant Arrays of Inexpensive Disks (RAID). Este artculo describa varios tipos de arreglos de discos, referido por el acrnimo de RAID. La idea bsica del RAID era combinar mltiples discos pequeos independientes, en un arreglo de discos el cual lograba un rendimiento superior al de un slo disco de mayor capacidad y mayor costo. Adicionalmente este arreglo de disco apareca al computador como una sola unidad lgica. Los arreglos de discos pueden ser tolerante a fallas por medio del almacenamiento de informacin redundante. Entendemos por tolerancia a fallos (o redundancia), a la posibilidad de acceder a la informacin almacenada en un arreglo de discos de forma ininterrumpida, an ante la prdida de uno de los discos que conforman el arreglo.

Software RAID
Software RAID implementa los distintos niveles de RAID en el cdigo del kernel. El kernel de Linux contiene un controlador MD que permite configurar una solucin de RAID totalmente independiente del hardware. El rendimiento de un arreglo por software depende de la carga y rendimiento de CPU del servidor.
151 Ing. Ivn Ferreira

Software RAID

Niveles de RAID
Los sistemas de RAID pueden ser configurados en distintos niveles que definen su arquitectura. Cada nivel posee caractersticas especiales de rendimiento, capacidad de almacenamiento y tolerancia a fallos.

RAID Nivel 0 Conjunto de bandas sin paridad


El RAID 0 (Data stripping without parity) incrementa el rendimiento de E/S dividiendo el dato en bandas y repartiendo el dato a travs de mltiples discos. Cada peticin de E/S es dividida en pequeos segmentos conocidos como bandas. El tamao de las bandas es conocido como chunk size o stripe size. Estas bandas de datos son repartidas entre los discos del arreglo, permitiendo que varios discos participen en una solicitud de E/S. En la siguiente figura se muestra la lgica de funcionamiento de un RAID 0.

Por ejemplo, en un RAID 0 que contiene tres discos, la primera porcin de una solicitud de E/S es escrita al disco 1, la segunda al disco 2, la tercera al disco tres y as sucesivamente hasta que todo el dato ha sido escrito a los discos. La relacin entre el tamao de la banda y el tamao promedio de las peticiones determinan si el RAID 0 maximiza la tasa de peticiones o la tasa de transferencia de datos.

Red Hat Certified Engineer

152

Software RAID

El mayor beneficio del RAID 0 es que balancea la carga de E/S entre todos los discos en el arreglo. Esto incrementa el rendimiento del sistema eliminando el cuello de botella que ocurre frecuentemente cuando el dato es concentrado en un slo disco. Un RAID 0 puede contener solamente discos de la misma capacidad. La capacidad efectiva del arreglo es la combinacin del tamao de todos los discos que lo conforman, por lo tanto si combina 5 discos de 10 GB tendr 50 GB disponibles para almacenar informacin. El RAID 0 no proporciona tolerancia a fallos, la falla en cualquier disco del arreglo provoca la prdida del arreglo.

RAID 1 Espejado de discos


Esta tecnologa ofrece la mayor confiabilidad entre las tecnologas de RAID. La estrategia de RAID 1 (Disk mirroring) automticamente duplica la informacin en dos o mas discos idnticos. En la siguiente figura se muestra la lgica de funcionamiento de un RAID 1.

En RAID 1 es posible mantener el acceso a los datos ante la falla de un disco, debido a que la informacin se encuentra exactamente duplicada. Cuando se escribe un dato a un arreglo en RAID 1, el dato es escrito en simultneo a los discos espejados, esto ofrece un rendimiento de escritura igual a la de un nico disco sin RAID.
153 Ing. Ivn Ferreira

Software RAID

Cuando un dato es ledo es descompuesto de tal forma que una porcin del dato es ledo de cada copia del espejo en simultneo, por lo tanto, el rendimiento de lectura es el doble de un disco sin RAID. Como el arreglo est configurado de tal forma a que los datos sean copiados de forma exactamente igual a cada disco del espejo, la capacidad disponible en el arreglo es igual a la capacidad de uno discos que conforman el arreglo. Por ejemplo, si se crea un RAID 1 con 2 discos de 1 GB, la capacidad total utilizable es 1 GB. Si se crea un RAID 1 con 3 discos, la capacidad total utilizable sigue siendo 1 GB, sin embargo, esta configuracin permite la prdida de dos discos en lugar de uno.

RAID 5 Conjunto de bandas con paridad distribuida


El RAID 5 (Data stripping with distributed parity) utiliza la tecnologa de distribucin de bandas del RAID 0 para aumentar el rendimiento E/S y utiliza paridad distribuida para asegurar la disponibilidad de los datos. El RAID 5 divide las peticiones de E/S en pequeas bandas que son repartidas entre los discos. El RAID 5 adems crea bandas de paridad de datos y los reparte entre todos los miembros del RAID, en lugar de utilizar un disco de paridad dedicado como el RAID 3 o RAID 4, eliminando el cuello de botella producido por ste. Esta paridad de datos es derivada matemticamente de los datos de E/S y posibilita la reconstruccin de los datos en caso de que un disco falle. Es posible ajustar el tamao de la banda (chunk size). La relacin entre el tamao de la banda y el tamao promedio de las peticiones determinan si el arreglo maximiza la tasa de peticiones o la tasa de transferencias. En la siguiente figura se muestra la lgica de funcionamiento de un RAID 1.

Red Hat Certified Engineer

154

Software RAID

El RAID 5 requiere como mnimo tres discos idealmente del mismo tamao, tanto los datos como la paridad es distribuida a travs de los discos. La paridad es calculada utilizando operaciones XOR (exclusive OR). La capacidad utilizable del arreglo es: C = T * N -1 C: Capacidad. T: Tamao del disco mas pequeo del arreglo. N: Nmero de discos. Para mayor rendimiento distribuya los discos entre los puertos de los controladores de forma pareja para obtener mltiples vas de acceso.

RAID 6 Conjunto de bandas con doble paridad distribuida


RAID 6 (Data stripping with dual distributed parity) es muy similar al RAID 5, sin embargo, utiliza doble paridad permitiendo el fallo simultneo de dos discos en el mismo arreglo. Sin embargo, el rendimiento de un RAID 6 es menor al de un RAID 5 debido al trabajo adicional de calcular y escribir la doble paridad.
155 Ing. Ivn Ferreira

Software RAID

La siguiente figura muestra la lgica del funcionamiento de un RAID 6.

El RAID 6 es til cuando el rendimiento de acceso a los datos no es prioridad y los discos son de gran tamao. Ante la falla de discos de gran tamao, el proceso de reconstruccin del arreglo ante el reemplazo del disco podra demorar bastante tiempo, incrementando las posibilidades del fallo de un segundo disco del mismo arreglo, el RAID 6 puede resolver esta problemtica debido a su doble paridad. El RAID 6 requiere como mnimo cuatro discos idealmente del mismo tamao, tanto los datos como la paridad es distribuida a travs de los discos. La paridad es calculada utilizando operaciones XOR (exclusive OR). La capacidad utilizable del arreglo es: C = T * N -2 C: Capacidad. T: Tamao del disco mas pequeo del arreglo. N: Nmero de discos.

Configuracin de software RAID


Durante la instalacin del sistema operativo puede utilizar el asistente de
Red Hat Certified Engineer 156

Software RAID

particiones Disk Druid para configurar software RAID. Primero, deber crear las particiones de tipo Software RAID y posteriormente utilizar el botn RAID para crear el tipo de RAID deseado. Por ejemplo, para crear un RAID 1 para el sistema de archivos /boot, necesitar al menos dos discos duros. En cada disco duro, cree una particin de 150 MB de tipo software RAID. Primero cree la particin de tipo Software RAID en el primer disco duro:

Luego cree la particin de tipo Software RAID en el segundo disco duro:

157

Ing. Ivn Ferreira

Software RAID

Con las particiones creadas, haga clic sobre el botn RAID y seleccione la opcin Crear un dispositivo RAID

Seleccione el tipo de sistema de archvios ext3 y el punto de montaje correspondiente. Asegrese de seleccionar correctamente el Nivel de RAID de la lista desplegable.

Red Hat Certified Engineer

158

Software RAID

Deber realiza el mismo procedimiento para todos los sistemas de archivos.

Una vez finalizada la instalacin, deber asegurarse que GRUB es instalado adems en el segundo disco. Para ello, ejecute los siguientes comandos:
# grub grub> root (hd0,0)

159

Ing. Ivn Ferreira

Software RAID
grub> grub> grub> grub> setup (hd0) root (hd1,0) setup (hd1) quit

El dispositivo (hd0,0) sera la /dev/sda1 y (hd1,0) sera /dev/sdb1, las particiones que contienen el sistema de archivos /boot. El dispositivo (hd0) y (hd1) seran el MBR de /dev/sda y /dev/sdb respectivamente.

Verificacin del estado de los dispositivos RAID


El estado de los arreglos puede determinarse consultando archivo /proc/mdstat. Debe entender la forma de leer el archivo. Por ejemplo:
Personalities : [raid1] read_ahead 1024 sectors md5 : active raid1 sdb5[1] sda5[0] 4200896 blocks [2/2] [UU] md6 : active raid1 sdb6[1] sda6[0] 2104384 blocks [2/2] [UU] md7 : active raid1 sdb7[1] sda7[0] 2104384 blocks [2/2] [UU] md2 : active raid1 sdc7[1] sdd8[2] sde5[0] 1052160 blocks [2/2] [UU] unused devices: none

Analizaremos el dispositivo md5 el cual es un RAID 1. Fjese en el valor [N/N] que para el dispositivo md5 es [2/2]. El primer valor indica la cantidad de dispositivos que conforman el arreglo, el segundo la cantidad de dispositivos activos en ese momento. El nmero [N] que sigue a cada dispositivo es el papel que cumple en el arreglo, para el dispositivo md5 tenemos sdb5[1] sda5[0]. Los miembros activos del arreglo tienen un nmero menor a la cantidad de dispositivos que conforman el arreglo, en este caso 2. Cualquier dispositivo con valor mayor o igual a la cantidad de dispositivos que conforman el arreglo son discos spare. El dispositivo md5 no contiene ningn disco spare.
Red Hat Certified Engineer 160

Software RAID

Ahora analicemos el dispositivo md2, el cual esta compuesto por dos miembros activos segn lo indica [2/2]. Los miembros activos son sde5[0] sdc7[1], por tener un valor de funcin menor a la cantidad de miembros del arreglo segn lo indica el [0] y el [1]. El dispositivo sdd8[2] tiene un valor de funcin igual al de la cantidad de miembros activos del arreglo [2], por lo tanto, este disco es un spare. Adems si existe un fallo, el dispositivo que fallo se ser marcado con una (F).

Gestin de arreglos con el comando mdadm


El comando mdadm es utilizado para crear o gestionar los arreglos posteriormente a la instalacin. La sintaxis general del comando mdadm es la siguiente:
mdadm [modo] <dispositivo raid> [opciones] <discos que componen>

El modo crear es utilizado para crear un nuevo arreglo. En el siguiente ejemplo utilizaremos mdadm para crear un RAID 1 /dev/md5 compuesto de /dev/sdc1 y /dev/sdd1. Deber crear las particiones con el comando fdisk y establecer el tipo Software RAID (cdigo fd).
# mdadm --create --verbose /dev/md5 --level=1 --raid-devices=2 /dev/sdc1 /dev/sdd1

La opcin --level especifica el tipo de RAID a crear. Cada opcin de mdadm adems tiene una forma corta menos descriptiva pero ms fcil de digitar. Por ejemplo, el siguiente comando utiliza la forma corta:
# mdadm -Cv /dev/md0 -l1 -n2 /dev/sdc1 /dev/sdd1

La opcin -C selecciona el modo Create (crear), la opcin -v es para obtener mayor descripcin de lo que sucede. La opcin -l especfica el nivel del RAID y la opcin -n la cantidad de discos que lo conforman. Utilizando el modo de gestin manage mode puede agregar y remover discos de
161 Ing. Ivn Ferreira

Software RAID

un arreglo. Esto es necesario para remover discos fallados, agregar discos spare y agregar discos de reemplazo. El modo de gestin puede ser utilizado para marcar un disco como fallado. Para forzar el fallo de un disco de un arreglo, ejecute el comando:
# mdadm /dev/md0 -fail /dev/sdc1

Luego, para remover un disco de un arreglo:


# mdadm /dev/md0 -remove /dev/sc1

Para agregar un disco a un arreglo:


# mdadm /dev/md0 -add /dev/sdc1

Si el RAID se encuentra degradado, iniciar la reconstruccin de la informacin al disco, de lo contrario el disco ser agregado como un disco spare para el arreglo.

Red Hat Certified Engineer

162

You might also like