You are on page 1of 129

SOFTWARE DE

COMUNICACIONES

GUÍA DEL PROFESOR


SECRETARÍA DE EDUCACIÓN PÚBLICA
SUBSECRETARÍA DE EDUCACIÓN SUPERIOR E INVESTIGACIÓN CIENTÍFICA
SUBSISTEMA DE UNIVERSIDADES TECNOLÓGICAS
COORDINACIÓN GENERAL DE UNIVERSIDADES TECNOLÓGICAS
Lic. Hipólito López Miranda
ELABORÓ: REVISÓ: Lic. María Reyna Guillermo Guillermo
Ing. Eligio Cachón Menéndez

FECHA DE ENTRADA EN
MAYO 2003
VIGOR:
APROBÓ:

Revisión no. 0. Fecha de revisión: Página 1 de 1291 F-CADI-SA-MA-40-GA-A


2
I. DIRECTORIO

DR. REYES TAMEZ GUERRA


SECRETARIO DE EDUCACIÓN PÚBLICA

DR. JULIO RUBIO OCA


SUBSECRETARIO DE EDUCACIÓN SUPERIOR E INVESTIGACIÓN CIENTÍFICA

DR. ARTURO NAVA JAIMES


COORDINADOR GENERAL DE UNIVERSIDADES TECNOLÓGICAS

RECONOCIMIENTOS
LIC. HIPOLITO LOPEZ MIRANDA UNIVERSIDAD TECNOLÓGICA DE TABASCO
ING. ELIGIO CACHON MENENDEZ UNIVERSIDAD TECNOLÓGICA DE TABASCO

TELEMÁTICA R.  2004
ESTA OBRA, SUS CARACTERÍSTICAS Y DERECHOS SON PROPIEDAD DE LA: COORDINACIÓN GENERAL DE
UNIVERSIDADES TECNOLÓGICAS (CGUT) FRANCISCO PETRARCA No. 321, COL. CHAPULTEPEC MORALES,
MÉXICO D.F.
LOS DERECHOS DE PUBLICACIÓN PERTENECEN A LA CGUT. QUEDA PROHIBIDA SU REPRODUCCIÓN
PARCIAL O TOTAL POR CUALQUIER MEDIO, SIN AUTORIZACIÓN PREVIA Y POR ESCRITO DEL TITULAR DE
LOS DERECHOS.
ISBN (EN TRÁMITE)
IMPRESO EN MÉXICO.

3
II. ÍNDICE

# CONTENIDO PAGINA

I. DIRECTORIO Y RECONOCIMIENTOS 2
II. ÍNDICE 3
III. INTRODUCCIÓN DE LA ASIGNATURA 4
IV.I INTRODUCCIÓN A LA ADMINISTRACIÓN DEL SISTEMA
OPERATIVO LINUX. 35
IV IV.II ADMINISTRACION DE SISTEMAS DE LINUX 40
IV.III ADMINISTRACIÓN DE REDES LINUX 57
IV.XI ADMINISTRACIÓN DE SERVIDOR LINUX 72
V REFERENCIAS 119
VI GLOSARIO 119
(*) Inicio de los cuatro primeros capítulos del semestre uno de CISCO

4
III. INTRODUCCIÓN DE LA ASIGNATURA.

El software y las computadoras han pasado a ser parte de nuestra vida cotidiana, hablar de
ellos es normal entre las personas. El software propietario ha sido la puerta de desarrollo de
muchas industrias y países. Pero también ha significado el rezago de otros tantos, hoy en día un
tema que adquiere mayor importancia es el software libre.

El software libre ha tomado importancia debido a la carestía del software propietario lo cual
lo hace en ocasiones difícil de adquirir, por lo cual la alternativa para usar software, es el software
libre, el cual no tiene costo alguno y ofrece la oportunidad de que cualquier persona que lo utilice
corrija cualquier defecto en este y lo libere entre los usuarios de este. Otra ventaja que ofrece el
software libre radica en que nos ofrece la oportunidad de agregarle más funcionalidad a dicho
software.

Entre el software libre destaca el sistema operativo Linux, el cual es elegido por gran parte
de los desarrolladores de software libre para ser la plataforma de funcionamiento por excelencia de
sus productos. En la actualidad existen más de 4000 aplicaciones gratuitas para este sistema
operativo, lo cual ha hecho que hoy en día sea muy importante. Siendo que las empresas y
personas que utilizan por lo menos una computadora migren sus roles de trabajos a este
revolucionario sistema operativo.

En este documento se presentan los temas y elementos necesarios para trabajar con el
sistema operativo Linux, divididos en 4 unidades las cuales se describen a continuación:

Unidad I, en esta se tratan los temas básicos de funcionamiento de los sistemas operativos
y fundamentos básicos del sistema operativo Linux.

Unidad II, se enfoca al manejo del sistema de archivos, montaje de dispositivos, creación y
manejo de cuentas de usuarios en el sistema operativo Linux.

Unidad III, se enfoca al manejo de los conceptos y servicios básicos de redes en el sistema
operativo Linux.

Unidad IV, hace énfasis en el manejo e instalación de los servicios más importantes en el
sistema operativo Linux.

5
IV
.UNIDAD
ES

UN
IDADI

I INTRODUCCIÓN A LA ADMINISTRACIÓN DEL SISTEMA OPERATIVO LINUX.

IN
TRODUC
CIÓ
N

El propósito de esta primera unidad es conocer los fundamentos de un sistema de operativo,


conocer la historia del sistema operativo Linux e identificar la importancia que ha adquirido para las
empresas y personas.
Identificando la estructura, la instalación y comandos básicos del sistema operativo Linux.

OBJETIVO Y CRITERIOS DE APRENDIZAJE Página


Conocimiento de la historia del sistema operativo Linux, identificar la estructura del
sistema de archivos de Linux.
• Definir las principales funciones de todo sistema operativo.
• Identificar las diferentes estructuras de sistemas operativos.
• Conocer la función de cada directorio de la estructura de Linux.
• Conocer los diferentes tipos de instalación de Linux.
• Conocer el uso de los comandos básicos del sistema operativo Linux.
DEMOSTRACIÓN DE HABILIDADES PARCIALES (RESULTADO DE
APRENDIZAJE)

• Definirá el concepto de sistema operativo


• Definirá e Identificará las diferentes estructuras de los sistemas operativos.
• Identificará los diferentes tipos de administración de sistemas operativos.
• Identificará la importancia y uso de Linux en las empresas.
• Instalará el sistema operativo Linux en una computadora
• Usará los comandos básicos de Linux en un entorno Linux.

6
Sin su software, una computadora es básicamente un montón de fierros sin utilidad.
Con su software, una computadora puede almacenar, procesar y recuperar información,
hallar errores de ortografía en manuscritos, realizar juegos de video y llevar a cavo
muchas otras actividades importantes para justificar la inversión. El software, de la
computadora puede dividirse de modo general en dos clases: los programas del sistema,
que manejan la operación de computadoras misma, y los programas de aplicación, que
resuelven problemas de sus usuarios. Lo más fundamental de todos los programas del
sistema es el sistema operativo. Que controla todos los cursos de la computadora ofrece
la base sobre la cual puede escribirse los programas de aplicación.

1.1 Sistema operativo


Muchos usuarios de computadoras han tenido algunas experiencias con un sistema
operativo, pero es difícil aclarar con exactitud lo que es un sistema operativo. Parte del
problema es que los sistemas operativos realizan dos básicamente no relacionadas,
según quien de la plática, se escucha mas cerca de una función o de la otra. Ahora
analizaremos ambas funciones.

1.1.1 Funciones del sistema operativo

1.1.1.1 El sistema operativo como una máquina ampliada

Como se menciona antes, la arquitectura (conjunto de instrucciones, organización


de la memoria, E / S y estructura del bus) de muchas computadoras en el nivel del
lenguaje de maquina es primitiva y difícil de programar, especialmente con la entrada el
programa que oculta la verdad del hardware al programador y representa una vista simple
y agradable de los archivos nominados que pueden leerse y escribirse, es desde luego, el
sistema operativo. A si como el sistema operativo resguarda al programador del hardware
del disco y presenta una interfaz simple orientada al archivo, también disimula mucho del
trabajo displicente concerniente a interrupciones, relojes o cronómetros, manejo de la
memoria y otras características de bajo nivel. En cada caso, la abstracción que se
presenta al usuario del sistema operativo es más simple y sencilla de utilizar que lo que el
hardware implica.

En esta visión, la función del sistema operativo es la de presentar al usuario con el


equivalente de una maquina ampliada o maquina virtual que sea mas fácil de programar
7
que el hardware implícito. Como el sistema operativo logra esta meta es una larga historia,
la cual se estudiara con detalle en todo el libro.

1.1.1.2 El sistema operativo como manejador de recursos

El concepto del sistema operativo que afirma que principalmente ofrece a sus
usuarios una interfaz adecuada es una visión descendente (o de arriba hacia abajo). Una
alternativa , la visión ascendente ( o de abajo hacia arriba ), sostiene que el sistema
operativo se encuentre ahí para controlar toda las piezas de un sistema complejo o las
computadoras modernas que constan de procesadores, memorias, relojes, discos,
terminales, unidades de cintas magnética , interfases en red, impresoras de rayos láser y
una amplia variedad de dispositivos adicionales. En la visión alternativa, el trabajo del
sistema operativo consiste en ofrecer una distribución ordenada de los procesadores,
memorias y dispositivos de E/ S entre los diversos programas que compiten por ellos.

Imagínese lo que sucedería si tres programas que se ejecutan en alguna


computadora tratarán de imprimir su salida en forma simultánea en la misma impresora.
Las primeras líneas de la impresión podía ser del programa 1, las siguientes del programa
2, después algunas del programa 3, etc. El resultado seria el caos. El sistema operativo
puede poner orden al caos potencial separando toda la salida destinada a la impresora en
disco. Cuando un programa termina su ejecución, el sistema operativo puede copiar
entonces salida del disco donde se haya almacenado para la impresora. Mientras que al
mismo tiempo el otro programa puede proseguir produciendo mas salida, sin pensar en el
hecho de que la salida en realidad no se dirige (todavía) a la impresora.

Cuando una computadora tiene múltiples usuarios, la necesidad de manejar y


proteger la memoria, dispositivos de E /S y otros recursos es mas evidente. Esta
necesidad se presenta por que frecuentemente se necesita que los usuarios compartan
recursos costosos como la unidad de cinta y maquinas fototipográficas. Además de los
aspectos económicos, a menudo también en necesario que los usuarios que trabajan en
conjuntos compartan información. En resumen esta visión del sistema operativo sostiene
que su tarea principal consiste en llevar el control de quien utiliza cual recurso, conceder
requisiciones de recursos, explica el uso e intercede en requisiciones conflictivas de
diferentes programas y usuarios.

8
1.1.2 Estructuras de sistemas operativos

1.1.2.1 Sistemas monolíticos

Siendo esta la organización mas común, este método podría bien subtitularse “el
gran lío”, ya que no exhibe una estructura. El sistema operativo se escribe como un
conjunto de procedimientos, cada uno de los cuales puede llamar a cualquiera de los otros
siempre que lo necesite. Cuando se emplea esta técnica, cada procedimiento del sistema
tiene una interfaz bien definida en términos de parámetros y resultados, y cada una tiene
la libertad de llamar a cualquiera otra, si la ultima ofrece algún cálculo útil que la primera
necesite.

Para construir el programa objeto real del sistema operativo cuando se usa este
método, se cumplían todos los procedimientos individuales o archivos que contienen los
procedimientos y después se combinan todo en un solo archivos objeto con el enlazador.
En términos de ocultamiento de información, esencialmente no existe ninguno; todo
procedimiento es visible para todos (al contrario de una estructura que contiene módulos o
paquetes, en los cuales mucha de la información es local a un modulo y solo se puede
llamar puntos de registros designados oficialmente del exterior del modulo). Sin embargo,
aun en sistema monolíticos es posible tener cuando menos una pequeña estructura. Los
servicios ( llamadas al sistema) proporcionados por el sistema operativo se solicitan al
colocar los parámetros en sitios bien definidos, como en registro o en la pila y después
ejecutar una instrucción de trampa especial conocida como llamada de kernel o llamada
supervisora.

Esta instrucción cambia la maquina del modulo de usuario al modo kernel


(también conocido como modo supervisor) y transfiere el control al sistema operativo,
que se muestra como el evento (1)

El sistema operativo examina después los parámetros de la llamada para


determinar que llamada al sistema se efectuara, después, el sistema operativo indiza en
una tabla que contiene el canal k. Un apuntador al procedimiento que realiza la llamada al
sistema k.

9
Esta operación, que se muestra como el evento (3), identifica al procedimiento de
servicios, que después es llamado. Por ultimo, se termina la llamada al sistema y el control
se devuelve al programa del usuario.
Esta organización sugiere una estructura básica del sistema operativo:
• Un programa central que invoque el procedimiento de servicio solicitado.
• Un conjunto de procedimiento de servicios que realice las llamadas al sistema.
• Un conjunto de procedimientos de uso general que ayude a los procedimientos
de servicios.

1.1.2.2 Sistema en estratos

Una generalización del método consiste en organizar el sistema operativo como


una jerarquía de estratos, cada uno construido arriba del que esta debajo de el. El primer
sistema construido en esta forma fue el sistema THE que se fabrico en technische
hogeschool Eindhoven de Holanda por E. W dijkstra (1968) y sus alumnos. El sistema
THE era un sistema de lote simple para una computadora alemana, electro lógica X8, que
tenia 32K de palabras de 27 bits (los bits costosos en aquellos días).

El sistema tenía 6 estratos, como se muestra en la tabla 1.1 el estrato o trabajaba


con la distribución del procesador, cambiando entre procesos cundo ocurrían
interrupciones a los relojes expiraban. Sobre el estrato o, el sistema costaba de procesos
secuénciales, cada uno de los cuales podía programarse sin tener que preocuparse por el
hecho de que múltiples procesos estuvieran corriendo en un solo procesador. En otras
palabras, el estrato o ofrecía la multiprogramación básica de la CPU.

Tabla 1.1 sistema operativo en estratos


5 Operador de THE
4 programa del usuario
3 Administración de entrada / salida
2 Comunicación entre el operador y el proceso
1 Administración de la memoria y el tambor
0 Distribución del procesador y multiprogramación.

El estrato 1 realizaba el manejo de la memoria. Este distribuía espacio para


procesos en la memoria central y un tambor de 512k palabra que usaba para contener
parte del proceso (paginas) para las cuales no habían espacio en la memoria central.
Sobre el estrato 1, los procesos no tenían que preocuparse de si estaban en la memoria o
10
el tambor; el software del estrato uno se hacia cargo de asegurar que las paginas se
trajeran a la memoria siempre que se necesitaran.

El estrato 2 manejaba la comunicación entre cada proceso y la consola del


operador. Sobre este estrato cada proceso tenía en forma efectiva su consola de
operador. El estrato 3 se hacia cargo de manejar los dispositivos de E / S y de preparar la
información en flujo que entraba y salía de ellos. Sobre el estrato 3 cada proceso podía
trabajar con dispositivos de E / S abstractos con propiedades agradables, en vez de
dispositivos reales con muchas peculiaridades.

El estrato 4 era donde se encontraba los programas de los usuarios. No tenían que
preocuparse por los manejos de los procesos, memorias, consola o E / S. El proceso
operador del sistema se lo realizaba en el estrato 5.

Una generalización adicional del concepto de estrato estaba presente en el sistema


MULTICS. En lugar de estrato, MULTICS se organizaba como una serie de anillos
concéntricos, donde los internos eran más privilegiados que los externos. Cuando un
procedimientos situado en un anillo externo. Deseaba llamar un procedimiento de un anillo
externo, este tenia que hacer equivalente de una llamada al sistema, o sea, una
instrucción TRAP cuyos parámetros se verificaban cuidadosamente respeto a su validez

1.1.2.3 Máquinas virtuales


Las emisiones iniciales os / 360 eran estrictamente sistemas de grupo. No obstante,
muchos usuarios del sistema 360 deseaban tener tempo compartido, de modo que
diversos grupos, tanto como dentro como fuera de IBM decidieron escribir sistemas como
de tiempo compartido para el. El sistema de tiempo compartido oficial de IBM, TSS / 360,
se creo tarde y cuando finalmente llego era tan grande y lento que muy pocos sitios
hicieron la conversación a el. Por ultimo se abandono después de que su creación había
consumido más de 50 millones de dólares (Graham, 1970). Pero un grupo de personas del
IBM S scientific center en cambridge, MA produjo un sistema radicalmente diferente que
IBM acepto por ultimo como producto y que ahora se utiliza ampliamente.

Este sistema, original mente llamado CP / CMS y ahora llamado VM / 370 (meyer y
se wrigth, 1970; wrigth y mackinnon, 1970), se basaba en una situación astuta: un sistema
de tiempo compartido ofrece (1) multiprogramación y (2) una maquina extendida con una

11
interfaz mas adecuada que el hardware simple. La esencia de VM/370 consiste en
separar completamente estas dos funciones.

El corazón del sistema, conocido como monitor de la maquina virtual, corre en el


hardware y realiza la multiprogramación, ofreciendo no una, sino varias maquinas virtuales
para el siguiente estrato hacia arriba, como se muestra en la figura 1- 21. NO obstante, a
diferencia de todo los otros sistemas operativos, esta maquina virtuales no son maquinas
extendidas, con archivos y otras características atractivas. En su lugar, son copias exactas
del hardware siempre, incluyendo el método de kernel / usuario, E / S, interrupciones y
todo lo demás que tiene la maquina real.

Puesto que cada maquina virtual es identifica al hardware real, cada una puede
correr cualquier sistema operativo que correrá directamente en el hardware. De hecho,
diferente maquinas virtuales pueden, y por lo general lo hacen, ejecutar diferentes
sistemas operativo. Algunas corren algunos de los descendientes de os /360 en
procesamiento de grupo, mientras que otros corren un simple sistema interactivo de un
solo usuario llamado CMS (sistema con monitor convencional) para usuario de tiempo
compartido.

Diferentes maquinas virtuales pueden, y por lo general lo hacen, ejecutar diferentes


sistemas operativos. Algunas corren de los descendientes de os/ 360 en procesamiento de
grupo, mientras que otros corren un simple sistema interactivo de un solo usuario llamado
CMS (sistema con monitor convencional) para usuario del tiempo compartido.

1.1.2.4 Modelo cliente / servidor

Una tendencia en los sistemas operativos modernos consiste en tomar la idea


desplazar códigos o estratos superiores, pero en mayor proporción, y eliminar lo mas que
sea del sistema operativo, dejando un kernel mismo. El método general consiste en
implementar la mayoría de las funciones del sistema operativo en procesos del usuario.
Para solicitar un servicio, como la lectura de un bloque de un archivo, un proceso del
usuario (ahora conocido como proceso del cliente) envía la solicitud de un proceso
servidor, que después realiza el trabajo y después resuelve las respuestas.

En este modelo, todo lo que el kernel hace es manejar la comunicación entre cliente
y servidores. Al dividir el sistema operativo en partes, cada uno de los cuales se encarga

12
del manejo de una faceta del sistema, como el servicio del archivo, el servicio del proceso,
servicio de la terminal o el servicio de la memoria, cada parte se vuelve pequeña y difícil
de manejar, como todo los servidores corren como proceso en modo de usuario, y no en
modo de kernel, no tienen acceso directo al hardware. Como consecuencia, si se activa un
error oculto en el servidor del archivo, el servicio al archivo puede fracasar, pero esto por
lo general no hará fallar a toda la maquina.

Otra ventaja del modelo del cliente / servidor es su adaptabilidad para utilizarse en
sistemas distribuidos. Si un cliente se comunica con un servidor mediante la emisión del
mensaje, el cliente no necesita saber si el mensaje se maneja en forma local o en su
maquina, o bien si se envió a través de una red o de un servidor en una maquina remota.
Hasta donde consiste al cliente, sucede lo mismo en ambos casos: se envió una solicitud y
se devolvió una contestación.

La imagen que se pinto arriba de un kernel que maneja solo el trasporte de un


mensaje de clientes a servidores y de regreso no es completamente real. Algunas
funciones del sistema operativo (como la carga de comandos en los registros del
dispositivo físico de E / S) son compiladas, si no es que imposibles, de ejecutar a partir de
programas en el espacio del usuario. Existen dos maneras de manejar este programa.
Una de ellas consiste en hacer unos procesos importantes (por ejemplo los manejadores
del dispositivo de E / S) corran en realidad en modo de kernel, con accesos completo a
todo el hardware, pero que se siga comunicando con otros procesos mediante el uso del
mecanismo de mensajes normal.

13
1.2 Historia del sistema operativo Linux

Hoy en día el sistema operativo Linux ha revolucionado el mundo de la informática y


de las empresas que tienen sus giros de negocios apoyados en las computadoras. Linux
es familia del sistema operativo Unix. En los inicios de los 90´s el celebre informático
Andrew Tanenbaum escribió su libro diseño e implementación de sistemas operativos e
incluyó en su publicación el sistema operativo Minix de su propia invención. Minix es una
implementación del sistema operativo Unix para computadoras personales y cada persona
que compra el libro de Andrew Tanenbaum puede compilar y utilizar este sistema
operativo. El problema de Minix es que es una versión muy limitada de Unix y el señor
Tanenbaum no autorizaba al dueño de cada libro vendido su modificación, razón por la
cual muchas personas apasionadas en el tema de los sistemas operativos quedaron
descontentos.

En 1991 un joven finlandés de nombre Linus Benedict Torvalds, estudiante de la


Universidad de Helsinki, en aquel entonces de 23 años inició un proyecto personal para
hacer del sistema operativo Minix una replica exacta de Unix, naciendo de este proyecto lo
que hoy conocemos como Linux, En su afán de desarrollo perfeccionó tanto este software
que llegó a superar en funcionalidad a Minix. Linus Torvals puso este sistema operativo a
disposición de todos los programadores del mundo, solicitando que en cada actualización,
corrección de errores y/o mejoras que ellos hicieran en su funcionamiento dejaran el
software en algún sitio desde el cual se pudiese evaluar las mejoras hechas a este, para
posteriormente ser liberado a los usuarios de Linux.

Este proyecto ha revolucionado al mundo informático puesto que programadores de


todo el mundo han seguido respondiendo a los llamados de Linus Torvals alcanzando
dimensiones inesperadas y llevando al sistema operativo Linux a ocupar un lugar de honor
entre los sistemas operativos por excelencia.

Linux se convirtió en un sistema mucho más fácil de instalar y configurar, y empezó


a coger fama en todo el mundo. Al tener en muy poco tiempo miles de usuarios, las
nuevas versiones de Linux salían casi semanalmente. En el presente hay millones de
usuarios y gracias a ellos y a sus aportaciones, Linux crece sin respiro alguno. La última
versión del kernel es la 2.4.0 test 4.

14
Como todos los sistemas operativos, Linux también dispone de un logotipo.
Torvalds decidió que la imagen que representaría a Linux sería la de un pingüino. En casi
todas las páginas Web relacionadas con Linux se puede se puede hallar el logotipo y ya
ha sido aceptado como representante de este sistema. No se sabe con certeza cuándo
diseñó el logotipo de su sistema, pero se dice que fue al principio del proyecto Linux.

Linux había nacido para ser un sistema operativo del tipo Posix (variante de Unix),
totalmente gratuito para el usuario y con libre acceso al código fuente. Estas tres ideas
fueron las que lo han convertido en el sistema con mejor rendimiento, más fiable, veloz y
con más desarrolladores del mundo. Pronto se ha colocado cerca de los grandes los
grandes sistemas operativos como Unix en el ámbito de servidores de comunicaciones,
especialmente utilizado en empresas proveedoras de acceso a Internet.

Las versiones más recientes de Linux ofrecen la posibilidad de convertir nuestro


ordenador personal en una potente estación de trabajo. Puede funcionar como estación de
trabajo personal dándonos la posibilidad de acceder a las prestaciones que ofrece Unix y
cualquier otro sistema operativo. Además, puede configurarse para funcionar como
estación de desarrollo, proveedores de acceso a Internet, y muchas otras opciones.

También es interesante convertir un ordenador personal en una estación de


desarrollo. Linux dispone de los siguientes lenguajes de programación gratuitos: GNU C,
GNU C++, GNU Fortran 77, ADA, Pascal, Perl, Modula2 and 3, TCL/Tk, Scheme and
Small-Talk/X. Todos ellos vienen con extensas librerías de código fuente.

Muchos proveedores de acceso a Internet emplean Linux como sistema operativo


para ofrecer soporte a sus usuarios. Al instalar Linux, también se instalan los siguientes
paquetes, World Wide Web, usenet news, email, ftp, etc... Éstos pueden ser configurados
para dar ofrecer a los usuarios los servicios disponibles en Internet.

Linux como sistema operativo gratuito posee unas características que le hacen
único. Algunas de las más importantes son: multitarea, memoria virtual, los drivers TCP/IP
más rápidos del mundo, librerías compartidas, multiusuario (cientos de usuarios pueden
utilizar un ordenador a la vez, que ya estén en una red, Internet, terminales, etc.). Linux
trabaja en modo de protección (al contrario de Microsoft Windows) y soporta multitarea a
32 y 64 bits.

15
Como puede observarse Linux surge como producto, gracias al esfuerzo y
entusiasmo de muchos programadores y expertos informáticos de todas las partes del
mundo y que gracias a los recursos de internet pueden comunicarse.

En la actualidad la fama de Linux lo ha llevado a ser la competencia de los sistemas


operativos de Microsoft, puesto que es muy barato su precio, aunque inicialmente fue
software libre hoy; algunas empresas comercian distribuciones de Linux como son las
siguientes:
• Mandrake

• Redhat

• Suse

• Corel

• Slackware

• Calderas

• Turbo Linux.

El costo de cada una de estas distribuciones es económico comparándolo con el


costo de sistemas operativos del tipo de Novell y Microsoft, razón por la cual a pesar de
ser comerciales estas distribuciones son accesibles para las empresas inclusive para los
estudiantes. Existe una distribución gratuita de Linux y esta se llama Linux Debian, la cual
no le pide nada a las distribuciones comerciales, puesto que esta todavía es apoyada por
la mayoría de los desarrolladores del mundo y por lo mismo esta en constantes mejoras.

1.3 Arquitectura de Linux


El sistema operativo Linux tiene dos componentes esenciales:

• El shell

• El kernel

o Gestor de procesos.

o Gestor de memoria.

16
o Sistemas de archivos virtual.

o Servicios abstractos de red.

o Administración de los derechos de accesos.

Linux desde una vista externa aparenta ser un sistema operativo monolítico, pero
para minimizar su naturaleza Linux soporta la carga dinámica de módulos del kernel los
cuales representan alguna funcionalidad del kernel, que puede ser cagada después de
iniciado el sistema.

En la figura 1.1 se ilustra como esta compuesto el kernel del sistema operativo
Linux, en la cual podemos observar como las aplicaciones reciben soporte de cada uno de
los subsistemas que conforman al kernel (núcleo).

Aplicaciones

Subsistema Sistema Sistema Comunicación


E/S Archivos Seguridad de procesos inter-procesos

Subsistema
Sub archivos Subsistema
Subsistema
sistema de
IPC
E/S procesos
caché

Controlador periférico Controlador


Parte física periférico Periférico

Material

Figura 1.1 Kernel de Linux.

1.3.1 Subsistema de archivos

• Garantiza una administración correcta de los archivos y de los derechos de acceso.

• La administración varía mucho según el tipo de sistema de archivos.

• Linux adopto el concepto de VFS (Virtual File System).

1.3.1.1 Acceso estándar de archivo en Virtual File System

17
• Principio: todos los módulos de un sistema de archivos, vistos del exterior,
presentan las mismas rutinas.

• Es responsabilidad del núcleo de convertir las llamadas de sistemas estándares en


las específicas a los archivos.

• Programador no debe preocuparse del tipo de sistema archivos con el que trabaja.

En la figura 1.2 se muestra el esquema de funcionamiento del acceso al sistema


de archivos virtuales de Linux, el cual nos enseña que Linux puede permitirnos trabajar
con diversos sistemas de archivos, por ejemplo Linux puede trabajar con el sistema de
archivos Fat 32, con el que trabajan muchas versiones de Windows.

Aplicaciones

Sistema de Archivos Virtual (VFS)

Subsistema Subsistema Subsistema Subsistema


ext2 sys V ms-dos proc

Cache

Controlador de periféricos

Material

Figura 1.2 Sistema de archivos virtual.

1.3.1.2 Entrada-salida en sistemas de archivos

• Rutinas sistemas archivos transmiten los accesos a los controladores de periféricos.

• Por cada acceso los bloques de datos necesarios son cargados del disco duro.

• Acceso a disco duro se hace a través de controladores con buffers.

• almacenan en memoria principal datos accedidos.

• esto evita un acceso disco en la próxima Lect/Esch.


18
• datos en RAM por lo que se gana en rapidez.

• Controladores sin buffer realizan acceso directamente en el disco.

• Controladores sin buffer realizan acceso directamente en el disco.

En la figura 1.3 se enseña el funcionamiento del proceso de entrada-salida en el


sistema de archivos de Linux. Como se puede observar este proceso se limita a 8
pasos los cuales son necesarios para un acceso ya sea de entrada o de salida.

Aplicaciones

8. Datos leídos
1. Lectura Archivo
Sistema de Archivos Virtual (VFS)

2. Lectura bloques
7. Liberación del contenido de la
datos del archivo
caché

3. Bloques datos en la caché


Caché

6. Escritura de los bloques de datos


4. Lectura de los bloques de datos en en el caché
la caché
Control de periféricos

5. Lectura de los
bloques de datos

Figura 1.3 Sistema de archivos y la entrada-salida.

1.3.1.3 Sub-sistema de procesos

• Asigna zonas aisladas de memoria a cada uno de los programas y controla las
demandas de memoria que se realicen.

• Linux no administra la memoria en el sentido estricto (físico).

• Aprovecha que, desde el 80386, los procesadores Intel saben tratar la memoria
virtual.

• También administra el acceso al microprocesador (calendarizador).

• Cada proceso esta registrado en una tabla central de procesos, por lo que es
posible verificar que procesos están ejecutándose.

19
• Para evitar que se apropien del procesador a cada proceso se le asigna un tiempo:
quantum.

• Una vez que el tiempo termine se le interrumpe y se le pone a un lado.

• Al proceso siguiente le es asignado el procesador.

• Implementación del sistema de intercomunicación entre procesos:

o Las colas de mensajes (message queues).

o Las zonas de memoria común (memoria compartida o shared memory).

o Los semáforos.

Casi todas las versiones de Linux tienen una estructura de archivos, pero por lo
regular dependiendo del fabricante de la distribución estos directorios varían y es la que se
presenta a continuación:

1.3.1.4 Directorio Raíz

bin Binarios de comandos esenciales


boot Archivos estáticos de cargador de arranque(boot-loader)
dev Archivos de dispositivos
etc Configuración del sistema local-máquina
home Directorios home de los usuarios
lib Librerías compartidas
mnt Punto de montaje de particiones temporales
root Directorio hogar del usuario root
sbin Binarios del sistema esenciales
tmp Archivos temporales
usr Segunda jerarquía mayor
var Información variable

1.3.1.4.1 Directorio bin (binarios ejecutables esenciales de usuario)

El directorio bin contiene comandos que pueden ser utilizados por ambos los
usuarios y /el administrador del sistema, pero que son requeridos en el modo /mono-
usuario (single-user mode) puede también contener comandos que son /utilizados
indirectamente por algunos scripts.
20
Todos los binarios utilizables sólo por root, tales como daemons,init,getty, update,
etc. Estarían localizados en /sbin ó /usr/sbin dependiendo si son o no esenciales. Para una
mayor discusión de la definición de que es esencial en el sistema de archivos /, lea por
favor la sección 6, "Razonamientos adicionales y asuntos sin resolver".

No habrá subdirectorios dentro de /bin.

Los binarios de los comandos que no son suficientemente esenciales para estar
en /bin estarán localizados en /usr/bin, los elementos que son utilizados por usuarios
solamente (pero no por root) (mail,chsh, etc) no son suficientemente esenciales para estar
dentro de la partición /.

1.3.1.4.2 Directorio boot (archivos estáticos del cargador de arranque)

Este directorio contiene todo para arrancar excepto los archivos de configuración y
el instalador de mapas. En su sentido más sencillo /boot es para cualquier cosa que se
utiliza antes de que el kernel ejecute /sbin/init. Ésto incluye sectores maestros de arranque
(master boot sectors) guardados, archivos de mapeo de sectores y cualquier otra cosa que
no es editada directamente a mano.Los programas necesarios para arreglar que el
cargador de arranque sea capaz de arrancar un archivo (tal como el instalador de mapas
[lilo] ) estarán localizados en /sbin. Los archivos de configuración para cargadores de
arranque podrían estar localizados en /etc.

Como se expuso arriba, el kernel de Linux puede estar localizado en / ó en /boot, si


se localiza en /boot, recomendamos que se le dé un nombre más descriptivo.

1.3.1.4.3 Directorio dev (archivos de dispositivos)

Este es el directorio de los dispositivos. Contendría un archivo por cada dispositivo


que el kernel de Linux puede soportar.

dev también contiene un script llamado MAKEDEV el cual puede crear /dispositivos
cuando se necesiten. Puede contener un MAKEDEV local para /dispositivos sólo-local.

MAKEDEV debe hacer previsión para crear cualquier archivo de dispositivo


especial listado en la lista de números mayores/menores, no sólo aquellos de una
distribución particular.

Los enlaces simbólicos no se deben distribuir en sistemas Linux, sino sólo como se
preveé en la lista de dispositivos de Linux. Ésto es porque las instalaciones locales seguro
21
diferirán de aquellas de la máquina del desarrollador. Además si un script de instalación
configura enlaces simbólicos en la instalación, estos enlaces seguramente no se
actualizarán si se hacen cambios locales en el hardware. Cuando se usan
responsablemente, como sea, son de buen uso.

Este documento incorpora como referencia la lista de dispositivos de Linux,


mantenida por: Peter.Anvin@linux.org: El encargado de los dispositivos Linux.Todos los
archivos especiales de dispositivo seguirán el estándar en ese documento, que está
disponible en ftp.yggdrasil.com en /pub/device-list.

1.3.1.4.4 Directorio etc (configuración del sistema local a la máquina)

Él directorio etc contiene archivos y directorios que son locales al sistema actual.

Ningún binario debe ir directamente dentro de /etc. Los binarios que en el pasado
se encontraban en /etc, irán en /sbin ó /usr/sbin. Ésto incluye archivos tales como init,
getty y update. Los binarios tales como hostname que son utilizados por usuarios
ordinarios y por root no irían en /sbin sino en /bin.

/etc --- Configuracion de sistemas locales de máquina.

X11 Archivos deconfiguracion para el x11

skel Esqueletos de configuracion de usuarios

etc/skel es la localidad para los llamados archivos esqueletos de /usuarios, que le


son dados por defecto cuando un nuevo usuario recibe una /cuenta, este directorio puede
contener subdirectorios para diferentes /grupos de usuarios (i.e./etc/skell/apoyo,
/etc/skell/usuarios).

etc/X11 es el lugar recomendado para todos los archivos de configuración /de X11
locales a la máquina. Este directorio es necesario para permitir el /control local si /usr se
monta sólo-lectura. Los archivos que deben ir en /este directorio incluyen Xconfig (y/o
XF86Config) y Xmodmap.

Los subdirectorios de /etc/X11 pueden incluir aquellos para xdm y para cualesquier
otros programas (como algunos manejadores de ventanas por ejemplo) que lo necesiten.
Recomendamos que los manejadores de ventanas con un solo archivo de configuración
que es un archivo .*wmrc por defecto, que lo llamen system.*wmrc (a menos que exista
una alternativa ampliamente aceptada) y que no utilize un subdirectorio. Cualquier
22
subdirectorio de un manejador de ventanas se llamaría idéntico al binario del manejador
de ventanas.

etc/X11/xdm retiene los archivos de configuración de xdm. Ésto es la /mayoría de


los archivos normalmente hallados en /usr/lib/X11/xdm; Vea la /seccion 5,/var/lib/xdm, para
mayor información.

La siguiente sección intenta parcialmente examinar la descripción del contenido


de /etc con algunos ejemplos: Definitivamente ésta no es una lista exhaustiva.

Archivos requeridos en /etc:

Archivos generales:

Estos archivos son necesarios en la mayoría de los sistemas Linux.: adjtime,


csh.login, disktab, fdprm, fstab, gettydefs, group, inittab, issue, ld.so.conf, lilo.conf, magic,
motd, mtab, mtools, passwd, profile, psdatabase, securetty, shells, syslog.conf, tercamp,
ttytype.

Archivos de Red:

Estos archivos estarían instalados en la mayoría de los sistemas Linux.: exports,


ftpusers, gateways, hosts, host.conf, host.equiv, host.lpd, inetd.conf, networks, printcap,
protocols, resolv.conf.rpc, services.

Hay dos modelos para la instalación de los scripts de comandos "rc" los cuales son
invocados por init(8) al momento de arrancar, el modelo /etc/rc.d/* estilo SystemV.
Cualquiera puede ser utilizado o una mezcla de los dos.

Los sistemas con la suite de passwords sombreadas (shadow password) tendrán


archivos de configuración adicionales, en /etc (/etc/shadow y otros) y /usr/bin (useradd,
usermod, y otros).

1.3.1.4.5 Directorio home (directorios hogar de los usuarios)

El directorio home es un concepto algo estándar, pero es claramente un sistema


de /archivos específico de un site. El arreglo diferirá de máquina a máquina. /Esta sección
describe una localización sugerida para los directorios hogar /de los usuarios, aun así,
recomendamos que todas las distribuciones /Linux usen este lugar como la localización
por defecto de los /directorios hogar.

23
En sistemas pequeños, cada directorio de usuario es uno de los subdirectorios
debajo de /home, p.ej. /home/smith, /home/torvalds, /home/operador, etc.

En sistemas grandes (especialmente cuando los directorios /home son compartidos


entre varias máquinas usando NFS) es útil subdividir los directorios hogar. La subdivisión
puede ser llevada a cabo utilizando subdirectorios tales como /home/apoyo,
/home/huéspedes, /home/estudiantes, etc.

Muchas personas prefieren poner las cuentas de los usuarios en una variedad de
lugares. Por tanto, ningún programa deberá confiar en esta localización. Si usted desea
encontrar el directorio hogar de cualquier usuario, debería usar la función de librería
getpwent(3) en vez de contar con /etc/passwd, por que la información puede estar
almacenada remotamente usando usando sistemas como NIS.

1.3.1.4.6 Directorio lib (librerías del compartidas del kernel y esenciales)

El directorio /lib contiene aquellas imágenes de las librerías compartidas que se


necesitan para arrancar el sistema y ejecutar los comandos en el sistema de archivos raíz.

lib---librerías compartidas y módulos de kernel esenciales. modules Módulos de


kernel cargables.

Esto incluye /lib/libc.so.*, /lib/libm.so.*, el enlazador dinámico compartido /lib/ld.so.*,


y otras librerías compartidas requeridas por binarios en /bin y /sbin.

Las librerías que son necesitadas sólo por los binarios en /usr (como cualquier
binario de X Window) no pertenecen a /lib. Sólo las librerías compartidas requeridas para
ejecutar los binarios dentro de /bin y /sbin deben estar aquí. La librería libm.so.* podría
estar localizada en /usr/lib si no es requerida por nada en /bin ó /sbin.

Por razones de compatibilidad, /lib/cpp necesita existir como una referencia al pre-
procesador C instalado en el sistema. La localización usual del binario es /usr/lib/gcc-
lib/<target>/<version>/cpp. Puede existir un enlace/lib/cpp apuntando a este binario o a
cualquier otra referencia a este binario que exista en el sistema de archivos. (Por
ejemplo, /usr/bin/cpp se usa frecuentemente).

La especificación para /lib/modules está aún por aparecer.

24
1.3.1.4.7 Directorio mnt (punto de montaje para sistemas de archivos de montaje
temporales)

Este directorio se ha provisto para que el administrador pueda montar


temporalmente sistemas de archivos cuando lo necesite. El contenido de este directorio es
un asunto local y no debe afectar la manera en la cual se ejecuta ningún programa.

Recomendamos la no utilización de este directorio por programas de instalación, y


sugerimos utilizar un directorio temporal adecuado que no este en uso por el sistema.

1.3.1.4.8 Directorio proc (sistema de archivos virtual de información de procesos y


de kernel)

El sistema de archivos proc se está convirtiendo en el estándar de facto para el


manejo de información de procesos y de sistema en vez de /dev/kmem y otros métodos
similares. Recomendamos fuertemente esto para el almacenamiento y obtención de
información de procesos así como otra información del kernel y de memoria

1.3.1.4.9 Directorio root

El directorio / es tradicionalmente el directorio hogar del usuario root en los


sistemas UNIX. /root se usa en muchos sistemas Linux y en algunos sistemas UNIX. El
directorio hogar de la cuenta de el usuario root puede ser determinada por el desarrollador
o por preferencias locales. Las posibilidades obvias incluyen /, /root, y /home/root.

Si el directorio hogar de root no está almacenado en la partición raíz, será


necesario asegurarse que tome / por defecto si no puede ser localizado.

NOTA: Se recomienda contra el uso de la cuenta root para cosa mundanas tales
como leer el correo y ver las noticias (mail & news) sino que se use solamente para la
administración del sistema. Por esta razón recomendamos que no aparezcan
subdirectorios como Mail y News en el directorio hogar de la cuenta del usuario root.
Recomendamos que el Mail para root y postmaster sean redirigidos a un usuario más
adecuado.

25
1.3.1.4.10 Directorio sbin (binarios del sistema)

Los útiles usados por la administración del sistema ( y otros comandos que sólo
root utiliza ) están almacenados en /sbin, /usr/sbin, y /usr/local/sbin. /sbin típicamente
contiene binarios esenciales para arrancar el sistema además de los binarios en /bin.
Cualquier cosa que se ejecuta después de que se sabe que /usr se ha montado (cuando
no hay problemas) debería estar en /usr/sbin. Los binarios de administración de sistema
sólo-locales deben estar localizados en /usr/local/sbin.

Decidir que cosa va en los directorios de /sbin es sencillo: Si un usuario necesitará


ejecutarlo, debe de ir en otro lado. Si sólo será ejecutado por el administrador del sistema
o por root como scripts de administración, entonces debe ir en /sbin (o en /usr/sbin o en
/usr/local/sbin, si el archivo no es vital para la operación del sistema).

Archivos como chfn que los usuarios usan sólo ocasionalmente deben aun estar
en /usr/bin. ping aunque es absolutamente necesario para el root (recuperación de la red y
diagnóstico) es también frecuentemente usado por los usuarios y por esa razón debe ir
en /bin.

Los usuarios ordinarios no tendrán que poner ninguno de los directorios sbin en su
búsqueda (path).

Recomendamos que los usuarios tengan permisos de lectura y ejecución en todo lo


que se encuentra en /sbin excepto tal vez ciertos programas; setuid y setgid. La división
entre /sbin y /bin no fue creada por motivos de seguridad o para evitar que los usuarios
vieran el sistema operativo, sino para proveer una buena partición entre binarios que todos
usan y los que se usan, principalmente las tareas de administración. No hay ganancia
inherente en seguridad en hacer que /sbin este fuera del alcance de los usuarios.

1.3.1.4.11 Directorio tmp (archivos temporales de linux)

El directorio tmp se utiliza para archivos temporales, preferentemente en un


/dispositivo rápido (un sistema de archivos basado en memoria por ejemplo)

La "persistencia" de la información que es almacenada en /tmp es diferente de


aquella que sea almacenada en /var/tmp. /tmp puede ser limpiada en cada arranque o a

26
intervalos relativamente frecuentes. Por tanto, no se debe esperar que la información
almacenada en /tmp permanezca por algún periodo largo de tiempo.

Los programas deben utilizar /tmp ó /var/tmp (que era originalmente /usr/tmp) de
acuerdo a los requerimientos esperados de la información, pero no deben confiar en
alguna persistencia temporal particular en cualquier directorio de almacenamiento
temporal.

Los administradores de sistemas pueden elegir enlazar /tmp a algún otro directorio,
tal como /var/tmp; esto es útil, por ejemplo, para conservar espacio en la partición raíz. Si
esto se lleva a cabo, entonces la persistencia de archivos en /var/tmp debe ser al menos
tan larga como la de /tmp.

tmp puede estar e un disco RAM. /var/tmp no debe nunca localizarse en /algún
dispositivo RAM.

1.3.1.4.12 Directorio usr

El directorio usr es la segunda mayor sección del sistema de archivos. /usr es


/información compartible, de sólo-lectura, esto significa que /usr, debe ser /compartible
entre varias máquinas que corren Linux y no se debe /escribir. Cualquier información que
es local a una máquina o varía con el /tiempo, se almacena en otro lugar.

Ningún paquete grande (como TeX o GNU Emacs) debe utilizar un subdirectorio
directo bajo /usr, en vez, debe haber un subdirectorio dentro de /usr/lib (o /usr/local/lib si
fué instalado completamente local) para ese propósito, con el sistema X Window se hace
una excepción debido a un considerable precedente y a la práctica ampliamente aceptada.

/usr --- Segundo mayor punto de montaje (permanente)


X11R6 Sistema X Window Version 11 release 6
X386 Sistema X Windows Versión 11 release 5 en plataformas X 86
bin La mayoría de los comandos de usuario
dict Listas de palabras
doc Documentación miscelánea
etc Configuración del Sistema (todo el site)
games Juegos y binarios educacionales
include Archivos header incluidos por programas C
info Directorio primario del sistema GNU Info
27
lib Librerías
local Jerarquía local (vacía justo después de la instalación principal)
man Manuales en línea
sbir Binarios de Administración del Sistema No-Vitales
share Información independiente de la arquitectura
src Código fuente
Los siguientes enlaces simbólicos a directorios pueden estar presentes. Esta
posibilidad se basa en la necesidad de preservar la compatibilidad con sistemas anteriores
hasta que en todas las implementaciones se pueda asumir el uso de la jerarquía /var.

/usr/adm ------------------> /var/adm


/usr/preserve -------------> /var/preserve
/usr/spool ----------------> /var/spool
/usr/tmp ------------------> /var/tmp
/var/spool/locks ----------> /var/lock

Una vez que el sistema ya no requiera más alguno de los anteriores enlaces
simbólicos, el enlace se puede remover, si se desea. Notablemente, sólo se necesita poco
esfuerzo para remover completamente /usr/preserve, dado que sólo ex y vi lo utilizan.

1.3.1.4.13 /usr/X11R6: El sistema X Window, Versión 11 release 6

Esta jerarquía está reservada para el sistema X Window, Versión 11 release 6 y


archivos relacionados.

/usr/X11R6 --- X Window System (Version 11, release 6)


bin
doc
include
lib
man

Para simplificar los problemas y hacer XFree86 más compatible con el sistema X
Window en otros sistemas, los siguientes enlaces simbólicos deben estar presentes.

/usr/bin/X11 ------------> /usr/X11R6/bin


/usr/lib/X11 ------------> /usr/X11R6/lib/X11
/usr/include/X11 --------> /usr/X11R6/include/X11
28
En general, el software no se debe instalar o manejar vía los anteriores enlaces
simbólicos. Sólo están para la utilización por usuarios. La dificultad está relacionada con la
versión y el release del sistema X Window; en períodos transaccionales es imposible
saber que release de X11 está utilizándose. Por la misma razón no debe existir un enlace
desde /usr/X11 apuntando a la jerarquía del sistema X Window actual.

/usr/X386: El sistema X Window, Versión 11 release 5 en plataformas X 86

Esta jerarquía es generalmente idéntica a /usr/X11R6, excepto que los enlaces


simbólicos de /usr deben estar ausentes si está instalado /usr/X11R6

/usr/bin: La mayoría de los comandos del usuario.

Éste es el directorio principal de comandos ejecutables en el sistema.

mh comandos para el sistema de manejo de correo M H


X11 Enlace simbólico hacia /usr/X11R6/bin

Debido a que los interpretadores de scripts de los shell (invocados con #! <ruta> en
la primera linea del script de shell) no pueden depender de una ruta, es ventajoso el
estandarizar la localización de ellos. La shell Bourne y C estan fijos en /bin, pero Perl,
Python, Tlc se encuentran en muchos lugares diferentes /usr/bin/perl, /usr/bin/python y
/usr/bin/tcl deben referenciar a los intérpretes de shell perl, python y tcl respectivamente.
Éstos pueden ser enlaces simbólicos a la localización física de los intérpretes de shell.

/usr/dict: Listas de palabras

Archivos recomendados en /usr/dict

words
Tradicionalmente este directorio contiene sólo el archivo words de palabras
inglesas, el cual es utilizado por look(1) y varios programas de ortografía, words puede
utilizar ortografía americana o británica. Los sites que requieran ambos, pueden enlazar
words a /usr/dict/american-english ó /usr/dict/british-english.

Las listas de palabras para otros lenguajes se pueden añadir usando el nombre en
inglés para ese lenguaje, por ejemplo, /usr/dict/french, /usr/dict/danish, etc. Éstos deben, si
es posible, utilizar un juegos de caracteres ISO 8859 que sea apropiado para el lenguaje

29
en cuestión, si es posible el juego de caracteres ISO 8859-1 (Latin1) debe ser utilizado
(esto es a veces imposible)

Cualquier otra lista de palabras, tal como el directorio web2, debe ser incluido aquí,
si está presente.

Las razones tras tener sólo las listas de palabras aquí es que ellas son los únicos
archivos comunes a todos los verificadores de ortografía.

/usr/etc: Configuración del sistema (todo el site)

Almacenar la configuración en /usr/etc del software que se encuentra en /usr/bin


y /usr/sbin es un problema. Hace que el montar /usr sólo lectura de un CDROM o a través
de NFS sea difícil en el mejor de los casos.

Una posible solución que se consideró fue eliminar completamente /usr/etc y


especificar que todas las configuraciones se almacenen en /etc. Un problema con esta
aproximación es que no anticipa propiamente la posibilidad de que muchos sites pueden
querer tener algunos archivos de configuración que no sean locales de máquina.

Eventualmente se decidió que /etc deberá ser el único directorio que sea
referenciado por los programas (esto es, todos deben buscar configuraciones en /etc y no
en /usr/etc). Cualquier archivo de configuración que necesite ser para todo el site y que no
es necesario antes de montar /usr (o en una situación de emergencia debe entonces estar
localizado en /usr/etc. Entonces archivos específicos (en /etc), en máquinas específicas
pueden ser o no ser enlaces simbólicos a los archivos de configuración localizados en
/usr/etc. Ésto también significa que /usr/etc es técnicamente un directorio opcional en el
sentido estricto, pero aún así recomendamos que todos los sistemas Linux lo incorporen.

No se recomienda que /usr/etc contenga enlaces simbólicos que apunten a archivos


en /etc. Esto es innecesario e interfiere con el control local en máquinas que comparten un
directorio /usr.

/usr/include: Directorio para archivos include estándar.

Aquí es donde todos los archivos include de uso general del sistema para
programación en lenguajes C y C++ deben ser localizados.

/usr/include Archivos include


X11 Enlace simbólico hacia /usr/X11R6/include/X11
30
arpa Definiciones del protocolo definido por ARPNET.
asm Enlace simbólico hacia /usr/scr/linux/include/asm-<arch>.
bsd Archivos include de compatibilidad con BSD.
g++ Archivos include de GNU C++.
gnu Archivos include GNU.
linux Enlace simbolico a /usr/src/linux/include/linux.
net Definiciones genéricas relacionadas con redes.
netax25 Definiciones específicas a +AX25 ( ARRL AX25).
netinet Definiciones específicas a TCP/IP.
netipx Definiciones específicas a +IPX (Novel IPX/SPX).
protocols Definiciones de protocolos ( Mayormente basadas en INET)
readline La librería readline GNU.
rpc Definiciones RPC de Sun Microsystems.
rpcsvc Definiciones de servicios RPC de Sun Microsystems.
sys Archivos include de generación de sistemas.

El subdirectorio arpa contiene definiciones de cabecera de protocolos para los


protocolos ARPANET, TCP/IP, definiciones para ftp, prototipos telnet y material similar.

El subdirectorio net contiene definiciones genéricas relacionadas con redes, define


la interface sistema-kernel, detalles de la familia de protocolo, etc.

El subdirectorio netinet contiene definiciones especificas de INET (DARPA Internet,


que también es conocida como TCP/IP )

ARRL AX.25 es mejor conocido como packet radio. Los protocolos novell IPX/SPX
son parte de los servicios de archivos Novell Netware.

/usr/lib: Librerías para programas y paquetes.

usr/lib incluye librerías objeto, binarios del programa compilador e /información


estática de varias clases, ambos, códigos ejecutable ( por /ejemplo los binarios internos de
gcc están localizados bajo //usr/lib/gcc-lib ) y otros tipos de información.

/usr/lib/ - librerías para programación y paquetes:

X11 Enlace simbólico a /usr/X11R6/lib/X11


emacs Archivos de soporte estáticos para el editor GNUEmacs.

31
games Archivos de datos estáticos para /usr/games.
groff Librerías / Directorios para GNU groff
gcc-lib Archivos/ Directorios específicos del sistema para gcc.
kbd Tablas de traducción de teclado e información relacionada.
Mh Librerías para el sistema de manejo de correo MH:
news Cnews/INN.
smail Smail.
terminfo Directorios para la base de datos terminfo.
texmf TeX/MF ( y LaTeX ) librerías de información.
uucp Comandos de UUCP.
zoneinfo Configuración e información de la zona horaria.

Históricamente, /usr/lib ha incluido además algunos comandos ejecutables tales


como sendmail y makewhatis. Dado que makewhatis no es referenciado por otros
programas, no hay problemas al moverlo a un directorio binario. Dado que los usuarios
tienen buena razón para usar makewhatis, /usr/lib es donde pertenece. El binario catman
que remplaza al script makewhatis en muchos sistemas Linux, debe también estar en
usr/bin

El binario sendmail es referenciado por muchos programas con su nombre


histórico /usr/lib/sendmail. Éste debe ser un enlace simbólico a la localización estándar
para los agentes de transferencia de correo con una interfaz de línea de comando
compatible con sendmail, /usr/bin/sendmail.

En sistemas que utilizan smail deben localizar smail en /usr/sbin/smail y


/usr/bin/sendmail debe ser un enlace simbólico a smail. Este arreglo también se conforma
a la nueva locación estándar sendmail definida en Sendmail 8.6.x y BSD 4.4 Note que esta
localización demanda que /usr/sbin y /usr/sbin/sendmail deben ser ejecutables para
usuarios normales.

Cualquier paquete o programa que contenga o requiera información que no


necesite ser modificada debe almacenar tal información en /usr/lib ( ó /usr/local/lib, si está
instalado localmente ). Se recomienda la utilización de un subdirectorio en /usr/lib para
este propósito.

La información de juegos almacenada en /usr/lib/games debe ser solamente


información estática. Cualquier archivo modificable. Tal como archivos de marcadores,
32
registros de juego y similares, deben ser localizados en var/lib. Si es necesario para
compatibilidad de juegos con el viejo estilo BSD, se puede usar un enlace simbólico desde
/usr/games/lib hacia /usr/lib/games.

Nota: ninguna información específica de host para el sistema X Window debe


almacenarse en /usr/lib/X11 ( que es realmente /usr/X11R6/lib/X11) . Los archivos de
configuración específicos de host tales como Xconfig ó XF86Config deben almacenarse en
/etc/X11. Éste debe incluir información de configuración como system.twmrc aún si es sólo
un enlace simbólico a un archivo de configuración más global ( tal vez en /usr/etc/X11 ó
/usr/X11R6/lib/X11).

/usr/local: Jerarquía local

La jerarquía /usr/local está para ser utilizada por el administrador del sistema
cuando se instale el software localmente. Necesita estar a salvo de ser sobreescrito
cuando el software del sistema se actualiza. Puede ser usado por programas y por
información que son compartibles entre un grupo de máquinas, pero no se encuentran
en /usr.

/usr/local Jerarquía local.


bin Binarios sólo-locales
doc Documentación local
etc Binarios de configuración sólo-local
games Juegos instalados localmente
lib Librerías para /usr/local
info Páginas de info local
man Jerarquías de páginas de manual para /usr/local
sbin Administración del sistema sólo-local
scr Código fuente local.

Este directorio debe estar vacío al terminar de instalar Linux por primera vez. No
debe haber excepciones a la regla, excepto quizá los subdirectorios vacíos listados.

El software instalado localmente debe estar localizado dentro de /usr/local, en vez


de /usr a menos que este siendo instalado para reemplazar o actualizar el software en
/usr.

33
Note que el software localizado en / o en /usr puede ser sobreescrito por
actualizaciones del sistema (aunque recomendamos que las distribuciones no
sobrescriban información en /etc bajo estas circunstancias). Por esta razón, el software
local no se debe localizar fuera de /usr/local sin una buena causa.

/usr/man : Páginas del manual.

Esta sección detalla la organización de las páginas del manual a través del sistema.
Incluyendo /usr/man.

Las páginas del manual están almacenadas <mandir>/<locale>/man [1-9]. Más


delante se dá una explicación de <mandir> y <locale>.

<mandir>/<locale> --- Una jerarquía de páginas de manuales.


man1 Programas para usuarios.
man2 Llamadas al sistema.
man3 Subrutinas y funciones de librería
man4 Dispositivos.
man5 Formato de archivos
man6 Juegos.
man7 Misceláneas.
man8 Administración del Sistema.
man9 Funciones y variables internas del kernel.

El <mandir> primario del sistema es /usr/man contiene información del manual para
comandos e información bajo los sistemas de archivos / y /usr. Obviamente no hay
páginas de manual en / por que no se necesitan para arrancar ni en emergencias.

Se debe hacer provisión en la estructura de /usr/man para el soporte de páginas del


manual que estén escritas en diferentes (o múltiples idiomas ). Estas provisiones deben
tomar en cuenta el almacenamiento y referencia de estas páginas del manual. Los
factores relevantes incluyen el idioma ( incluyendo diferencias basadas en la geografía ) y
el código del conjunto de caracteres.

Esta nomenclatura de los subdirectorios de idiomas de /usr/man está basada en el


apéndice E del estándar POSIX 1003.1 que describe la cadena de identificación locale
---El método más aceptado para describir un ambiente cultural. La cadena <locale>es:
<idioma>[<_territorio>][.<conjunto_de_caracteres>][,<version>]
34
El campo <idioma> se tomará del ISO639 (un código para la representación de los
nombres de los idiomas). Será de dos caracteres de ancho y especificado con minúsculas
solamente.

El campo <_territorio> será el código de dos letras de ISO3116 (una especificación


de la representación de los nombres de los países), si es posible. (mucha gente está
familiarizada con el código de 2 letras empleado en el código de país en las direcciones de
e-mail.

El campo <conjunto_de_caracteres> debe representar el estándar que describe el


código de caracteres. Si el campo <conjunto_de_caracteres> es sólo una especificación
numérica, el número representa el número del estándar internacional que describe a ese
conjunto de caracteres. Se recomienda que este sea una representación numérica
siempre que sea posible (especialmente, estándares ISO), que no incluya símbolos de
puntuación y que todas las letras sean minúsculas.

Un parámetro que especifique <versión> del perfil puede ser colocada después del
campo <conjunto_de_caracteres >, delimitado con una coma. Esto puede utilizarse para
discriminar entre diferentes necesidades culturales, por ejemplo un orden de diccionario en
vez de un orden de acomodo más orientado hacia el sistema. Este estándar recomienda
no usar el campo <version> a menos que sea necesario.

En sistemas que usen sólo un idioma y un código de conjunto de caracteres para


todas las páginas del manual, pueden omitir la subcadena <locale> y almacenar todas las
páginas del manual en <mandir>. Por ejemplo en sistemas que sólo tienen páginas del
manual en inglés codificados en ASCII, pueden almacenar las páginas del manual (los
directorios man[1-9]) directamente en /usr/man (éstas son las circunstancias y el arreglo
tradicional, de hecho).

En países para los cuales existe un código de conjunto de caracteres estándar,


puede omitir el campo <conjunto_de_caracteres>, pero recomendamos fuertemente que
se incluya, especialmente para países con varios estándares en competencia.

Varios ejemplos:
Idioma Territorio Conjunto de caracteres Directorio
Inglés ASCII /usr/man/en
Inglés Reino Unido ASCII /usr/man/en_GB

35
Inglés Estados Unidos ASCII /usr/man/en_US
Francés Canadá ISO8859-1 /usr/man/fr_CA
Francés Francia ISO8859-1 /usr/man/fr_FR
Alemán Alemania ISO646-DE /usr/man/de_DE646de
Alemán Alemania ISO6937 /usr/man/de_DE6937
Alemán Alemania ISO8859-1 /usr/man/de_DE.88591
Alemán Suiza ISO646-CH /usr/man/de_CH.646ch
Japonés Japón JIS /usr/man/ja_JP.jis
Japonés Japón SJCS /usr/man/ja_JP.sjis
Japonés Japón UJ (o EUC-J) /usr/man/ja_JP.ujis

Las páginas del manual para los comandos e información que se encuentra bajo
/usr/local están almacenadas en /usr/local/man. Las páginas del manual para el sistema X
Window están almacenadas en /usr/X11R6/man. Luego todas las jerarquías de páginas
del manual en el sistema deben tener la misma estructura que /usr/man. Los directorios
vacíos pueden ser omitidos de la jerarquía de páginas del manual. Por ejemplo si,
/usr/local/man no tiene páginas del manual en la sección 4 (dispositivos) entonces se
puede omitir /usr/local/man/man4.Las secciones de páginas cat (cat[1-9]) que contiene
páginas del manual formateadas, también se encuentran dentro de los subdirectorios
/<mandir>/<locale>, pero no son requeridas ni deben ser distribuidas en el lugar de las
fuentes nroff de las páginas del manual. Las páginas del Manual del sistema de manejo de
correo mh deben tener el prefijo mh en todos los nombres de archivos de las páginas. Las
páginas del sistema X Window deben tener el prefijo x en todos los nombres de los
archivos de las páginas. La práctica de colocar las páginas del manual de diferentes
idiomas, en los subdirectorios apropiados de /usr/man también se aplica a las otras
jerarquías de páginas del manual, tales como /usr/local/man, y /usr/X11R6/man. (Esta
porción de este estándar tambien se aplica más delante en la estructura opcional de
/var/catman).

A continuación una descripción de cada sección.

man1: Programas de usuario.

Las páginas del manual que describen los comandos accesibles públicamente se
encuentran en esta sección. La mayoría de la documentación de los programas que un
usuario necesitará se encuentra aquí.
36
man2: Llamadas al sistema.

Esta sección describe todas las llamadas al sistema (requisiciones hacia el kernel
de Linux para realizar ciertas operaciones).

man3: Subrutinas y funciones de librería.

La sección 3 describe programas rutinas de librería que no son llamdas directas al


servicios del kernel. Esta sección y la 2 son de interés casi solamente para
programadores.

man4: Archivos especiales.

Esta sección describe los archivos especiales, funciones relacionadas con los
manejadores y el soporte para la red que estén disponibles en el sistema. Típicamente,
esto incluye los archivos de dispositivo que se encuentran en /dev y la interfaz del kernel
para el soporte de protocolos de red.

man5: Formatos de archivos.

Aquí se encuentran los formatos para muchos de los archivos cuyo formato no sea
intuitivo. Esto incluye varios archivos include, archivos de salida de programas, y archivos
de sistema.

man6: Juegos.(Binarios Educativos)

Esta sección documenta los juegos, demos y programas triviales. Muchas personas
tienen una opinión muy diferente de que tan esencial es esta sección.

man7: Misceláneos

Las páginas del manual que son difíciles de clasificar se designan como
pertenecientes a la sección 7. Las de troff y otros macro paquetes de procesamiento de
texto se encuentran aquí.

man8: Administración del Sistema

Aquí se documentan los programas utilizados por los administradores de sistemas


para la operación y mantenimiento. Algunos de estos programas son ocasionalmente
útiles para usuarios normales.

37
man9: Funciones y variables internas del kernel

Éste es utilizado para documentar el código fuente del kernel en los Sistemas Linux.

/usr/sbin: Binarios de sistema estándar no-esenciales.

Este directorio contiene cualesquier binario no-esencial utilizando exclusivamente


por el administrador del sistema.

Los programas de administración del sistema que sean requeridos para la


reparación del sistema, recuperación del sistema, montaje de /usr u otras funciones
esenciales deben localizarse en /sbin en vez de aquí. Típicamente /usr/sbin contiene los
deamons de red, cualquier herramienta de administración no-esencial y binarios para
programas servidores no-críticos. Esto incluye los deamons de internet que son llamados
por inted (llamados in.*) tales como in.telnetd y in.fingerd y los deamons basados en rpc
manejados por portmap (llamados rcp.*) tales como rcp.infsd y rcp.mountd. Estos
programas servidores son utilizados cuando se entra en un estado que el System V
conoce como "run level 2" (estado multi-usuario) y el "run level 3" (estado en-red) o el
estado que el BSD conoce como "modo multi-usuario". En este punto se hacen
disponibles los servicios para los usuarios (p. ej. soporte de impresión) y hacia otras
máquinas (p. ej. exportar NFS).

Los programas administrativos instalados localmente deben estar localizados en :


/usr/local/sbin.

/usr/share : Información Independiente de Arquitectura.

Cualquier especificación para /usr/share se incluirá en un documento suplementario


al FSSTND. Note que es la opinión en consenso del FSSTND que /usr/share no es
necesario en la mayoría de los sistemas Linux. En este momento, si nos confinamos a
proporcionar una definición extensiva de este directorio, sería una mala idea. Por favor
refiérase a la sección 6 para una discusión más de /usr/share.

/usr/src : Código fuente.

/usr/src --- Código fuente (linux Código fuente para el kernel de Linux).
Cualquier código fuente no-local debe localizarse en este directorio. El único código
fuente que siempre debe localizarse en un lugar específico es el código del kernel (cuando
exista o esté enlazado como parte de una estructura en /usr/include). Se pueden usar
38
subdirectorios si se desea. El código fuente para el kernel debe siempre estar en su lugar
o al menos los archivos include del código del kernel. Esos archivos están localizados en
estos directorios.

/usr/src/linux/include/asm-<arch>
/usr/src/linux/include/linux
El directorio usr/include debe contener enlaces a estos directorios, llamados asm y
/Linux, dados que son necesitados por el compilador de C, al menos /estos archivos
include deben siempre ser distribuidos en las instalaciones /que incluye un compilador C.
Deben ser distribuidos en el directorio //usr/src/linux de forma que no existan problemas
cuando los administradores /del sistema actualicen su versión del kernel por primera
vez. /usr/src/linux puede también ser un enlace simbólico a un árbol de código /fuente del
kernel.

1.3.1.4.14 La Jerarquía /var

/var Información variable


adm Info administrativa del sistema (obsoleto). Enlace simbólico hacia /var/log
catman Páginas del manual formateadas localmente
lib Información del estado de aplicaciones
local Información variable del software de /usr/local
lock Archivos de bloqueo
log Archivos de bitácora
named Archivos DNS, sólo red
nis Archivos base de datos NIS
preserve Archivos almacenados después de una falla de ex ó vi
run Archivos relevantes a procesos ejecutándose
spool Directorios de trabajos en fila para realizarse después
tmp Archivos temporales, utilizado para mantener /tmp pequeño

El directorio var contiene archivos con información variable. Esto incluye archivos
y /directorios en fila de ejecución, información de bitácora administrativa y /archivos
temporales y transitorios. Algunas porciones de /var son no-compartibles entre diferentes
sistemas. Por ejemplo, /var/log, /var/lock y /var/run. Otras porciones son compartibles,
notablemente /var/spool/mail y /var/spool/news.

39
El directorio var se especifica aquí para hacer posible el montar /usr sólo-lectura.
/Todo aquello que alguna vez fue en /usr que es escrito durante la operación /normal del
sistema (pero no durante la instalación y el mantenimiento del /software) debe ir en /var.

Si /var no puede ser una participación separada, es preferible mover /var fuera de la
participación raíz pero dentro de la partición /usr (esto se hace algunas veces para reducir
el tamaño de la partición raíz o cuando hay poco espacio en la partición raíz). Como
sea, /var no debe ser enlazada a /usr, porque hace que la separación entre /usr y /var sea
más difícil y seguramente creará un conflicto de nombres, En vez enlace /var a / usr/var.

/var/adm : Bitácora del sistema y archivos contables (obsoleto)

Este directorio ha sido remplazado por /var/log y otros directorios. Debe ser un
enlace simbólico a /var/log hasta que todos los programas ya no se refieran más a algún
archivo en /var/adm.

utmp se ha movido a /var/run. Todos los archivos bitácoras se han movido a /var/log
incluyen en el archivo wtmp.

El soporte de empaquetado de distribuciones se debe almacenar en


/var/lib/<nombre> .

Nota: El enlace simbólico /var/adm no debe ser necesario en la mayoría de los


sistemas Linux-i386ELF dado que el cambio fué introducido antes que ELF fuera liberado
al público.

/var/catman : Páginas del Manual Formateadas localmente (opcional)

Este directorio proporcionara una localización estándar para los sites que
proporcionan una partición /usr sólo-lectura, pero que desean permitir el almacenamiento
temporal de páginas del manual formateados localmente. Los sites que montan /usr como
escribible (p. pj. instalaciones mono-usuarios) pueden escoger no usar /var/catman y
escribir las páginas del manual formateadas dentro de los directorios cat[1-9] dentro de
/usr directamente. Recomendamos que la mayoría de los sites utilicen una de las
siguientes opciones en su lugar.

Preformateé todas las páginas del manual dentro de /usr con el programa (catman).
: No se permita el almacenamiento temporal de las páginas formateadas del manual y

40
requiera que se ejecute nroff cada vez que se necesite una página. Se permita el
almacenamiento temporal local de las páginas del manual en /var/catman.

La estructura de /var/catman necesita reflejar ambos, el hecho de la existencia de


múltiples jerarquías de página del manual y la posibilidad del uso de múltiples idiomas.

Dada una página del manual sin formatear que normalmente aparece en
/usr/<ruta1>/man/man[1-9], la versión formateada almacenada temporal debe ir en
/var/catman/<ruta2>/cat[1-9], donde <ruta2> es <ruta1>. Los componentes <ruta2> y
<ruta1> están ausentes en el caso de /usr/man y /var/catman.

Por ejemplo, /usr/man/man1/ls.1 se formatea en /var/catman/cat1/ls.1 y


/usr/X11R6/man/<locale>/man3/XtClass.3x lo hace en
var/catman/X11R6/<locale>/cat3/XtClass.3x.

Las páginas del manual escritas en /var/catman/cat[1-9] pueden eventualmente,


transferirse a /usr/<ruta>/cat[1-9] ó expirarse. De igual forma las páginas del manual
formateadas dentro de /usr/<ruta>/cat[1-9] pueden expirarse si no son accesadas en un
periodo de tiempo.

Si vienen páginas del manual preformateadas con un sistema Linux en un medio


sólo lectura. (p. ej. un COROM), deben estar instaladas en /usr/<ruta>/cat[1-9].
/var/catman está reservado como un lugar de almacenamiento temporal para páginas de
manual formateados.

/var/lib : Información de Estado de Aplicaciones.

/var/lib.- Información de Estado de Aplicaciones


emacs Directorio del estado de Emacs
games Información variable de juegos(archivos de marcadores)
news Archivos variables de Cnews/INN
texmf Información variable asociada con TeX
xdm Archivos de autenticación y bitácoras de error del manejador de
despliegues X
var/lib/<nombre> es el lugar apropiado para el soporte de /empaquetamiento de
todas las distribuciones. Diferentes distribuciones de /Linux pueden utilizar diferentes
nombres por supuesto.

41
/var/lib/emacs

El directorio del estado GNU Emacs, el lugar donde los archivos de información
independiente de la arquitectura, que Emacs modifica cuando se ejecuta, debe ser /var/lib.
En el presente, Emacs sólo localiza su directorio de archivos de bloqueo bajo el directorio
de estado (en <direstado>/emacs/lock), pero puede hacer uso más extenso del mismo en
el futuro. Notablemente, sólo se requiere la adición de una opción sencilla en el programa
configure de Emacs para hacer este cambio (antes de compilar).

/var/lib/games

Así como los subdirectorios antes citados, cualquier información variable


relacionada con los juegos que se encuentran en /usr/games, deben estar aquí.
/var/lib/games debe incluir la información variable que previamente se encontraba en
/usr/lib/games; La información estática, tal como textos de ayuda, descripciones del nivel y
demás, debe permanecer en /usr/lib/games.

/var/lib/news

var/lib/news se debe usar parea almacenar toda la información variable /asociada


con los servidores de news tales como Cnews y INN, inclusive el /archivo histórico, el
archivo activo y demás.

/var/lib/texmf

var/lib/texmf se debe usar para almacenar la información variable /asociada con


TeX. Particularmente, en /var/lib/texmf/fonts se /almacenarán todas las fuentes tipográficas
que son generadas /automáticamente por MakeTeXPK.

Debe haber un enlace desde /usr/lib/texmf/fonts/tmp hacia /usr/lib/texmf/fonts. Este


enlace permite a los usuarios hacer uso de una sola ruta /usr/lib/texmf/fonts/tfm cuando le
hacen cambios a su variable de entorno TEXFONTS (ésta es la ruta por defecto en las
herramientas TeX de Karl Berry distribuidas desde ftp.cs.umb.edu:pub/tex [La razón de
mencionarlos aquí es que son el estándar de facto en las instalaciones UNIX, estas
herramientas son ampliamente usadas entre la comunidad Linux]. Si se utiliza otra
distribución de TeX, se debe hacer un enlace desde el directorio de fuentes apropiado
hacia /usr/lib/texmf/fonts).

42
El MakeTeXPK que se distribuye con dvipsk colocará los archivos .pk en
fonts/pk/<dispositivo>/<nombre_de_la_fuente>, (p.ej. fonts/pk/Canon_CX/cmr10.300pk).
Los archivos .pk se pueden purgar periódicamente del árbol /var/lib/texmf o se puede
mover dentro del árbol /usr/lib/texmf. Si se usan generadores automáticos de .mf ó .tfm,
éstos deben poner su información en los subdirectorios mf ó tfm de /var/lib/texmf/fonts.

/var/lib/xdm

/var/lib/xdm contiene la información variable de xdm que consiste en los /archivos


xdm-errors y cualquier archivo de autoridad xdm. Los binarios de /xdm tales como chooser
deben aún estar localizados en la localidad /histórica en /usr/X11R6/lib/X11/xdm. El
archivo xdm-pid debe estar en //var/lib/xdm a pesar de existir /var/run. Los archivos
restantes deben /estar en /etc/X11/xdm.

/var/local : Información variable del software que está en /usr/local

Este directorio contiene toda la información variable que esté relacionada con el
software que se encuentra en /usr/local. Naturalmente la implementación de este
subdirectorio se deja a el administrador del sistema . Como sea la información que se
puede categotizar en otro lugar del directorio /var, no se debe colocar en /var/local. Por
ejemplo, todos los archivos de bloqueo aún irán en /var/lock.

/var/lock : Archivos de Bloqueo

Los archivos de bloqueo deben almacenarse dentro de una estructura del directorio
de /var/lock.

Para preservar la habilidad de montar /usr sólo-lectura, no se deberá colocar los


archivos de bloqueo en la partición /usr.

Los archivos de bloqueo de dispositivo, tales como los archivos de bloqueo de


dispositivos serie que antes se encontraban en /usr/spool/lock ó en /usr/spool/uucp deben
ahora almacenarse en /var/lock. La convención para la nomenclatura que debe utilizarse
es LCK... seguido del nombre base del dispositivo. Por ejemplo, para bloquear /dev/cua0
se deberá crear el archivo LCK... cua0.

El formato usado para los archivos de bloqueo de dispositivo en Linux deberá ser el
formato de archivos de bloqueo HDB UUCP. El formato HDB es almacenar el PID

43
(Identificador del proceso) como un número decimal en ASCII de 10 bytes, con un carácter
de línea nueva.

Por ejemplo, si el proceso 1230 retiene un archivo de bloqueo, contendrá los


siguientes once (11) caracteres: espacio, espacio, espacio, espacio, espacio, espacio,
uno, dos, tres, cero y nueva línea.

Entonces cualquier cosa que desee usar /dev/cua0, puede leer el archivo de
bloqueo y actuar de acuerdo (Todos los archivos de bloqueo en /var/lock deben ser leíbles
por todos).

/var/log : Archivos bitácora y directorios

Este directorio contiene archivos bitácora misceláneos. la mayoría de los archivos


bitácora se deben escribir en este directorio o subdirectorios apropiados.

lastlog Registro del último acceso de cada usuario


messages Mensajes del sistema desde syslogd
wtmp Registro de todos los accesos y salidas

Se puede requerir de un enlace simbólico desde /var/log/utmp hacia /var/run/utmp


hasta que ningún programa se refiera a /var/adm/utmp (/var/adm es en sí mismo un enlace
simbólico transicional hacia /var/log).

/var/named : Archivos DNS

Este directorio contiene todos los archivos de trabajo del servidor de nombres
Internet, named. Recomendamos que /etc/named.boot sea un enlace simbólico hacia
/var/named/named.boot, dado que /etc/named.boot es el archivo de arranque por defecto,
si no se dan argumentos a named.

/var/nis : Archivos de bases de datos del servicio de información dered (NIS)

El sistema de información de red (NIS) era anteriormente conocido como las


Páginas Amarillas Sun (YP). La funcionalidad y localización de directorios de ambos es el
mismo pero el nombre (Yellow Pages) es una marca registrada en el Reino Unido,
pertenece a Bristish Telecommunications PLC. Y no puede ser usada sin permiso.

/var/preserve: Archivos guardados después de una colisión o una terminación


inesperada de ex ó vi
44
Este directorio contiene los archivos que son almacenados ante cualquier
terminación no-esperada de ex, vi, ó de alguno de sus clones.

/var/run : Archivos variables de tiempo de ejecución

Este directorio contiene archivos con información del sistema que lo describen
desde que arrancó. Generalmente los archivos en este directorio se deben limpiar
(remover o truncar, según corresponda) al comenzar el proceso de arranque.

Los archivos identificados de proceso (PID), que estaban originalmente /etc, se


deben colocar en /var/run. La convención de nomenclatura de archivos PID es <nombre-
programa>.pid, por ejemplo el archivo PID de crond se llama /var/run/crond.pid.

El formato interno de los archivos PID permanecen sin cambio. El archivo debe de
consistir del indicador del proceso en decimales codificado como ASCII, seguido por un
carácter nueva línea Por ejemplo, si crond fue el proceso número 25, /var/run/cond.pid
contendrá 3 caracteres, dos cinco y nueva línea.

Los programas que lean archivos PID deben ser flexibles en lo que aceptan, p. ej.
deben ignorar los espacios extras, ceros a la izquierda, ausencia del carácter nueva línea
o líneas adicionales en el archivo PID. Los programas que crean archivos PID deben
utilizar la sencilla especificación dada en el anterior párrafo.

El archivo utmp, que almacena información acerca de quién está actualmente


utilizando el sistema, se localiza en este subdirectorio.

Los programas que mantengan sockets transitorios de dominio UNIX, deben


colocarlos en este directorio.

/var/spool : Directorios de fila de trabajos para procesamiento posterior

El directorio var/spool es tradicionalmente utilizado para la información local de


/máquina que es enviada para procesarse después, hacia o desde subsistemas /UNIX.
Por ejemplo, trabajos de impresión que son almacenados aquí para /entrega posterior al
daemon de la impresora, el correo que sale es /almacenado aquí para entrega a sistemas
remotos y los archivos UUCP son /almacenados aquí para transmisión a los sistemas
UUCP vecinos. El correo /que entra y las noticias son almacenados aquí para entregarse a
los /usuarios y los trabajos de at y cron son almacenados aquí para ejecución /retardada
por el daemon cron.
45
/var/spool
at Trabajos de at
cron Trabajos de cron
lpd Directorio de impresora *
mail Archivos caja-postal(buzón) de los usuarios
mqueue Fila del correo saliente
news Directorio de noticias *
rwhod Archivos rwhod
smail Directorio de smail *
uucp Directorio de UUCP

Nota: * Significa fila de trabajos para proceso posterior.


Los archivos de bloqueo UUCP deben localizarse en /var/lock. Véa la sección
acerca de /var/lock.

/var/spool/lpd

/var/spool/lpd --- Directorio de fila de trabajos para proceso posterior o impresión

<impresora> Directorio que tiene la fila específica de esta impresora

El archivo de bloqueo para lpd, lpd.lock debe estar localizado en /var/spool/lpd. El


archivo de bloqueo de cada impresora debe localizarse en el directorio <impresora> de la
impresora especifica y se debe llamar lock.

/var/tmp : Archivos temporales, utilizando para mantener /tmp pequeño.

Los archivos que están en /var/tmp están almacenados por una duración no
específica. (Recuerde que los directorios temporales del sistema no garantizan mantener
la información por ningún periodo particular).

La información almacenada en /var/tmp típicamente se limpia en una "forma


definida localmente" pero usualmente menos frecuentemente que /tmp. Se puede
encontrar información sobre directorios temporales en la selección dedicada a /tmp
(arriba).

Debe existir un enlace simbólico desde /usr/tmp hacia var/tmp por razones de
compatibilidad.

46
1.4 Instalación de Linux
En la actualidad instalar cualquier distribución de Linux es sencillo, anteriormente
era toda una faena puesto que la mayoría del hardware no era compatible con Linux,
afortunadamente hoy en día ya no se presentan este tipo de problemas en Linux.

Hoy instalar Linux puede compararse a instalar un sistema operativo de Microsoft lo


que lo hace más accesible a las personas que desean utilizar Linux.

En la instalación de Linux nos basaremos sobre la distribución de Linux Red Hat


9.0, siendo que hoy en día el modo de instalación de las demás distribuciones son muy
parecidas.

1.4.1 Previo a la Instalación


Aunque este manual pretenda dar la información
más actual posible, se recomienda leer las Notas de
Última hora de Red Hat Linux para obtener información
que no esté disponible en esta documentación. Las Notas de
Última hora se pueden consultar en el CD #1 de Red Hat Linux y en línea:

http://www.redhat.com/docs/manuals/linux/

1.4.2 Es compatible su Hardware?


La compatibilidad del hardware es particularmente importante para aquellos
usuarios que tienen sistemas antiguos o sistemas que han construido ellos mismos. Red
Hat Linux 9 debería ser compatible con la mayoría del hardware de los sistemas que han
sido fabricados en los últimos dos años. De cualquier modo, como las características del
hardware cambian y mejoran diariamente, es difícil garantizar que su hardware sea
compatible al 100%. Encontrará la lista más reciente del hardware soportado en:
http://hardware.redhat.com/hcl/

47
1.4.3 Espacio en el Disco Duro
Casi todos los sistemas operativos modernos utilizan particiones de discos, y Red
Hat Linux no es una excepción. Cuando instale Red Hat Linux, tendrá que trabajar con
particiones de disco. Si no ha trabajado con particiones de disco no se preocupe no
necesita conocimientos avanzados lea la información que se encuentra en la siguiente
dirección: http://www.linux-cd.com.ar/manuales/rh9.0/rhl-ig-x86-es-9/ch-partitions.html ,
para conocer sobre particiones, particionar significa dividir el disco duro en varias partes
por ahora lo importante son las partición para linux.

Como recomendación para evitar problemas con diferentes tipos de particiones es


recomendable instalar Linux en un disco duro nuevo ó formateado al que se le pueda
borrar e instalar nuevas particiones.

1.4.4 Requisitos de espacio en disco para la instalación


Nota: Estas recomendaciones están basadas en una instalación que sólo instala un
idioma (como por ejemplo Español). Si desea instalar varios idiomas para usarlos en su
sistema, debería aumentar los requerimientos de espacio en disco. Estas
recomendaciones tampoco toman en cuenta el espacio adicional para los datos del
usuario. Debe contar con espacio adicional disponible si planea guardar cualquier dato de
usuario (o archivos personales) en su sistema.

Escritorio personal

Una instalación de tipo escritorio personal, habiendo elegido instalar GNOME o


KDE, requiere al menos 1.7GB de espacio libre. Si selecciona ambos entornos de
escritorio, necesitará al menos 1.8GB de espacio libre en disco.

Estación de trabajo

Una instalación de tipo estación de trabajo, incluye un entorno de escritorio gráfico y


herramientas de desarrollo de software, requiere al menos 2.1 GB de espacio libre. Si
escoge los dos entornos de escritorio GNOME y KDE necesitará al menos 2.2 GB de
espacio libre.

48
Servidor

Una instalación de tipo servidor requiere 850 MB en una instalación mínima sin X
(el entorno gráfico), al menos 1.5 GB de espacio libre en disco si todos los componentes
que no sean X (grupos de paquetes) están instalados y, al menos, 5.0 GB para instalar
todos los paquetes incluidos los entornos GNOME y KDE.

Personalizada

Una instalación de tipo personalizada requiere 475MB para una instalación mínima
y al menos 5.0GB de espacio libre si se selecciona cada paquete.

1.4.5 Procedimientos para la Instalación


Existen varios métodos que pueden usarse para instalar Red Hat Linux.
Si su sistema soporta el arrancar desde el CD-ROM, es fácil empezar una
instalación solo basta con introducir el disco de instalación booteable y seguir los pasos de
este manual. La mayoría de las computadoras nuevas permiten arrancar desde el CD-
ROM.

Su BIOS puede que necesite ser cambiada para permitir el arranque desde la
unidad de CD-ROM. Para obtener información adicional sobre las modificaciones de su
BIOS, consulte el manual de su computadora.

1.4.6 Método de arranque alternativo

Sino puede arrancar desde su CDROM Existe otra alternativa que podrá utilizar:

Disco de arranque
Si necesita un disco de arranque[1], tiene que crearlo. Se necesitará un disco de
arranque si no puede iniciar desde el CD-ROM. Puede usarlo para arrancar desde la red,
bloque o dispositivo PCMCIA (también necesitará el disquete de controladores
correspondiente a su escenario de arranque).

El archivo de imagen del disco, bootdisk.img, está localizado en el directorio images


en su CD-ROM de Red Hat Linux.
49
1.4.6.1 Creación de un disco de arranque de la instalación

El objetivo es escribir la imagen images/bootdisk.img a un disquete. puede que


necesite usar una imagen de disco actualizada desde la página de errata de Red Hat
Linux http://www.redhat.com/apps/support/errata/.

Un archivo de imagen contiene una copia exacta (o imagen) del contenido de un


disquete. Como el disquete contiene información del sistema de archivos, además de los
datos contenidos en los archivos, la imagen no podrá ser usada hasta que no haya sido
escrita en un disco.

Para comenzar, necesita un disquete de 3.5-pulgadas en blanco, formateado y de


alta densidad (1.44MB). Necesita acceso a una máquina con una unidad de disquete de
3.5-pulgadas. Este equipo debe ser capaz de correr bien sea un programa MS-DOS o la
utilidad dd encontrada en la mayoría de los sistemas operativos parecidos a Linux.

El directorio images/ en su CD-ROM de Red Hat Linux contiene las imágenes de


arranque. Una vez que haya seleccionado la imagen adecuada (bootdisk.img), transfiera el
archivo imagen al disquete usando alguno de los métodos siguientes.

1.4.6.2 Uso de la utilidad rawrite

Para crear un disquete bajo MS-DOS, utilice la utilidad rawrite incluida en el CD-
ROM de Red Hat Linux en el directorio dos utils. Primero, etiquete convenientemente un
disquete en blanco y formateado de 3.5-pulgadas (como "Disco de arranque" o "Disco de
actualización"). A continuación, utilice los siguientes comandos (asumiendo que su CD-
ROM es la unidad D:):
C:\> d:
D:\> cd \dosutils
D:\dosutils> rawrite
Enter disk image origen file name:..\images\bootdisk.img
Enter target diskette drive: a:
Please insert a formatted diskette into drive A: and
50
press --ENTER-- :[Enter]
D:\dosutils>

Primero, rawrite le pide el nombre del archivo de una imagen de disco; teclee el
directorio y el nombre de la imagen que quiere escribir (por ejemplo,
..\images\bootdisk.img). Luego rawrite le pedirá que introduzca la unidad de disquete a la
cual escribir; escriba a:. Para terminar, rawrite le pedirá confirmación de que un disco
formateado se encuentra en la unidad que usted ha seleccionado. Tras pulsar [Intro] para
confirmarlo, rawrite copiará el archivo con la imagen en el disco. Si necesita hacer otro
disco, etiquete el nuevo disco y ejecute de nuevo rawrite, especificando el nombre de la
nueva imagen que quiere crear.

Nota: La utilidad rawrite tan sólo acepta los nombres del archivo del tipo 8.3, como
por ejemplo filename.img[2]. Si ha descargado una imagen actualizada desde
http://www.redhat.com/ con un nombre similar a update-anaconda-03292002.img, deberá
renombrarla a updates.img antes de ejecutar rawrite.

1.4.6.3 Usar el comando dd

Para crear un disquete bajo Linux (o cualquier otro sistema operativo estilo Linux),
deberá tener los permisos necesarios para escribir en el dispositivo que representa la
unidad de discos de 3.5 pulgadas (conocida como /dev/fd0 bajo Linux).

Primero, etiquete convenientemente un disco en blanco formateado (como "Disco


de arranque" o "Disco de actualización"). Inserte el disco en la unidad (pero no ejecute el
comando mount[3] para montar el disquete). Tras montar el CD de Red Hat Linux,
cámbiese al directorio que contiene la imagen deseada y use el siguiente comando
(cambiando el nombre del archivo de imagen y del dispositivo como sea conveniente):
dd if=bootdisk.img of=/dev/fd0 bs=1440k

Para crear otro disquete, etiquete el nuevo disco, y ejecute el comando dd de


nuevo, especificando el nombre del nuevo archivo de imagen.

51
Notas[1] Un disco de arranque puede ser un disquete que usted ha creado para
arrancar (o iniciar) el programa de instalación, o puede ser un disquete que ha creado
durante el proceso de instalación y que se puede usar a posteriori para arrancar el sistema
operativo. Normalmente, su ordenador arranca desde un disco duro, pero si el disco duro
está dañado, podrá arrancar el ordenador desde un disquete de arranque.

[2] El nombre de tipo de archivo 8.3 viene de la convención de nombres de ocho


caracteres, un punto, y tres caracteres para la extensión. Esta convención soporta los
nombres de archivos entre 1 y 8 caracteres, los cuales no pueden tener espacios y no
pueden contener caracteres ? o _ al principio del nombre.

[3] Al montar un disquete o CD-ROM, usted coloca los contenidos de ese dispositivo
disponibles para usted.

1.4.6.4 Unidad de disco USB

También puede arrancar su programa de instalación usando un disco de arranque


en una unidad de disco USB (si su sistema soporta el arranque desde una unidad de
discos USB).

Como se puede observar es imposible documentar todos los sucesos que se


puedan presentar al instalar Linux, es por ello que la recomendación de consultar otros
manuales en caso de ser necesario.

1.4.7 Tipo de instalaciones

Normalmente, Red Hat Linux se suele instalar en su propia partición o conjunto de


particiones, o sobre otra instalación de Linux.

Aviso

Instalar Red Hat Linux sobre otra instalación de Linux (incluyendo Red Hat Linux) no
conserva la información (ni archivos ni datos) de la instalación anterior. ¡Asegúrese de que
guarda todos los archivos importantes! Para guardar los datos de su sistema, debería
52
copiarlos y/o realizar una actualización
Como se mencionó anteriormente están disponibles los siguientes tipos de
instalación los cuales le facilitan el proceso de instalación (con el inconveniente de una
pérdida potencial de flexibilidad), o, si lo desea, puede mantener la flexibilidad en una
instalación mucho más compleja. A continuación, veremos con más detalle cada uno de
los diferentes tipos de instalación para que pueda elegir cuál es el que se adapta mejor a
su situación.

1.4.8 Instalación del tipo escritorio personal

Más adecuada para los usuarios nuevos, la instalación de tipo escritorio personal
instalará el entorno de escritorio que usted quiera, el Sistema X Window, así como crea un
sistema ideal para trabajar desde la casa o el escritorio.

A continuación mostramos una lista de los requisitos de espacio mínimo


recomendado en disco para una instalación de tipo escritorio personal donde se instalará
tan sólo un idioma (como por ejemplo Español).
• Escritorio personal: 1.7 GB
• Escritorio personal escogiendo GNOME y KDE: 1.8 GB

Si planea seleccionar todos los grupos de paquetes (por ejemplo, Office/Productivity


es un grupo de paquetes), así como también seleccionar paquetes individuales, puede que
necesite unos 5 GB o más de espacio libre en disco adicional.

1.4.8.1 Instalación de tipo escritorio personal

Si elige particionamiento automático, una instalación de tipo escritorio personal


creará las siguientes particiones:
• El tamaño de la partición swap viene determinado por la cantidad de memoria RAM
en su sistema y la cantidad de espacio disponible en su disco duro. Por ejemplo,
si tiene 128 MB de RAM la partición swap creada puede ser 128 MB - 256 MB
(dos veces su RAM), dependiendo de cuanto espacio de disco haya disponible.
• Una partición de 100 MB (montada como /boot) en la que se ubican el kernel de
Linux y los archivos relacionados.
53
• Una partición raíz montada como / en la que están almacenados todos los archivos
(el tamaño exacto de su partición depende del espacio de disco disponible).

1.4.8.2 Instalaciones de tipo estación de trabajo

En este tipo de instalación, se instalan un entorno gráfico y el sistema X Window así


como herramientas de desarrollo.

A continuación le mostramos la lista de los requisitos del espacio libre del disco
para una instalación de tipo estación de trabajo que se realizará con un sólo idioma (como
por ejemplo en Inglés).
• Estación de trabajo: 2.1 GB
• Estación de trabajo seleccionando GNOME y KDE: 2.2 GB

Si desea elegir todos los grupos de paquetes (por ejemplo, GNOME es un grupo de
paquetes), así como seleccionar los paquetes individualmente, puede que necesite unos
5.0 GB o más de espacio en disco. Si proporciona esta cantidad adicional de espacio,
tendrá lugar para datos adicionales, si lo requiere.

1.4.8.3 ¿Qué hará una instalación de tipo estación de trabajo?

Si elige particionamiento automático, una instalación de tipo estación de trabajo creará las
siguientes particiones:

• El tamaño de la partición swap viene determinado por la cantidad de memoria RAM


en su sistema y la cantidad de espacio disponible en su disco duro. Por ejemplo,
si tiene 128 MB de RAM la partición swap creada puede ser 128 MB - 256 MB
(dos veces su RAM), dependiendo de cuanto espacio de disco haya disponible.

• Una partición de 100 MB (montada como /boot) en la que se ubican el kernel de


Linux y los archivos relacionados.

• Una partición raíz montada como / en la que están almacenados todos los archivos
(el tamaño exacto de su partición depende del espacio de disco disponible).

54
1.4.8.4 Instalación de tipo servidor

Una instalación de tipo servidor es más apropiada si quiere que su sistema funcione
como un servidor de tipo Linux y no desea personalizar mucho su sistema.

A continuación tiene los requisitos mínimos de espacio en el disco para una


instalación de tipo servidor en la que tan sólo se instalará un idioma (por ejemplo Español).

• Servidor (mínimo, sin interfaz gráfica): 850 MB

• Servidor (seleccionando todo, sin interfaz gráfica): 1.5 GB

• Servidor (seleccionando todo, incluyendo una interfaz gráfica): 5.0 GB

Si quiere elegir todos los grupos de paquetes, así como seleccionar paquetes
individuales adicionales, deberá preveer espacio adicional de unos 5.0 GB o más.

Durante una instalación de tipo servidor, el sistema X Window no se configurará y


no se cargará ningún entorno gráfico de usuario cuando se inicie el sistema, a no ser que
elija instalar los paquetes apropiados durante la selección de paquetes.

1.4.8.5 Instalación de tipo servidor

• El tamaño de la partición swap viene determinado por la cantidad de memoria RAM


en su sistema y la cantidad de espacio disponible en su disco duro. Por ejemplo,
si tiene 128 MB de RAM la partición swap creada puede ser 128 MB - 256 MB
(dos veces su RAM), dependiendo de cuanto espacio de disco haya disponible.

• Una partición de 100 MB montada como /boot en el kernel de Linux y archivos


relacionados.

• Una partición raíz montada como / en la que están almacenados todos los archivos
(el tamaño exacto de su partición depende del espacio de disco disponible).

Este esquema de particionamiento se convierte en un sistema de archivos flexible


para la mayoría de tareas del servidor.

55
1.4.8.6 Instalación personalizada

Una instalación personalizada le permite la mayor flexibilidad durante la instalación.


Las instalaciones de tipo estación de trabajo y servidor automáticamente pasan a través
del proceso de instalación por usted y pueden omitir determinados pasos. Durante una
instalación personalizada, tiene un control completo sobre los paquetes que serán
instalados en su sistema.

Los requisitos de espacio recomendado en disco para una instalación


personalizada son los siguientes:

• Personalizada (mínimo): 475 MB

• Personalizada (escogiendo todo): 5.0 GB

1.4.8.7 Instalación de tipo personalizada

Como se puede deducir del nombre, una instalación personalizada hace énfasis en
la flexibilidad. Tiene control completo sobre los paquetes que serán instalados en su
sistema.

Si escoge particionar automáticamente, una instalación personalizada creará las


siguientes particiones:

• El tamaño de la partición swap viene determinado por la cantidad de memoria RAM


en su sistema y la cantidad de espacio disponible en su disco duro. Por ejemplo,
si tiene 128 MB de RAM la partición swap creada puede ser 128 MB - 256 MB
(dos veces su RAM), dependiendo de cuanto espacio de disco haya disponible.

• Una partición de 100 MB (montada como /boot) en la que residen el kernel de Linux
y los archivos relacionados.

• Una partición raíz montada como / en la que están almacenados todos los archivos
(el tamaño exacto de su partición depende del espacio de disco disponible).

1.4.8.8 Actualización de su sistema

56
Al actualizar Red Hat Linux 6.2 (o superior) no borrará los datos existentes. El
programa de instalación actualiza el kernel modular y los paquetes que ya tenga
instalados.

1.4.5 Información sobre el Hardware

Una de las principales preocupaciones en Linux es la compatibilidad con el


Hardware, la cual ya se ha alcanzado en más de un 80% debido a las constantes
actualizaciones que sufre Linux. Los fabricantes también se han unido a esta causa pues
en la mayoría está entregando en controlador de un dispositivo en versión para Linux. Sin
embargo en los elementos mínimos necesarios para instalar Linux en una PC.

1.4.5.1 Hardware Mínimo

Como todo Sistema Operativo Linux también tiene una lista de requisitos mínimos a
considerar en el Hardware empezando por el procesador 80386 con 2 Mb de memoria
RAM y 40 Mb de espacio libre en disco rígido y puede correr tranquilamente sobre esta
configuración. Para utilizar el modo grafico (vale la pena, Sistema X Windows ;) necesita al
menos 8 Mb de RAM y 100 Mb de espacio en disco.

Linux puede trabajar con los buses ISA, VLB (Vesa Local Bus), EISA y PCI.
Además puede trabajar en sistemas con arquitectura PS/2 MCA (Micro Channel
Architecture). Linux puede correr, además, en la familia de PC's portables, desde las
80386 en adelante, inclusive con su sistema grafico.

1.5 Empezando la Instalación de RED HAT Linux 9


Para empezar la instalación, tiene que iniciar el programa de instalación. Asegúrese
de disponer de todos los medios (CDs o similar) necesarios para la instalación.

1.5.1 Arranque del programa de instalación


Puede arrancar el programa de instalación usando cualquiera de los siguientes
medios (en función del medio compatible con su sistema):
57
CD-ROM de arranque — Su ordenador soporta una unidad de CD-ROM de
arranque y quiere realizar una instalación de red o disco duro.

Disquete de arranque — Utilice esta opción si su ordenador no soporta CD ROM para el


arranque y quiere efectuar una instalación desde un CD-ROM, red o disco duro.

Introduzca el disquete de arranque en la primera unidad de disco y vuelva a


arrancar (o arranque usando el CD-ROM, si su ordenador admite arrancar desde la unidad
de CD-ROM). La configuración de su BIOS puede que se tenga que cambiar para que sea
posible arrancar desde un disco o un CD-ROM.

Sugerencia

Para modificar la BIOS, tenga en cuenta las instrucciones que puede ver cuando arranca el
sistema por primera vez. Verá una línea de texto que le pide pulsar el botón [Supr] o [F1] para
acceder a los parámetros de la BIOS.
Después, localice la sección donde puede alterar la secuencia de arranque. Por defecto, ésta
suele ser C, A o A, C (dependiendo de si arranca desde su disco duro, unidad [C], o si lo hace desde
una unidad de disco flexible o disquetera, unidad [A]). Cambie esta secuencia para que el CD-ROM
sea el primero en el orden de inicio y C o A (cualquiera de las dos, suele ser la unidad de arranque,
por defecto) en segundo lugar. Esto hará que su ordenador utilice como unidad de arranque la
unidad de CD-ROM; si no encuentra nada allí, mirará en el disco duro o en la disquetera.
Guarde sus cambios antes de salir de la BIOS. Para más información, consulte la documentación
que se suministra con el sistema.

Después de una breve pausa aparecerá una pantalla con el indicador de comandos
boot:. Esta pantalla contiene información sobre algunas opciones de arranque. Cada una
de estas opciones está asociada a una pantalla de ayuda. Para acceder a ella, pulse la
tecla de función correspondiente que se encuentra en la lista de la parte inferior de la
pantalla.

Al arrancar el programa de instalación, debería tener en cuenta dos cuestiones:

• Una vez que vea el indicador de comandos boot:, la pantalla inicial lanzará
automáticamente el programa de instalación si no hace nada durante un minuto. Para
inhabilitar esta característica, pulse una de las teclas de función de la pantalla de ayuda.

58
• Si pulsa una tecla de función de una pantalla de ayuda, tendrá que esperar unos
segundos para la lectura desde el medio elegido para el arranque.

Normalmente, tendrá que pulsar simplemente [Intro] para empezar. Observe los
mensajes de arranque para ver si el kernel de Linux detecta su hardware. Si nota que el
hardware no ha sido detectado de forma correcta, tendrá que reiniciar en modo experto. Si
su hardware se detecta adecuadamente, puede continuar con la siguiente sección. En
caso de que necesite alguna opción de arranque adicional que no se trate en este manual
puede consultar la siguiente dirección http://www.linux-cd.com.ar/manuales/rh9.0/rhl-ig-
x86-es-9/s1-x86-starting.html

1.5.2 Instalación desde un CD-ROM


Para instalar Red Hat Linux desde un CD-ROM, escoja CD-ROM y seleccione OK.
Cuando el programa se lo indique, inserte el CD de Red Hat 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 [Intro].

El programa de instalación probará su sistema e intentará identificar su lector de


CD-ROM. En primer lugar, buscará un lector de CD-ROM IDE (también conocido como
ATAPI). Si lo encuentra, continuará con el siguiente paso del proceso de instalación.

Nota

Si quiere interrumpir la instalación en este momento, tan sólo tendrá que reiniciar la
máquina y extraer el disquete de arranque o el CD-ROM. Puede anular la instalación en
cualquier momento antes de la pantalla Comenzar la instalación.

Si no se ha reconocido ninguna unidad de CD-ROM, y es del tipo SCSI, puede


seleccionarlo manualmente en el momento en el que se le pida seleccionar el tipo de CD-
ROM. Seleccione SCSI si su CD-ROM está conectado con un controlador SCSI; el
programa de instalación le pedirá elegir un controlador SCSI. Elija el que más se parezca
a su controlador. Puede además especificar opciones para el controlador si es necesario,

59
sin embargo, la mayoría de los controladores detectarán su adaptador SCSI
automáticamente.

Sugerencia

Encontrará una lista parcial de parámetros opcionales para unidades de CD-ROMs en el


Manual de referencia de Red Hat Linux, en el apéndice Parámetros y módulos generales.

1.5.2.1 que hacer si no detecta el CD-ROM IDE


Si tiene un CD-ROM IDE (ATAPI), pero el programa de instalación no lo detecta, le
preguntará qué tipo de CD-ROM tiene. En este caso reinicie el programa de instalación y
en el intérprete de comandos boot: escriba linux hdX=cdrom. Reemplace la X con una de
las siguientes letras, dependiendo de la interfaz a la que está conectada la unidad y de si
está configurado como maestro o esclavo (también conocido como primario y secundario):

• a — Primer controlador IDE, maestro.

• b — Primer controlador IDE, esclavo.

• c — Segundo controlador IDE, maestro.

• d — Segundo controlador IDE, esclavo.


Si tiene un tercer o un cuarto controlador, continúe simplemente asignando las
letras en orden alfabético, pasando de controlador a controlador, de maestro a esclavo).

1.5.3 Bienvenido a Red Hat Linux


La pantalla de Bienvenida no le pedirá ninguna información. Por favor lea el texto
de ayuda en el panel de la izquierda para instrucciones adicionales e información sobre el
registro de su producto Red Hat Linux.

Observe que el botón Esconder ayuda se encuentra en la parte inferior izquierda


de la pantalla. La pantalla de ayuda aparece abierta por defecto. Si no quiere visualizar la
información, haga click en Esconder ayuda para minimizar esta parte de la pantalla. Haga
click en Siguiente para continuar.

1.5.4 Selección del idioma


60
Utilizando su ratón, elija el idioma que quiere usar por defecto para la instalación y
para el sistema. La selección del idioma apropiado le ayudará también a seguir los pasos
correctos para configurar la zona horaria (huso horario), más tarde. El programa de
instalación intentará definir el huso horario adecuado basándose en su configuración.

Una vez que haya seleccionado el idioma, haga click en Siguiente para continuar.

1.5.5 Configuración del ratón


Elija el ratón adecuado a su sistema. Si no encuentra el tipo exacto, elija el que crea
que será compatible con el suyo.

61
Para determinar la interfaz del ratón, mire el conector de su ratón y siga los
siguientes diagramas. Si está instalando Red Hat Linux en un ordenador portátil, en la
mayoría de los casos el dispositivo en cuestión será compatible con PS/2.

Si su ratón es serial, el puerto será parecido a .

Si su ratón es un ratón PS/2, el puerto será parecido a .

Si su ratón es un ratón USB, el puerto será parecido a .

Si su ratón es un ratón AT, el puerto será parecido a .

Si no encuentra un ratón del que esté seguro que es compatible con su sistema,
seleccione una de las entradas Generic, basadas en el número de botones de su ratón y
de su interfaz.

Sugerencia

Si tiene un ratón de scroll, seleccione la entrada Generic - Wheel Mouse (con el puerto del
ratón correcto) como un tipo de ratón compatible.

Si tiene un ratón PS/2, USB, o Bus, no necesita seleccionar un puerto y dispositivo.


Si tiene un ratón serial, seleccione el puerto correcto y dispositivo en el que su ratón está
conectado.
La casilla de verificación Emular 3 Botones le permite simular el funcionamiento de
un ratón de tres botones si tiene uno de dos. Si selecciona esta casilla de verificación,
podrá emular un tercer botón, el que se encontraría en el "medio", presionando
simultáneamente ambos botones disponibles en su ratón de dos botones.

62
1.5.6 Seleccionar Actualizar o Instalar
La pantalla Examinar la actualización aparece automáticamente si el programa de
instalación detecta una versión previa de Red Hat Linux en su sistema. Si desea llevar a
cabo una actualización, seleccione Actualizar una instalación existente y refiérase al
Apéndice A para más instrucciones.

Asegúrese de seleccionar Personalizar los paquetes a actualizar si desea tener


mayor control sobre cuáles paquetes serán actualizados en su sistema.

63
Para realizar una nueva instalación de Red Hat Linux en su sistema, seleccione
Realizar una nueva instalación de Red Hat Linux y haga click en Siguiente.

1.5.7 Configuración del particionamiento del disco


El particionamiento le permite dividir el disco duro en secciones aisladas, donde
cada sección se comporta como su propio disco duro. El particionamiento es
especialmente útil si ejecuta más de un sistema operativo. En esta pantalla, puede elegir
entre realizar un particionamiento automático o un particionamiento manual con Disk
Druid.

64
El particionamiento automático le permite realizar una instalación sin tener que
particionar los discos usted mismo. Si no se siente seguro durante la partición manual de
su disco, se aconseja elegir la partición automática, a fin de que el proceso de instalación
decida por vd. qué tipo de partición adoptar.

1.5.8 Particionamiento automático


El particionamiento automático le permite tener control de los datos que se han
eliminado en su sistema. Tiene las siguientes opciones:
Eliminar todas las particiones Linux del sistema — seleccione esta opción para
eliminar tan sólo las particiones Linux (particiones creadas en una instalación Linux

65
previa). No borrará el resto de particiones que tenga en el disco(s) duro(s) (tal como VFAT
o particiones FAT32).

Eliminar todas las particiones del sistema — seleccione esta opción para
eliminar todas las particiones de su disco duro (esto incluye las particiones creadas por
otros sistemas operativos tales como Windows 95/98/NT/2000). Mantener todas las
particiones y usar el espacio libre existente — seleccione esta opción para conservar
los datos y las particiones actuales, presumiendo que tiene suficiente espacio disponible
en los discos duros.

Mediante el uso del ratón, escoja los discos duros en los que quiere instalar Red
Hat Linux. Si tiene dos o más discos duros, puede escoger qué disco duro debería
contener esta instalación. Esto no repercutirá a los discos duros no seleccionados ni a
ninguno de sus datos.

66
Nota

Siempre es una buena idea respaldar los datos que tenga en sus sistemas. Por
ejemplo, si está actualizando o creando un sistema de arranque dual, debería respaldar los
datos que desea conservar en su(s) disco(s) duro(s). Los errores sí ocurren y pueden resultar
en la pérdida de todos sus datos.

Para revisar y realizar los cambios necesarios en las particiones creadas con el
particionamiento automático, seleccione la opción Revisar. Después de seleccionar
Revisar y hacer click en Siguiente para continuar, verá las particiones creadas en la
aplicación Disk Druid. También podrá modificar estas particiones si no cumplen sus
necesidades.

Haga click en Siguiente una vez que haya hecho sus selecciones para continuar.

1.5.9 Configuración del gestor de arranque


Para poder arrancar su sistema Red Hat Linux sin el disquete de arranque,
necesitará instalar un gestor de arranque. El gestor de arranque es el primer software que
se ejecuta cuando se arranca el ordenador. Es responsable de la carga y de la
transferencia del control al software del sistema operativo del kernel. El kernel, por otro
lado, inicializa el resto del sistema operativo.

El programa de instalación le ofrece dos gestores de arranque, GRUB y LILO.

GRUB (GRand Unified Bootloader), que se instala por defecto, es un gestor de


arranque muy potente ya que puede cargar una gran variedad de sistemas operativos
gratuítos así como sistemas operativos de propietarios con el sistema de cargado en
cadena (el mecanismo para cargar sistemas operativos no soportados mediante la carga
de otro gestor de arranque, tal como DOS o Windows).

67
LILO (LInux LOader) es un gestor de arranque versátil para Linux. No depende de
un determinado sistema de ficheros y puede arrancar las imágenes del kernel de Linux de
los disquetes y de los discos duros e incluso arrancar otros sistemas operativos.

Si no desea instalar GRUB como su gestor de arranque, haga click en Cambiar el


gestor de arranque. Puede escoger entre instalar LILO o no instalar ninguno.

Si ya tiene otro gestor de arranque que arranque Linux y no desea sobreescribir el


gestor de arranque actual o si desea arrancar el sistema con disquetes, elija No instalar
gestor de arranque haciendo click en el botón Cambiar el gestor de arranque.

68
Todas las particiones que se pueden arrancar aparecen en una lista, incluso las
particiones que usan otros sistemas operativos. La partición que contiene el sistema de
ficheros root del sistema tiene la Etiqueta de Red Hat Linux (para GRUB) o linux (para
LILO). Las otras particiones puede que también tengan etiquetas de arranque. Si desea
añadir o cambiar la etiqueta de arranque de las otras particiones que el programa de
instalación ya ha detectado, haga click en una de ellas para seleccionarla. Una vez
seleccionada puede realizar los cambios de la etiqueta de arranque haciendo click en el
botón Modificar.

Seleccione Por defecto junto con la partición root preferida para escoger el sistema
operativo que se desee arrancar por defecto. No podrá avanzar en la instalación mientras
no escoja la imagen de arranque por defecto.

Nota

La columna de las Etiquetas muestra lo que debe introducir en el prompt de


arranque, en gestores de arranque no gráficos, para poder arrancar el sistema operativo
deseado.
Una vez cargada la pantalla de arranque de GRUB, use las teclas de las flechas para
escoger la etiqueta de arranque o escriba [e] para modificar. Aparacerá una lista con el
contenido del fichero de configuración para la etiqueta de arranque que haya seleccionado.
En la pantalla gráfica de LILO, pulse [Ctrl]-[x] para ir al indicador de comandos
boot:. Si se ha olvidado de las etiquetas de arranque definidas para el sistema, puede pulsar
[Tab] en el intérprete de comandos para mostrar la lista de las etiquetas de arranque
definidas.

Las contraseñas del gestor de arranque ofrecen un mecanismo de seguridad en un


ambiente en el que se tenga acceso físico al servidor.

Si está instalando un gestor de arranque, debe crear una contraseña para proteger
el sistema. Sin dicha contraseña, los usuarios con acceso a su sistema pueden pasar
opciones al kernel que pueden poner en compromiso la seguridad de su sistema. Con la
contraseña, se tiene que introducir para poder seleccionar cualquier opción de arranque
que no sea estándar.

69
Si selecciona colocar una contraseña para aumentar la seguridad del sistema,
asegúrese de seleccionar la casilla Usar la contraseña del gestor de arranque.

Una vez seleccionada, introduzca la contraseña y confírmela.

Para configurar otras opciones más avanzadas de gestores de arranque, como


cambiar el orden de las unidades o pasar opciones al kernel, seleccione la opción
Configurar opciones avanzadas del gestor de arranque y haga click en Siguiente.

1.5.10 Configuración avanzada del gestor de arranque


Ahora que ha decidido cúal gestor de arranque instalar, tiene que decidir dónde
quiere instalarlo. Puede instalar el gestor de arranque en uno de los dos sitios siguiente:

El master boot record (MBR)


Este es el sitio recomendado para instalar un gestor de arranque, a no ser que el
MBR esté ocupado por el gestor de arranque de otro sistema operativo, como System
Commander. El MBR es un área especial del disco duro que la BIOS de su ordenador
carga automáticamente y el punto más próximo en el que el gestor de arranque puede
tomar el control de la secuencia de arranque. Si lo instala en el MBR, al arrancar su
máquina, GRUB (o LILO) presentará un indicador de comandos de arranque. Podrá
entonces iniciar Red Hat Linux o cualquier otro sistema operativo que le haya indicado al
gestor de arranque.

El primer sector de la partición raíz


Se recomienda si está utilizando otro gestor de arranque en su sistema. En este
caso, el otro gestor de arranque tendrá el control en un primer momento. Podrá configurar
ese gestor de arranque para que inicie GRUB (o LILO), que iniciará a su vez Red Hat
Linux.

70
Si el sistema sólo utilizará Red Hat Linux, debería seleccionar el MBR. Para
sistemas con Windows 95/98, también debería instalar el gestor de arranque en el MBR
para que se puedan iniciar los dos sistemas operativos.

Haga click en Cambiar el orden de la unidad si desea cambiar el orden de la


unidad o si su BIOS no devuelve el orden correcto. Será útil si tiene más de un adaptador
SCSI o si tiene ambos tipos de adaptadores SCSI e IDE y desea arrancarlos con el
dispositivo SCSI.

La opción Forzar el uso de LBA32 (no requerida normalmente) le permite


exceder el límite de cilindro 1024 para la partición /boot. Si posee un sistema que es
compatible con la extensión LBA32 para arrancar los sistemas operativos por encima del

71
límite de cilindro 1024 y desea ubicar la partición /boot más allá de este límite, debería
seleccionar esta opción.

Sugerencia

Cuando esté particionando su disco duro, recuerde que la BIOS en algunos sistemas
viejos no pueden acceder más allá de los primeros 1024 cilindros del disco duro. En este
caso, deje suficiente espacio para la partición Linux /boot en los primeros 1024 cilindros
del disco para arrancar Linux. Las otras particiones Linux pueden estar después del cilindro
1024.
En parted, 1024 cilindros equivalen a 528MB. Refiérase a
http://www.pcguide.com/ref/hdd/bios/sizeMB504-c.html para más información.

Si desea añadir opciones predeterminadas al comando boot, ingréselas en el


campo Parámetros generales del Kernel. Cualquier opción que ingrese se pasarán al
kernel del Linux cada vez que arranque.

1.5.11 Modo rescate


Si necesita utilizar el modo rescate, dispone de varias opciones.

Usando el CD-ROM de arranque, escriba linux rescue en el indicador de comandos


boot:.

Arrancando el sistema desde un disquete de arranque de instalación creado desde


la imagen boot.img. Este método requiere que se inserte el CD-ROM #1 de Red Hat Linux
como la imagen de rescate o que la imagen de rescate esté en el disco duro como una
imagen ISO. Una vez arrancado el sistema usando este disquete, escriba linux rescue en
el intérprete de comandos boot:.

Usando el disquete de arranque en red creado a partir de bootnet.img o del


disquete de arranque PCMCIA de pcmcia.img. Una vez arrancada utilizando este disquete,
escriba linux rescue en el indicador de comandos boot:. Sólo puede hacer esto si la

72
conexión en red está funcionando. Deberá identificar el host de la red y el tipo de
transferencia.

1.5.12 Gestores de arranque alternativos


Como se ha explicado con anterioridad, si no desea usar un gestor de arranque,
tiene varias alternativas:
Disquete de arranque: Puede utilizar el disquete de arranque creado desde el
programa de instalación (si ha elegido crearlo).

LOADLIN: Puede cargar Linux desde MS-DOS. Desafortunadamente, esto requiere


una copia del kernel de Linux (y un disco RAM inicial si dispone de un dispositivo SCSI)
disponible en la partición MS-DOS. La única forma de realizar esto es arrancando el
sistema Red Hat Linux con otro método (por ejemplo, desde un disquete de arranque) y
después copiar el kernel a una partición MS-DOS. LOADLIN está disponible en

ftp://metalab.unc.edu/pub/Linux/system/boot/dualboot/

y en los sitios réplicas asociados.

SYSLINUX: SYSLINUX es un programa de MS-DOS muy similar a LOADLIN.


También está disponible desde

ftp://metalab.unc.edu/pub/Linux/system/boot/loaders/

y en los sitios espejo asociados.

Gestores de arranque comerciales: Puede cargar Linux usando gestores de


arranque comerciales. Por ejemplo, System Commander o Partition Magic pueden
arrancar Linux (pero todavía necesitan que GRUB o LILO estén instalados en la partición
raíz de Linux).

Nota

73
Los gestores de arranque tales como LOADLIN y System Commander son considerados
gestores de terceros y no son soportados por Red Hat.

1.5.13 Tarjetas madre SMP, GRUB, y LILO


Esta sección es específica de las tarjetas madre SMP. SMP, acrónimo de
Symmetric Multiprocessing (Multiprocesamiento simétrico), es una arquitectura de
computadores que proporciona un rápido rendimiento al poner varias CPUs disponibles
para realizar simultáneamente procesos individuales (multiprocesamiento). Si el programa
de instalación detecta una tarjeta madre SMP en su sistema, automáticamente creará dos
entradas para el gestor de arranque.

Nota

Los sistemas Intel® Pentium® 4 con hipertramado tendrán un kernel SMP instalado por
defecto.

Las dos entradas de GRUB serán Red Hat Linux (kernel version) y Red Hat Linux
(kernel version-smp). La Red Hat Linux (kernel version-smp) arrancará por defecto. Sin
embargo, si tiene problemas con el kernel SMP, puede elegir arrancar la entrada Red Hat
Linux (kernel version). Mantendrá toda la funcionalidad, pero tan sólo estará operando con
un procesador.

Las dos entradas LILO serán linux y linux-up. La entrada linux arrancará por
defecto. Sin embargo, si tiene problemas con el kernel SMP, puede elegir si quiere
arrancar linux-up en su lugar. Mantendrá toda la funcionalidad que tenía antes, pero tan
sólo utilizará un procesador.

1.5.14 Configuración de red


Si no tiene tarjeta de red, no debería ver esta pantalla. Vaya directamente al
siguiente en el índice. Si tiene un dispositivo de red y no ha configurado todavía su red,
tiene la oportunidad de hacerlo (como se muestra en la siguiente Figura.

74
El programa de instalación automáticamente detecta los dispositivos de red que
tiene y los muestra en la lista Dispositivos de red.

Una vez que haya seleccionado el dispositivo de red, haga click en Modificar. En la
pantalla desplegable Modificar interfaz puede elegir la dirección IP o la máscara de red
del dispositivo con el DHCP (o manualmente si no ha seleccionado DHCP ) y puede
también activar el dispositivo en el intervalo de arranque. Si selecciona Activar en
arranque, el dispositivo de red arrancará cuando arranque el sistema. Si no tiene el
acceso al cliente DHCP o no está seguro contacte con el administrador de red.

Modificación del dispositivo de red

Nota

75
No use los números que se han usado en el ejemplo. Estos valores no funcionarán para su
propia configuración de red. Si no está seguro de qué valores desea introducir, contacte con
su administrador de red para recibir soporte.

Si tiene un nombre de dominio para el dispositivo de red, introdúzcalo en el campo


Nombre del host o puede elegir tener el DHCP automáticamente.

Para finalizar, introduzca la Puerta de enlace y el DNS primario (si los conoce, también el
DNS secundario y DNS terciario).

Sugerencia

Aunque su ordenador no forme parte de la red, puede introducir el nombre del host en su
sistema. Si no aprovecha esta oportunidad de introducir un nombre, su sistema será conocido
como localhost.

Sugerencia

Para cambiar la configuración de red después de la instalación, use la Herramienta de


administración de redes.
Escriba el comando redhat-config-network en una línea de comandos de la shell para
lanzar la Herramienta de administración de redes. Si no es root, se le pedirá la contraseña
root para continuar.

1.5.15 Configuración del cortafuego

76
Red Hat Linux también le ofrece protección vía cortafuegos (firewall) para una
seguridad mejorada del sistema. Un cortafuegos se dispone entre su ordenador y la red y
determina qué recursos de su equipo están accesibles para los usuarios remotos de la
red. Un cortafuegos bien configurado puede aumentar significativamente la seguridad de
su sistema.

Seleccione el nivel de seguridad apropiado del sistema.


Alto
Si elige Alto, su sistema no aceptará más que las conexiones (además de las
definidas por defecto) que hayan sido explícitamente definidas por usted. Por defecto, sólo
se aceptan las siguientes conexiones:

Respuestas de DNS
DHCP — para que cualquier interfaz de red que use DHCP puedan ser configuradas
correctamente

Si elige Alto, su cortafuegos no permitirá:


77
FTP en modo activo (el modo pasivo de FTP, usado por defecto en la mayoría de los
clientes debería funcionar)

Transferencias de archivos IRC DCC

RealAudio™

Clientes del Sistema X Window remotos

Si conecta su sistema a Internet, pero no piensa utilizarlo como servidor, ésta es la


opción más segura. Si necesita servicios adicionales, puede elegir Personalizar para
permitir servicios específicos a través del cortafuego.

Medio
Si elige Medio, su cortafuegos no permitirá a las máquinas remotas acceder a
ciertos recursos de su sistema. Por defecto, los accesos a los recursos siguientes no están
permitidos:
Puertos menores del 1023 — los puertos reservados estándar, usados por la
mayoría de los servicios, como FTP, SSH, telnet, HTTP, y NIS.

Puerto del servidor NFS (2049) — NFS está desactivado para los servidores
remotos y los clientes locales.

La pantalla local del Sistema X Window para clientes X remotos.


Puerto del servidor de fuentes de X (por defecto, xfs no escucha a la red, ya que
está deshabilitado en el servidor de fuentes).
Si quiere, puede permitir recursos, como por ejemplo, RealAudio™, mientras que
bloquee los recursos normales (elija Medio). Puede seleccionar Personalizar para permitir
a servicios específicos pasar a través del cortafuego.

Ningún cortafuego

78
La configuración "ningún cortafuegos" proporciona un acceso completo al sistema y
no realiza ningún tipo de verificación de seguridad. La comprobación de seguridad es la
desactivación del acceso a determinados servicios. Tan sólo se recomienda esta opción si
está usando una red certificada y segura (no Internet), o si planea realizar una
configuración detallada del cortafuego más adelante.

Elija Personalizar para añadir dispositivos autenticados o para permitir nuevos servicios.

Dispositivos autenticados
Al seleccionar Dispositivos autenticados permitirá el acceso a su sistema a todo el
tráfico del dispositivo; se excluirá de las reglas del cortafuego (firewall). Por ejemplo, si
está ejecutando una red local, pero está conectado a Internet vía PPP, puede seleccionar
eth0 y todo el tráfico que llegue de su red local será permitido. Al seleccionar eth0 como
autentificado significa que aceptaremos todo el tráfico Ethernet, pero la interfaz ppp0
seguirá bajo el cortafuego. Si quiere restringir todo el tráfico de una interfaz, déjelo sin
seleccionar.

No es recomendable que haga de un dispositivo conectado a redes públicas tal


como la Internet, un Dispositivo autenticado.

Permitir la entrada
Al activar esta opción, permitirá que algunos servicios específicos puedan pasar a
través del cortafuegos. Tenga en cuenta que, durante una instalación del tipo estación de
trabajo, la mayoría de estos servicios no están instalados en el sistema.

DHCP
Si permite la entrada y salida de peticiones DHCP, permitirá el acceso a cualquier
interfaz de red que esté utilizando DHCP para determinar su propia dirección IP. DHCP
suele estar activado. Si DHCP no está activado, su ordenador no podrá obtener una
dirección IP.

79
SSH
Secure SHell (SSH) es un paquete de utilidades para poder conectarse y ejecutar
programas en una máquina remota. Si prevee utilizar las utilidades SSH para que pasen a
través de un cortafuegos, deberá activar esta opción. Necesitará tener el paquete
openssh-server instalado para acceder a la máquina remotamente utilizando herramientas
SSH.

Telnet
Telnet es un protocolo para conectarse a máquinas remotas. Las comunicaciones
Telnet no son encriptadas y no proporcionan seguridad de red. No se recomienda permitir
Telnet remoto. Si quiere permitir el servicio Telnet entrante, deberá instalar el paquete
telnet-server.

WWW (HTTP)
El protocolo HTTP es utilizado por Apache (y otros servidores web) para ofrecer el
servicio de páginas web. Si quiere crear un servidor web disponible públicamente, habilite
esta opción. Esta opción no es necesaria para la publicación de páginas web en local.
Necesitará instalar el paquete httpd si quiere servir páginas web.

La habilitación de WWW (HTTP) no abrirá un puerto para HTTPS. Para habilitar


HTTPS, especifíquelo en el campo Otros puertos.

Mail (SMTP)
Si desea permitir la entrega de correo a través de su cortafuegos, de tal forma que
los hosts remotos se puedan conectar directamente a su máquina para repartir el correo,
habilite esta opción. No necesita esta opción para obtener su correo desde su servidor ISP
usando POP3 o IMAP, o si utiliza una herramienta como fetchmail. Observe que un
servidor configurado inadecuadamente puede permitir que máquinas remotas usen su
servidor para enviar correo basura.

FTP
80
El protocolo FTP se utiliza para transferir archivos entre máquinas en una red. Si
planea colocar un servidor FTP disponible públicamente, habilite esta opción. Necesitará
instalar el paquete wu-ftpd para que esta opción sea útil.

Otros puertos
Puede permitir el acceso a puertos que no han sido listados aquí, listándolo en el
campo Otros puertos. Use el formato siguiente: port:protocol. Por ejemplo, si quiere
permitir IMAP diría imap:tcp. También puede especificar explícitamente puertos
numéricos; para permitir paquetes UDP en el puerto 1234 a través del cortafuegos, escriba
1234:udp. Para especificar varios puertos, sepárelos por comas.

Sugerencia

Para cambiar la configuración del nivel de seguridad después de haber finalizado la


instalación, use la Herramienta de configuración de nivel de seguridad.
Escriba el comando redhat-config-securitylevel en la shell de la línea de comandos
para lanzar la Herramienta de configuración de nivel de seguridad. Si no es root, se le
pedirá la contraseña root para continuar.

1.5.16 Selección del soporte del idioma


Puede instalar y soportar múltiples idiomas para usar en su sistema.

Debe instalar un idioma para usarlo como idioma por defecto. El idioma por defecto
será usado por el sistema una vez que la instalación se haya completado. Si escoge
instalar otros idiomas, puede cambiar su idioma por defecto tras la instalación.

Si tan sólo va a utilizar un idioma en su sistema, podrá ganar bastante espacio en


disco.

81
Utilice el botón Reiniciar para cancelar sus selecciones. Al reiniciar se volverá a la opción
predeteminada, tan sólo el idioma que ha seleccionado para el uso durante la instalación
será instalado.

Sugerencia

Para cambiar la configuración del idioma una vez finalizada la instalación, use la
Herramienta de configuración del idioma.
Escriba el comando redhat-config-language en una línea de comandos de la shell para
lanzar la Herramienta de configuración del idioma. Si no es root, se le pedirá la
contraseña root para continuar.

1.5.17 Configuración del horario

82
Puede elegir su huso horario o bien seleccionando la localización física de su
ordenador o bien especificando su huso horario en función del Universal Time Coordinated
(UTC).

En el mapa interactivo, puede hacer click en una ciudad específica, que están
marcadas con un punto amarillo; una X roja aparecerá indicando su selección. Puede
también desplazarse en la lista y seleccionar un huso horario.

La segunda pestaña le permite especificar un desplazamiento UTC. Esta pestaña


muestra una lista de desplazamientos para elegir, así como las opciones para el cambio
del horario de invierno/verano.

1.5.18 Configuración de la contraseña de root


La configuración de la cuenta y la contraseña root es uno de los pasos más
importantes durante la instalación. Su cuenta root es similar a la cuenta del administrador
usada en las máquinas Windows NT. La cuenta root es usada para instalar paquetes,
83
actualizar RPMs y realizar la mayoría de las tareas de mantenimiento del sistema.
Conectándose como root le dá control completo sobre el sistema.
Utilice la cuenta de root tan sólo para la administración de su sistema. Cree una
cuenta que no sea root para uso general y ejecute su - para actuar como root cuando
necesite configurar algo de forma rápida. Estas normas básicas minimizarán las
posibilidades de que un comando incorrecto o de un error de tipografía puedan dañar su
sistema.

Sugerencia

Para convertirse en root, teclee su - en el intérprete de comandos de la shell en una ventana


de terminal y, a continuación, pulse [Intro]. Luego, introduzca la contraseña de root y pulse
[Intro].

1.5.19 Configuración de la autenticación


Si está realizando una instalación del tipo escritorio personal, estación de trabajo o
servidor, vaya al siguiente punto según índice.

Puede saltarse esta sección si no va a a configurar contraseñas de red. Si no sabe


por qué debería hacer esto, contacte con su administrador de sistemas.

A no ser que esté utilizando autenticación NIS, verá que sólo las contraseñas tipo
MD5 y shadow están seleccionadas. Le recomendamos que utilice ambos tipos de
contraseñas para que su máquina sea lo más segura posible.

Para configurar la opción NIS, deberá estar conectado a una red NIS. Si no está
seguro de si está conectado a una red NIS, contacte con su administrador de sistemas.

Habilitar contraseñas MD5 — le permite usar una contraseña larga (de hasta 256
caracteres), en vez de las ocho letras o menos estándar.

84
Habilitar contraseñas shadow — proporciona un método seguro para conservar
contraseñas. Las contraseñas se almacenan en /etc/shadow, al que tan sólo se puede
acceder como root.

Habilitar NIS — le permite ejecutar un grupo de ordenadores en el mismo dominio


Network Information Service con una contraseña común 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 específico, 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 información en el seno de su
organización. Por ejemplo, todas las diferentes listas de usuarios que puede haber en la
organización se pueden unir en un sólo directorio LDAP. Podrá elegir entre las siguientes
opciones:
Servidor LDAP — le permite acceder a un servidor específico (mediante su
dirección IP) que esté ejecutando el protocolo LDAP.

85
LDAP Base DN — le permite buscar información acerca de los usuarios mediante
su Distinguished Name (DN).
Usar TLS (Transport Layer Security) lookups — esta opción permite a LDAP enviar
información encriptada de nombres de usuario y contraseñas al servidor LDAP antes de la
autenticación.

Activar Kerberos — Kerberos es un sistema de seguridad que proporciona


servicios de autentificación en red. Puede elegir entre tres opciones:
Reino — esta opción le permite acceder a una red que utiliza Kerberos, compuesta
por uno o varios servidores (también conocidos como KDCs) y un número potencialmente
alto de usuarios.

KDC — Esta opción le permite acceder al Centro de Distribución de Claves (Key


Distribution Center, KDC), una máquina que emite tickets de Kerberos (a veces se llama
también Ticket Granting Server o TGS).

Servidor de Administración — Esta opción le permite acceder a un servidor que


ejecute kadmind.

Activar la autenticación SMB — Configura PAM para usar un servidor SMB para
la autenticación de usuarios. Deberá proporcionar dos tipos de información:
Servidor SMB — Indica qué servidor SMB contactará su estación de trabajo para la
autenticación.

Grupo de trabajo SMB — Indica en qué grupo de trabajo están los servidores
SMB.

Sugerencia

86
Para cambiar la configuración de autenticación después de finalizar la instalación, use el
comando authconfig.
Escriba el comando authconfig en la línea de comandos. Si no es usuario root, se le pedirá la
contraseña root para continuar.

1.5.20 Selección de grupos de paquetes


Tras haber seleccionado sus particiones y haberlas configurado para su formateo,
ya está preparado para la instalación de los paquetes.

A no ser que elija una instalación de tipo personalizado, el programa de instalación


eligirá la mayoría de los paquetes por usted.

Por ejemplo, si está realizando una instalación de tipo Escritorio Personal, verá una
pantalla similar a la siguiente figura:

87
Para seleccionar paquetes individualmente, compruebe la casilla de verificación
Personalizar el conjunto de paquetes a instalar.
Puede seleccionar grupos de paquetes, los cuales agrupan componentes de
acuerdo a una función (por ejemplo, Sistema X Window y Editores), paquetes
individuales, o una combinación de los dos.

Para seleccionar un componente, haga click en la casilla de verificación.

Seleccione los componentes que desea instalar. Al seleccionar Todo (al final de la
lista de componentes) en una instalación tipo personalizado se instalarán todos los
paquetes incluídos con Red Hat Linux.

88
Una vez seleccionado el grupo de paquetes, haga click en Detalles para visualizar
los paquetes que se instalarán por defecto y los paquetes que desee eliminar o añadir a
ese grupo.

Para seleccionar los paquetes individualmente, seleccione la opción Selección


individual de paquetes en la parte inferior de la pantalla.

1.5.21Preparación para la instalación


Debería ver una pantalla de preparación para su instalación de Red Hat Linux.

Si necesita documentación consúltela en /root/install.log una vez que haya


rearrancado su sistema.

Aviso: Si, por algún motivo, no quiere continuar con el proceso de instalación, ésta es su última
oportunidad para cancelar de forma segura el proceso y rearrancar su máquina. Una vez que haya pulsado el
botón Siguiente, se escribirán las particiones y se instalarán los paquetes. Si desea abortar la instalación,
debería volver a arrancarla antes de que su disco duro sea reescrito.

Para cancelar este proceso de instalación, pulse el botón Reset de su ordenador o


use la combinación de teclas [Control]-[Alt]-[Suprimir] para reiniciar su máquina.

89
1.5.22 Instalación de paquetes
En este momento, no podrá hacer nada hasta que todos los paquetes hayan sido
instalados (vea la siguiente Figura). La rapidez de este proceso dependerá del número de
paquetes que haya seleccionado y de la velocidad de su ordenador.

1.5.23 Creación de un disquete de arranque


90
Para crear un disco de arranque, introduzca un disco en blanco, formateado en su
unidad de disco (vea la siguiente Figura ) y haga click en Siguiente.
Se le recomienda que cree un disquete de arranque. Si, por alguna razón, su
sistema no fuera capaz de arrancar adecuadamente usando GRUB, LILO, u otro cargador
externo, un disco de arranque le permitirá arrancar de forma adecuada su sistema Red
Hat Linux.

Tras un pequeño tiempo de espera, su disquete de arranque estará creado; sáquelo


de la disquetera y etiquételo adecuadamente. Si necesita crear otro disco de inicio una vez
terminada la instalación podrá hacerlo más tarde. Para más información, mire la página de
manual de mkbootdisk, escribiendo man mkbootdisk en la línea de comandos.

91
Si no desea crear un disco de arranque, asegúrese de que selecciona la opción
adecuada antes de pulsar Siguiente.
Si arranca el sistema con el disquete de arranque (en vez de GRUB o LILO) ,
asegúrese de crear un nuevo disco de arranque siempre que haga cambios en el kernel
(incluyendo la instalación de un nuevo kernel).

1.5.24 Configuración de la tarjeta de vídeo


El programa de instalación a continuación le proporcionará una lista de tarjetas de
vídeo entre las que escoger. Si su tarjeta de vídeo no aparece en la lista, X puede que no
la soporte. No obstante, si posee conocimiento técnico sobre su tarjeta, puede escoger
Tarjeta no listada e intentar configurarla al hacer corresponder su chipset de tarjeta de
vídeo con uno de los servidores X disponibles.

1.5.24.1 Configuración del monitor

92
El programa de instalación le presentará una lista de monitores de la que
seleccionar. Desde esta lista, puede usar el monitor que se detecte de forma automática o
escoger otro monitor.
Si su monitor no aparece en la lista, seleccione el modelo Genérico más apropiado
dentro de los modelos disponibles. Si selecciona un monitor Genérico, el programa de
instalación le sugerirá valores de sincronización horizontales y verticales. Estos valores
suelen encontrarse en la documentación que acompaña al monitor o los puede obtener a
través del vendedor o fabricante del monitor; compruebe la documentación para
asegurarse de que estos valores son correctos.

1.5.25 Fin de la instalación


Felicitaciones! Ha finalizado la instalación de Red Hat Linux 9.

93
El programa de instalación le pedirá que prepare su sistema para reiniciarse. No se
olvide de sacar cualquier disco de las disqueteras y CD de la unidad de CD-ROM.)
Si no tiene un gestor de arranque instalado y configurado, necesitará usar el disco
de arranque que ha creado durante la instalación.

Después de que la secuencia de encendido se haya terminado, debería visualizar el


intérprete de comandos del gestor de arranque gráfico en el que puede hacer cualquiera
de las siguientes cosas:
Pulse [Intro] — se reiniciará la entrada de inicio por defecto.

Seleccionar una etiqueta de arranque seguida de [Intro] — provocará que el gestor


de arranque inicie el sistema operativo correspondiente a la etiqueta de arranque. (Pulse
[?] o [Tab] en el intérprete de comandos del cargador de arranque en modo texto para una
lista de etiquetas de arranque válidas.)

No hacer nada — tras un período de espera, LILO, (por defecto, cinco segundos)
incializará la primera partición automáticamente.

Haga lo que sea necesario para arrancar Red Hat Linux. Debería ver una o más
ventanas de mensajes en las que hacer el scroll. También debería ver un intérprete de
comandos login: o una pantalla gráfica de login (si ha instalado el sistema X Window y ha
escogido arrancarlo en modo gráfico por defecto).

La primera vez que arranque su máquina con Red Hat Linux, se le presentará el
Agente de configuración, la cual lo guiará a través de la configuración de Red Hat Linux.
Usando esta herramienta, puede configurar la fecha y hora, instalar software, registrar su
máquina con Red Hat Network, y mucho más. El Agente de configuración le permite
configurar su entorno al comienzo, para que pueda comenzar a utilizar su sistema Red Hat
Linux rápidamente.

1.5.26 Configuración de la impresora


94
La mayoría de los computadores necesitan su propia impresora en casa o en la
oficina. Las impresoras se han convertido en un periférico muy popular debido al
incremento de su calidad y la reducción de sus precios. Los fabricantes de hardware
distribuyen CD-ROMs o disquetes con sus impresoras, ya que la mayoría de los sistemas
operativos requieren de estos CD-ROMs pues ellos contienen los controladores o drivers
de la impresora — software que se comunica con la impresora y el sistema operativo. Red
Hat Linux proporciona los controladores o drivers para la mayoría de los modelos de
impresoras, y en estos casos los controladores y el software en los CD-ROM y disquetes
para la impresora no son necesarios. Con algunas pocas excepciones, todo lo que
necesita es conectar la impresora a su sistema Red Hat Linux, encenderla y configurarla
con las herramientas provistas por Red Hat Linux.

1.5.26.1 La Herramienta de configuración de impresoras


Red Hat Linux incluye una utilidad gráfica para la configuración de impresoras
locales y remotas sin la necesidad de instalar controladores y aplicaciones adicionales. La
Herramienta de configuración de impresoras usa un proceso paso a paso que le puede
ayudar a configurar su impresora más rápido que editando manualmente los archivos de
configuración.

1.5.26.2 Añadir una impresora local

95
Para añadir una impresora local, tal como una conectada al puerto paralelo o USB
en su computador, haga click en Nuevo en la ventana principal de la Herramienta de
configuración de impresoras, haga click en Siguiente para proceder.

En la ventana mostrada 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, números,
guiones (-), y rayas (_). Opcionalmente, introduzca una descripción corta para la
impresora, la cual puede contener espacios.

Después de hacer click en Siguiente, aparecerá la siguiente figura. Seleccione


Conectado localmente desde el menú Seleccionar el tipo de cola y seleccione el
dispositivo. El dispositivo es usualmente /dev/lp0 para una impresora paralela o
/dev/usb/lp0 para una impresora USB. Si no aparece ningún dispositivo en la lista, haga
click en Volver a escanear dispositivos para revisar nuevamente la máquina o haga click
en Dispositivo personalizado para especificarlo manualmente. Haga click en Siguiente
para continuar. El próximo paso es seleccionar el tipo de impresora.

96
Después de seleccionar el tipo de cola de impresión, el próximo paso es
seleccionar el modelo de la impresora. Verá una ventana similar a la siguiente. Si no fue
detectado automáticamente, 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.

97
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, or NCP), el servidor de
impresión remoto usualmente tiene su propio controlador de impresión. Si selecciona un
controlador de impresión adicional en su computador local, los datos son filtrados múltiples
veces y convertido a un formato que la impresora no puede entender.

1.6 Mercado de Linux


Linux es un sistema operativo multiprocesador y multiprogramado, que ofrece por
sus características muchos beneficios en el área de las redes e internet, puesto que su
naturaleza es orientada hacia las redes. Es por ello que su uso en el área de las
telecomunicaciones es más constante.

Debido a que muchos programadores intervienen en el desarrollo de las nuevas


versiones de Linux, este ha sido orientado hacia nuevas áreas en el mundo computacional
siendo que las empresas que se dedican al desarrollo de aplicaciones y sitios web, han ido
migrando sus actividades de desarrollo a Linux.

Linux es un sistema operativo que funciona en un ambiente de procesamiento de


grandes volúmenes de datos y que es muy estable razón por la cual gran parte de los
servidores de páginas web en el mundo utilizan Linux. Debido a que es gratuito y por su
estabilidad los servidores de aplicaciones web en internet y en intranet hacen uso del
sistema operativo Linux.

Es normal en la actualidad encontrarse empresas que tiene como sistema operativo


de sus servidores a Linux y los clientes con alguna versión de Windows. En algunas

98
dependencias de gobierno a nivel nacional han adquirido a Linux como servidor de
documentos, servicios de internet, aplicaciones etc.

El mercado computacional del mundo de hoy cada vez hace mayor uso de Linux,
por lo cual es necesario contar con personal que sea capaz de explotar las características
de Linux.

1.7 Sistema de archivos


El sistema de archivos es el conjunto de las especificaciones de cómo se
almacenan y se estructuran los archivos físicamente en alguna porción o todo el disco
duro. Algunos sistemas de archivos le ofrecen al sistema operativo estructuras del control
de la seguridad y otras características explotables sobre los archivos almacenados en la
porción del disco duro en la que se encuentre el sistema de archivos.
El sistema de archivos con el cual trabaja Linux por excelencia siempre había sido
ext2 el cual le ofrece un acceso veloz a la información almacenada, además de que le
permite hacer uso de las listas de acceso de archivos y características de seguridad muy
potentes, tanto que han sido copiadas por algunas versiones de servidores de Windows.

Hoy en día Linux cuenta con un nuevo sistema de archivos llamado ext3, el cual es
una versión mejorada del sistema de archivos ext2.

99
/dev/hda1 /dev/hda2

1er trozo 2do trozo

0 1 2 3 0 1 2 3

Bloque Bloque

Pista

Bloque

Sector Disco duro

Figura 15 Direccionamiento de bloques de datos en el disco duro.

Sistemas de archivos reconocidos por Linux


• afbs: Amiga Fast File System.
• ext fs: Extended Fyle System.
• ext2 fs: Extended Fyle System extendido.
• hpfs: High Performance File System.
• isofs: sistema ISO 9660 (usado en CD-ROMs).
• minix fs: MINIX File System.
• ncpfs: sistema archivos para clientes Novell.
• nfs: NetworkFile System.
• proc: pseudo sistema de archivos .
• smb fs: Samba File Systems.
• sysv fs: Sistema archivos del sistema V Unix.
• ufs fs: Sistema archivos FreeBSD y Solares.
• umsdos: extensión sistema archivos MS-DOS.
• vfat: sistema dotado tabla asignación virtual.

100
• xiafs: sistema desarrollado por Qi Frank Xia para reemplazar al Extended File
System.

En Linux todo se maneja en base a archivos la mayoría de estos archivos son de
texto en los cuales se maneja la configuración del sistema, la base de datos de los
usuarios y grupos de Linux, configuración de aplicaciones, etc.
Existen cuatro tipos de archivos los cuales son los siguientes:
Archivos normales.-Son aquellos que los que trabajamos más continuamente y son
mayoría en todo disco duro, sirven para almacenar información, ya sea en forma de
texto o binaria, pueden ser también archivos comprimidos.

Archivos de directorios.-Son los únicos archivos en todo sistema de archivos que


almacenan información de otros archivos, realmente solo guardan una referencia
del lugar en el que se ubican físicamente los archivos que le pertenecen. Más no
guardan a los archivos físicamente.

Archivos de enlaces.- Son archivos que permiten acceder o ubicar de manera inmediata
a otros archivos, guardan un puntero que apunta hacia la ubicación física de otro
archivo, son el principio del funcionamiento sobre el cual se basan los archivos de
accesos directos en las diferentes versiones de Windows 9x/me.

Archivos de dispositivos especiales.-Estos archivos sirven para permitir a los usuarios


de Linux a acceder a los dispositivos periféricos y especiales en Linux como son las
unidades de disco flexibles, cdrom, sistemas de archivos no nativos de Linux, etc.
En otros sistemas de archivos como Windows estos dispositivos se identifican como
unidades lógicas.
Elementos del sistema de archivos
• Bloque de booteo.
• Superbloque.
• Tabla de nodos-i.
• Bloques de datos.

101
Grupo bloques 1 Grupo bloques 2

Bloque Super- Tabla Bloque ...


de ... Super-
bloque de de bloque
booteo nodos-i datos

Figura 12. Estructura del sistema ext2.

Bloque de booteo
• Se ubica en el bloque cero de todos los sistemas de archivos
• Contiene programa para lanzar e inicializar todo el sistema
• Ningún programa usuario tiene acceso

Grupo de bloques
• El superbloque
• La lista de descripción de los grupos de bloques
• La imagen de los bloques
• La imagen de los nodos-i
• La tabla de los nodos-i
• Los bloques de datos
• Tamaño total del sistema de archivos, en bloques o nodos-i
• Número de bloques libres del sistema
• Número de bloques reservados a nodos-I
• Número de nodos-I libres
• Dirección del primer bloque de datos
• Tamaño de un bloque de datos
• Tamaño de un bloque parcial de datos
• Hora de la última modificación sistema archivos
• Hora integración (montaje) del sistema
• número de versión del sistema
• hora de la última verificación del sistema
• intervalo máximo entre dos personas

La tabla de inodos-i
• Compuesto por un conjunto de nodos-i, del mimos tamaño

102
• Un nodo-i puede presentarse de dos formas:
o como nodo-I en el disco duro
o cargada en memoria para el tratamiento
• Nodo-i describe todos las características de un archivo
• Existe uno por cada archivo físico

Algunos datos de los inodos-i


• Modo archivo
• Número usuario propietario
• Tamaño, en bytes, del archivo
• Acceso
o hora del último acceso
o hora de la última modificación
o hora de la creación de nodo-i
o hora de la última supresión del nodo-i
• Número de grupo del archivo
• Número de ligas
• Semáforos del nodo-I
• tabla de direcciones del bloque
• derechos de acceso
• tipo de archivo:
• archivo clásico
• directorio
• archivo periférico
• archivo FIFO
• referencia (ejemplo liga simbólica)

103
ta ta ta
ec ec ec
dir dir dir
in in in
o o
o ta
iv iv
ch
ari
ch ….
ón
ec ….
ón ón ón ….
iet cci cci cci cci
ar ar dir
op re re re re
po o Di Di Di Di
Pr
Ti añ 3. 2. 1.
m
Ta

Propiedades del Tabla de las direcciones Informaciones


archivo de los bloques de datos diversas

1.8 Comandos básicos de Linux


Linux es un sistema operativo que hace diferencia de las letras mayúsculas y de las
letras minúsculas, además que a diferencia de otros sistemas operativos no envía
mensaje alguno al cumplirse exitosamente la ejecución de algún comando, solo emite
mensajes en caso de ocurrir algún error al momento de la ejecución del comando.

Antes de conocer y hacer uso de los comandos básicos de Linux, es necesario


hacer énfasis de que Linux es un sistema operativo serio por lo cual los efectos generados
después de la ejecución de los comandos de Linux en su mayoría son permanentes o sea
son irreversibles. Por lo cual si se desea eliminar un archivo, tenga muy en cuenta que ya
no lo podrá recuperar como ocurre en otros sistemas operativos.

Otra recomendación antes de hacer cualquier práctica de comandos de Linux es


crear un directorio de prácticas y en el cual se podrán ejecutar los comandos que en esta
sección se conocerán sin temor a afectar al sistema.

Como última recomendación si todavía es principiante en el sistema operativo


Linux, sea muy cuidadoso y no utilice la cuenta raíz (root) por que podría afectar al
sistema.

A continuación se presenta un listado de los comandos básicos de Linux y su


descripción a un lado de esta:

104
pwd.- Este comando es muy importante en Linux por que nos dice la ubicación exacta en
donde nos encontramos en el árbol del sistema de archivos. Ejemplo: pwd , esta orden
nos devolverá una línea similar a esta “/usr/local”, si nos encontrasemos en el directorio
local del directorio usr.

ls.-nos muestra los archivos y subdirectorios del directorio actual, y se puede utilizar con
los siguientes modificadores:
ls –F Muestra los archivos del directorio actual, con marcas especiales que anteceden a
cada archivo, si es un directorio su marca es una diagonal(/), si es un archivo ejecutable
tendrá como marca un asterisco (*), si es un archivo de enlace su marca será una
arroba(@) y si es un archivo normal no tendrá marca alguna.
ls –a Muestra todos los archivos ocultos del sistema. Para hacer que un archivo sea oculto
en linux solo basta agregarle un punto antes de su nombre y listo.
ls –l Lista todos los archivos en formato largo, proporcionando: la modalidad, número de
enlaces, propietario, tamaño en bytes y momento de la última modificación para cada
archivo.
ls –x Lista todos los archivos del directorio actual ordenados en columnas, con laqs
entradas distribuidas.

cd.- Este comando permite a los usuarios navegar entre directorios, y se utiliza de la
siguiente manera:
cd .. hace que el usuario se desplace al directorio superior inmediato.
cd /usr/home hace que el usuario se desplace al directorio home que se ubica dentro de
usr
cd hace que el usuario regrese al directorio donde lo ubica el sistema operativo cuando
inicia sesión en el sistema.

mkdir.- crea un directorio en la ruta indicada, ejemplo. mkdir /home/roberto/tarea hace el


directorio tarea dentro del directorio roberto en home.

rmdir.- elimina un directorio de una ruta específica. Ejemplo: rmdir /home/roberto/tarea


elimina el directorio tarea que se ubica dentro del directorio roberto en home.

105
mv.- permite mover de ubicación un archivo, además de que también permite cambiarle el
nombre a un archivo. Ejemplo: mv tarea.zip tarea.new cambia el nombre del archivo
tarea.zip a tarea.new.
mv tarea.txt /home/roberto/tareas mueve el archivo tarea.txt al directorio tareas de roberto
en home.

cp.- este comando permite realizar la copia de uno o más archivos, o hacer respaldos
dentro del mismo directorio. Ejemplo: cp file1 file2 file3 /etc copia los archivos
file1,file2,file3 al directorio etc en raíz.
cp file1 respaldo copia el archivo con otro nombre dentro del mismo directorio.

rm.- elimina uno o más archivos dentro de una ruta específica, también permite eliminar
un directorio a un que este no se encuentre vacío. Ejemplo: rm file1 file2 file3 elimina los
archivos file1, file2 y file3.
rm –rf /home/roberto elimina el directorio roberto ubicado dentro de home, el modificador r
es el que hace la eliminación del directorio, el modificador f hace que el sistema operativo
no pregunte si se desea eliminar cada archivo.

cal.- Muestra el calendario del sistema, ya sea un mes, mes y año y por año.
Ejemplo: cal muestra el mes actual del año en curso.
cal 06 muestra el mes de junio del año en curso.
cal 2000 muestra el calendario del año 2000.
cal 2000 07 muestra el mes de julio del año 2000.

more.- Este comando permite visualizar el contenido de un archivo de texto hoja por hoja
y solo hacia adelante.
Ejemplo: more /etc/hostname.conf visualiza el archivo hostname.conf del directorio etc.

cat.- Visualiza el contenido de un archivo de texto rápidamente


Ejemplo: cat /etc/hostname.conf visualiza el archivo hostname.conf del directorio etc.
less.- Visualiza el contenido de un archivo de texto, permitiendo hojearlo hacia atrás hacia
delante.
Ejemplo: less /etc/hostname.conf visualiza el archivo hostname.conf en el directorio etc.
106
bc.- Activa la calculadora de sistema. Ejemplo: bc y para terminar la ejecución al que
presionar la tecla q.

find.- Permite buscar uno o más archivos dentro del árbol del sistema.
Ejemplo: find . –name “*.doc” –print busca los archivos con extensión doc dentro del
mismo directorio.
find . / -name “*.doc” -print busca todos los archivos con extensión doc en todo el árbol de
archivos.

dir.- Este comando visualiza el contenido del directorio actual.

clear.- Limpia la pantalla del sistema.

history.- Permite visualiza los comandos que han sido introducidos por el usuario y con un
ampersand y el numero de orden y se repite la orden.
Ejemplo: history visualiza los comandos ejecutados por el usuario.
&12 ejecuta el comando introducido en el número 12.

wc.- Este comando permite identificar cuantos caracteres, líneas y palabras tiene un
documento de texto. Sus modificadores son los siguientes:
-l nos muestra el número de líneas de texto con las que cuenta el archivo.
-w nos muestra el número de palabras que contiene el archivo.
-c nos indica el número de caracteres que estan escritos en el documento.
Estos modificadores se pueden usar solos o juntos.
Ejemplo wc –lwc profile

diff.- Este comando nos permite visualizar de forma clara la diferencia que existe entre 2
archivos.
Ejemplo: diff archivo1 archivo2

107
df.- proporciona información sobre la utilización del espacio del disco duro en los
diferentes sistemas de archivos montados en el sistema. Sus modificadores son los
siguientes:
-h Imprime información de forma muy clara
-i Informa de la utilización de nodos-i, los nodos-i son estructura de archivos internas del
sistema de archivos, cuando este se queda sin nodos-i, por mas espacio que el disco duro
tenga , no se podrán crear nuevos archivos hasta que los nodos-i se liberen, generalmente
esto no pasa a menos que se generen muchos archivos pequeños.
-k Muestra bloques de 1024 bytes
-m Muestra los tamaños de bloques en megas.
Ejemplo df <opciones> <sistema de archivos>

du.-Este comando informa de la cantidad de espacio de disco usada por los ficheros
especificados, y por cada directorio de jerarquías cuyas raíces estén en los ficheros
especificados. Sus modificadores son los siguientes:
-a Muestra números para todos los ficheros, no solo directorios.
-b Muestra los tamaños en bytes.
-k Muestra los tamaños en kilobytes.
-h un poco más amigable.
Ejemplo: du <opciones> archivo o ruta.

echo.- su finalidad es mostrar mensajes en pantalla. Ejemplo: echo $DISPLAY.

free.- Nos proporciona información de la cantidad de memoria RAM usada y libre con la
que cuenta el sistema.

grep.- busca una cadena dentro de un archivo.


-c numero de líneas capturadas.
-w busca expresiones como una palabra.
-i visualiza solo los ficheros que tienen líneas capturadas
Ejemplo: grep PATH profile
Si queremos saber cuantas veces esta logueado sergio en una computadora con linux
harremos: who | grep sergio | wc -l
108
top.- Este comando nos permite una visión en tiempo real de lo que esta ocurriendo con
los procesos en ejecución, diciendo la cpu que están usando, así como la memoria y otros
datos interesantes.

Para hacer uso de cada comando y salir de cada aplicación tecleé la letra q ó en su
defecto tecleé la combinación de teclas “CTRL + Z” ó “CTRL + C”.

109
U
NIDA
DII

II ADMINISTRACION DE LINUX.

IN
TRODUC
CIÓ
N

En esta unidad el estudiante conocerá el uso del sistema de archivos de Linux y los
comandos de administración de Linux como es la administración de usuarios, procesos y
dispositivos.

El respaldo de información y la compresión de archivos son temas que se incluirán


en esta unidad.

OBJETIVO Y CRITERIOS DE APRENDIZAJE Página


Conocimiento de comportamiento de las señales.
• Conocer y manejar el sistema de archivos Linux.
• Montar dispositivos externos.
• Gestión de cuentas de usuarios.

DEMOSTRACIÓN DE HABILIDADES PARCIALES (RESULTADO DE


APRENDIZAJE)

• Creará y eliminará cuentas de usuario.


• Listará y eliminará procesos.
• Visualizará las sesiones de usuarios.
• Montará y desmontará dispositivos.
• Respaldará información usando el comando tar.

110
2.1 Administración de cuentas de usuarios
El administrador del sistema tiene la responsabilidad de administrar a los usuarios.
Esta tarea incluye darles de alta para que puedan entrar al sistema, crear y asignar
directorios, asignar usuarios a grupo y darles de baja cuando sea preciso.

Cada usuario en el sistema deberá tener un nombre único. Con ello se le podrá
identificar y evitará que otro usuario borre archivos de otro. En el directorio etc se
encuentra el archivo passwd en el cual se encuentran todos los usuarios del sistema
Linux.

Adduser.- Permite crear una cuenta de usuario en el sistema. Ejemplo: adduser roberto
crea al usuario roberto.
Se puede utilizar los modificadores con adduser:
-d directorio Indica el directorio donde va a ser creado el profile del usuario.
-e YYYYMMDD Indica la fecha en que la cuenta será desactivada.
-f número Indica el número de días que tardará en desactivarse la contraseña.
-g grupo Indica el grupo inicial del usuario.
-G grupos Indica los grupos adicionales a los que pertenecerá el usuario.
-s shell Indica el shell con el cual trabajará el usuario.
-u uid Indica el número de identificación del usuario.
Ejemplo: adduser telemática –d /p –G root –g sys crea al usuario telematica en el
directorio p con el grupo inicial sys y el grupo adicional root.

Userdel.- Elimina una cuenta de usuario del sistema. Ejemplo userdel roberto elimina la
cuenta de usuario roberto.

Definición de contraseñas
Las contraseñas de usuario son definidas con la orden passwd y son definidas por
el administrador del sistema, el cual debe definir una para cada usuario y estos pueden
cambiar la contraseña cuando inicien sesión. El comando passwd se aplica a
continuación.

111
Passwd.- Asigna o cambia la contraseña de un usuario. Ejemplo: passwd roberto asigna
la contraseña a la cuenta de usuario roberto.
Se puede utilizar los mismos modificadores con passwd:
-n días Indica el número de días mínimos que será válida la contraseña.
-x días Indica el máximo de días que el usuario tendrá la contraseña antes de verse
obligado a cambiarla.
-i días Indica el número de días que la contraseña estará desactivada.

Trabajo con grupos


Cada usuario pertenece a un grupo y es precisamente que por medio de los grupos
que se pueden administrar mejor a los usuarios. Es por eso que es muy importante la
gestión de grupos en el sistema.

Groupadd.- Agrega una cuenta de grupo al sistema. Ejemplo: groupadd telemática crea la
cuenta de grupo telemática en el sistema.
Groupdel.- Elimina del sistema una cuenta de grupo. Ejemplo: groupdel telemática elimina
del sistema la cuenta de grupo telemática.

2.2 Administración de procesos


Linux es un sistema operativo multiusuario y multitarea. El término del multiusuario
significa que varias personas pueden usar simultáneamente la misma computadora. El
término del multitarea significa que Linux puede trabajar con más de una tarea de forma
concurrente.

Información sobre el estado de los procesos


La orden ps permite al usuario saber el estado de los procesos que se están
ejecutando en ese instante. Permite también comprobar si un proceso ha terminado de
ejecutarse o si esta en plena ejecución.
El uso común de la orden ps es la supervisión de tareas en segundo plano y otros
procesos. El listado muestra cuatro cabeceras básicas las que se describen a
continuación:
PID.- Es el número de identificación del proceso.
112
TTY.- Es la terminal en donde se esta ejecutando el proceso.
TIME.- Es el tiempo de ejecución acumulado del proceso, expresado en minutos y
segundos.
COMMAND.- El nombre de la orden que se esta ejecutando.

ps.- Lista los procesos que se están ejecutando en el sistema.


Ejemplo: ps muestra los procesos que se están ejecutando.
ps se puede utilizar con los siguientes modificadores:
-a Muestra los procesos de otros usuarios.
-f Muestra un árbol de familia (procesos y subprocesos).
-l Formato largo.
-m Muestra información de la memoria.
-r solo procesos que están en ejecución.
-S Añade el tiempo del CPU.
-u Proporciona el nombre del usuario y la hora en la que inicio sesión.
-x Muestra los procesos sin terminal de control.
ps –ax muestra todos los procesos que estan en ejecución.

Planificación de procesos con la orden at


Para planificar una o más ordenes para un momento determinado, utilice la orden
at. Con ella puede determinar la hora y la fecha o ambas a la vez. La orden espera dos o
más argumentos. Como mínimo indique la hora en la que desee ejecutar las ordenes.

El siguiente ejemplo ejecuta su tarea a las 1:23 AM, desde luego la orden tiene que
ser programada antes de la hora de ejecución.
at 1:23 lp /usr/sales/reports/reporte1 esta tarea imprime a la 1.23 AM el archivo reporte1
ubicado en el directorio /usr/sales/reports.
Los trabajos programados con at se colocan en una cola que el sistema operativo
comprueba periódicamente. Ejemplo para verfificar los trabajos programados con at
teclee la siguiente línea at –l.
Si deseas cancelar un trabajo solo tecela at –d id_trabajo y eliminará la tarea prtogramada
que coincida con el id_trabajo proporcionado en la orden.

113
Eliminando procesos en Linux
Para eliminar procesos en Linux solo basta con teclear el comando Hill y el PID del
proceso que se desea eliminar. A continuación se presenta un ejemplo: Hill -9 1234 esta
orden elimina el proceso con PID equivalente a 1234.
Ejecutando procesos en Linux en segundo plano
Para ejecutar un proceso en segundo plano solo basta con introducir la orden
nohup, con esta orden el proceso durará ejecutándose en segundo plano hasta que el
sistema sea desconectado o el proceso termine de realizar su operación.
Al usar nohup los mensajes y salidas que normalmente salen en pantalla se
redireccionan a un archivo llamado hohup.out.
Ejemplo: nohup sort datos.txt & esta orden ejecuta en segundo plano el proceso de
ordenamiento del archivo datos.txt.
Supervisión multitarea
Como sabemos Linux es un sistema operativo multitarea y multiusuario, para saber
que usuarios han iniciado sesión en el sistema se introduce la orden who la cual devuelve
la lista de los usuarios que están conectados al sistema.
Ejemplo: who esta orden devuelve los nombres de los usuarios que estan conectados
como se muestra a continuación:
root tty1 Dic. 13 08:00
paco tty2 Dic. 13 10:00
rene tty3 Dic. 13 09:00

La orden who puede mostrar los encabezados de la cada columna si introduce el


modificador –H, las columnas son las siguientes:
LINE .- Lista el nombre de conexión del usuario.
TIME.- Lista la línea o terminal que esta utilizando el usuario.
IDLE.- Lista la hora a la que se conecto el usuario.
PID.- Lista las horas y minutos desde la última actividad del usuario.
COMMMENTS.- Lista los comentarios en caso de que se hallan incluido.

114
2.3 Respaldo de información
La información es el recurso más importante para cada empresa puesta que
mediante esta las empresas tienen la oportunidad de tomar decisiones importantes en
base a esta. Que pasaría si una empresa de ventas de artículos extraviara su lista de
clientes y su lista de pedidos quedaría paralizada hasta obtener nuevamente esa
información. Razón por la cual en Linux es importante conocer los comando para
respaldar y comprimir la información.
Orden tar
La orden tar es originaria de los unix , fue diseñada para crear respaldos en cintas,
es fácil de utilizar y hace uso de los siguiente modificadores:
c Crea un contenedor
x Extrae o restaura un archivo desde el contenedor donde se encuentra en el
dispositivo predeterminado o especificado en la opción f.
f name Crea un contenedor o lee el contenedor desde name, que corresponde a un
nombre de archivo o a un dispositivo especificado por ejemplo: /dev/rm0.
Z Comprime o descomprime el contenedor tar.
z Comprime o descomprime el contenedor tar con gzip.
m Crea una copia de seguridad tar de volumen múltiple.
t Crea un archivo con índice de todos los archivos almacenados en un
contenedor y listas en stdout.
v Modalidad detallada.

Ejemplo: tar –cf /dev/fd0 home crea una copia de seguridad de home en la unidad de
diskette(fd0), creándose en la unidad de disco flexible el archivo home.tar.
tar -cvfzM /dev/fd0 home crea la copia de seguridad del directorio home en la unidad de
disktte(fd0) y ordena que el respaldo este comprimido (modifcador z) y que cree una copia
de seguridad de volúmenes múltiples (modificador M) creándose en la unidad de disco
flexible el archivo home.tar.z.
tar xvfz home.tar.z restaura el archivo home.tar.z

2.4 Administración del sistema de archivos

115
El sistema de archivos es la base de datos de todo sistema operativo, en nuestro
caso de Linux.

Todas las configuraciones del sistema, archivos de biblioteca y archivos de usuarios


se encuentran contenidos dentro del sistema de archivos. Razón fundamental por la cual
la es necesario que la administración del sistema de archivos se haga correctamente.

En la primera unidad se explico que es un sistema de archivos y cual es la


estructura del árbol de archivos de Linux y en la sección de comandos básicos de linux de
la primera unidad se explicaron los comandos: ls, mkdir, rmdir, cd, more, cat, less, find,
mv, cp, rm y dir, los cuales son fundamentales para las gestión de archivos del sistema.

En esta sección vamos a aprender como se debe administrar el sistema de archivos


de Linux.

Montar y desmontar dispositivos y sistemas de archivos


En Linux para hacer uso de sistemas de archivos y dispositivos especiales como
son las unidades de cdrom y el floppy, es necesario avisarle primero a Linux que se va a
hacer uso de alguno de ellos.

Para avisarle a Linux que se va a hacer uso de alguno de estos dispositivos solo
basta con utilizar la orden mount, la cual significa montar. En Linux para hacer uso del
cdrom no es como en los sistemas operativos de Microsoft en los cuales se introduce el
disco compacto en la unidad de cdrom y después se accede a la unidad para hacer uso de
la información que contiene el disco compacto. En el caso de Linux lo primero que se hace
es montar la unidad de cdrom para posteriormente hacer uso de esta.

Para montar un dispositivo o sistema de archivos es necesario primero contar con


una ubicación física en el disco para posteriormente desde esta ubicación utilizar el
dispositivo o sistema de archivos. En Linux existe el directorio mnt en raíz el cual sirve de
soporte para el montaje tanto de la unidad de cdrom como la unidad de disco flexible. El
directorio cdrom dentro de mnt se utiliza para montar en el la unidad de cdrom y el
directorio floppy dentro de mnt se utiliza para montar la unidad de disco flexible.
116
Orden mount
Para montar en el directorio /mn/crdom se introduce la siguiente orden: mount
/dev/cdrom /mnt/cdrom donde /dev/cdrom es la ubicación física del cdrom y /mnt/cdrom es
la ubicación del disco desde la cual haremos uso de la unidad de cdrom.

Para montar un sistema de archivos como fat32, se crearía primero un directorio


por ejemplo: mkdir /windows y después se introducirá la orden mount –t vfat
/dev/hda1 /windows donde /dev/hda1 es el sistema de archivos de fat32 y /windows el
directorio desde el cual accederemos a este sistema de archivos.

Para montar otros dispositivos y otros sistemas de archivos solo se necesita saber
la ubicación de estos y el lugar en donde se desea montarlos. Los modificadores más
usuales del comando mount son los siguientes:
Modificador Descripción
-r Monta el sistema de archivos con permisos de solo lectura.
-w Monta el sistema de archivos con permisos de lectura y escritura.
-t tipo Monta el sistema de archivos, especificando el sistema de archivos que se
ha montado, los cuales pueden ser vfat para fat32, ext, ext2, minux, hpfs,
msdos, xiafs, unmsdos, sysv e iso9660.

Orden umount
Para desmontar un dispositivo o sistema de archivos solo introduzca la orden
umount y la ubicación donde se encuentra montado el dispositivo y se liberará el espacio
ocupado. Ejemplo: umount /mnt/cdrom y se libera el directorio /mnt/cdrom.

Cuando Linux se inicia automáticamente se cargan sistemas de archivo por default


y cuando este se cierra antes de cerrarse se desmontas los sistemas de archivos, es por
esta razón que cuando apagamos un computador que contenga Linux como sistema
operativo, que los sistemas de archivos se dañan por que no fueron desmontados
correctamente.
En el archivo /etc/fstab es donde Linux encuentra todos los sistemas de archivos
que debe montar antes de permitir el acceso a los usuarios. Es en este archivo que
debemos colocar todos los sistemas de archivos que queremos que Linux monte al
iniciarse.
117
Para saber que sistemas de archivos y/o dispositivos están montados en Linux solo
introduzca la orden mount.

Asignación de permisos en directorios y archivos


En Linux los permisos de archivos implican algo más que conocer los permisos que
tiene los directorios o archivos. Aunque los permisos son los que deciden quien debe
ejecutar, leer o escribir en un archivo, también deciden el tipo y la forma de ejecución del
archivo.

Introduzca la orden ls –l y se mostrará algo similar a lo siguiente:


rxw-r------ 2 sglines doc 512 jan 1 13:34 maild
drwx-r---r-- 5 sglines doc 1024 jan 17 08:00 news
-rw-r------ 1 sglines doc 512 Dec 30 22 :00 books

Este listado muestra prácticamente todo lo que se debe de conocer acerca de un


archivo. La primera columna muestra los permisos del archivo, la segunda muestra los
enlaces a un archivo (bloques extra en el directorio) y la tercera muestra el propietario del
archivo. En Linux el concepto de propiedad tiene tres posibilidades: el propietario, el grupo
al cual pertenece el propietario y todos los demás usuarios del sistema. La cuarta columna
muestra el grupo al cual pertenece el archivo. La quinta muestra el número de bytes en el
archivo, la sexta la fecha y hora de creación y la séptima muestra el nombre del archivo.

La columna de permisos (la primera) se divide en cuatro subcampos:


- rwx rwx rwx
El primer subcampo define el tipo de archivo. Un archivo normal tiene un guión (-)
como espacio de reserva; los directorios se marcan con una d. La tabla x muestra los
valores válidos para el subcampo tipo de archivo.

Tabla x
Carácter Descripción
- Archivo normal
b Archivo especial por bloques
c Archivo especial por caracteres
d Directorio
118
l Enlace simbólico

Los tres siguientes subcampos son los permisos que se pueden aplicar sobre los
archivos. El segundo subcampo rwx significa que el propietario tiene los derechos de
ejecución (x), lectura (r) y escritura (w). El tercero muestra los mismos derechos para el
grupo y el cuarto los mismos derechos para los demás usuarios del sistema.

Para modificar estos valores en los archivos se introduce la orden chmod


acompañada de los derechos del propietario, grupo y otros, y el nombre del archivo al cual
se le asignarán los nuevos derechos.

Por ejemplo: supongamos que estamos en el directorio raíz usr y que deseamos
modificar los derechos del directorio local y deseamos que el propietario tenga todos los
derechos, el grupo al que pertenece el dueño solo pueda leerlo y los demás usuarios no
puedan ni siquiera leerlo se introducirá la siguiente orden: chmod 740 local si
introducimos la orden ls –l nos mostraría en la parte de los derechos esto:
d rwxr----- 2 root root 13 dec 12:00 AM local.

En un principio se ve complicado el proceso de asignar derechos en los archivos,


pero realmente es una tarea sencilla y para comprender mejor esto necesitamos saber
que el valor del derecho de lectura es 4, el derecho de escritura es 2 y el derecho de
ejecución es 1. Entonces para asignar derechos a cada archivo hay que hacer una suma
del valor de cada derecho que se desea asignar para la sección de derechos del
propietario, así como del grupo del propietario y otros usuarios del sistema.

En la tabla x1 se muestra las combinaciones de atributos que se pueden aplicar a


cada columna de derechos del archivo.
Tabla x1 combinación de valores para asignar derechos en los archivos
Derechos Descripción
7 Todos los derechos puesto que es la suma de la ejecución = 1, la escritura =
2 y la lectura = 4. en conjunto suman 7.
6 Lectura y escritura sobre algún archivo puesto que es la suma de la lectura =
4 y la escritura = 2, la cual es 6.
5 Lectura y ejecución, por que la lectura es 4 y la ejecución es 1, por lo cual

119
suman 5.
4 Lectura, puesto que el valor de la lectura es 4.
3 Escritura y ejecución, la escritura vale 2 y la ejecución 1, por lo cual suman
3.
2 Escritura, puesto que la escritura vale 2.
1 Ejecución, puesto que la ejecución vale 1
0 Sin derechos.

Con chmod también podemos asignar permisos individuales ya sea al propietario,


grupo u otros usuario, en caso de que se necesite modificar los derechos a alguno de
ellos. Para estos es necesario conocer los equivalentes expresados en la tabla x2.

Tabla x2. Permisos relativos de chmod.


Valor Descripción
Quien
a Todos (propietario, grupo y otros).
g Grupo al que pertenece el propietario.
o Todos los demás usuarios del sistema.
u Propietario del archivo.
Permiso
r Derecho de lectura.
w Derecho de escritura.
x Derecho de ejecución.
Operador
+ Agrega derechos
- Resta derechos
= Establece los derechos

Para aplicar esta forma de asignar permisos necesitamos introducir la orden chmod,
seguida de la(s) letra(s) de la(s) columna(s) que necesitamos actualizar, operador y la
letra que corresponde al(os) derecho(s) que se desean asignar y desde luego el nombre
del archivo.

Ejemplos:
Necesitamos asignar derechos de lectura para todos en el archivo tarea.doc,
necesitaríamos introducir esta orden chmod a + r tarea.doc.

En el caso que necesitáramos asignar derechos al grupo de lectura y escritura, en


el archivo tarea.doc, introduciríamos esta línea chmod g=rw tarea.doc.

120
Comprimiendo y descomprimiendo archivos.
La compresión de archivos es una práctica común en la administración de archivos,
puesto que permite a los usuarios almacenar más información y también permite la
portabilidad a la información por lo cual esta secreción se enfoca a la compresión y
descompresión de archivos.

Orden gzip
La orden gzip permite comprimir y descomprimir archivos en Linux, la orden gzip va
acompañada de los modificadores presentados en la tabla x2 (los más usuales):

Tabla x2 Modificadores de gzip.


Modificador Descripción
-d Descomprime un archivo.
-f Fuerza a la sobreescritura del archivo de salida.
-1 Comprime más aprisa.
-9 Comprime mejor.

Ejemplo: gzip -9 group comprime el archivo group con el mejor modo de compresión y
tiene como salida genera el archivo group.gz,.
gzip –d etc.gz descomprime el archivo etc.gz.

Nota: Es importante observar que al comprimir un archivo con gzip, el archivo original se
transforma en otro archivo, el cual conserva el mismo nombre pero comprimido y con la
extensión gz. Por lo que debemos tener cuidado de no borrar este archivo comprimido
puesto que es el archivo original y no hay otra copia. En el caso del winzip de windows al
comprimirse un archivo nos crea un archivo más a parte del archivo original y ahí si
podemos borrar el comprimido puesto que sabemos que existe el original, cuidado en
Linux siempre que se comprima un archivo se trabajará sobre el mismo pero con otra
extensión y otras características físicas (no lo borre).

Orden gunzip
La orden gunzip permite descomprimir archivos en Linux, que fueron generados por la
orden gzip, los modificadores más comunes que se pueden usar con gunzip son los que
se presentan en la tabla x3:
121
Tabla x.3 Modificadores de gunzip.
Modificador Descripción
-d Descomprime un archivo.
-f Fuerza a la sobreescritura del archivo de salida.
-1 Descomprime más aprisa.
-9 Descomprime mejor.

Ejemplo: gunzip -9 group.gz descomprime el archivo group.gz con el mejor modo de


descompresión y tiene como salida el archivo group
gunzip –d group.gz descomprime el archivo group.gz.

Nota: El archivo con extensión gz regresa a su estado original y el número de archivos que
se maneja sigue siendo uno, por que el gz se transforma con la orden gunzip para
restaurar el original, por lo cual tenga cuidado al borrar el archivo.

Entubado de comandos
En Linux es común utilizar la salida de un programa u orden para usarlo como
entrada de otro. En lugar de introducir cada orden de manera independiente y guardar los
resultados en archivos intermedios, puede conectar una secuencia de ordenes utilizando
un conector (|) el símbolo pibe.

Por ejemplo, para ordenar el archivo ventas y después imprimirlo, deberá escribir sort
ventas | lp.

Para visualizar el contenido total de un directorio con un número de archivos tan extenso
que no sea posible visualizarlos todos en el monitor en una sola vez, introduzca la orden,
ls | more.

Redireccionamiento de entradas y salidas de archivos


En ocasiones hay resultados de algunos procesos que deseamos recordar o anotar
después de ejecutarlos, Linux ofrece la posibilidad de que la salida de un proceso sea
enviada (redireccionada) a un archivo. Para esto Linux asocia todas las entradas a un
archivo llamado stdin y asocia todas las salidas a terminal a un archivo llamado stdout.

122
Se utiliza el símbolo “<” (menor que) para redirigir entradas a una orden o programa
de modo que proceda de una entrada a una terminal.

Suponga que desea enviar el archivo info por correo a alguien cuya dirección de
correo es martha. En lugar de volver a escribir el contenido del archivo en la orden mail,
introduzca la orden siguiente para utilizar el archivo info como entrada (stdin) en la orden
mail: mail martha < info.

Se utiliza el símbolo “>” (mayor que) para redirigir la salida de un programa a un


archivo. La salida se sitúa entonces en un archivo en lugar de ir a la pantalla terminal. Si
se desea almacenar la hora y la fecha en un archivo llamado now, escriba: date > now

Si lo que desea es agregar información a un archivo existente utilice el símbolo >>.


Para añadir la fecha actual aun archivo llamado report, escriba: date >> report.

2.5 Uso de RPM


Instalación de paquetes
Los paquetes RPM normalmente tienen nombres de fichero como foo-1.0-1.i386.rpm. El
nombre de fichero incluye el nombre de paquete (foo), versión (1.0), lanzamiento (1) y
arquitectura (i386). La instalación de un paquete es tan simple como teclear el siguiente
comando en el indicador de comandos de shell:
# rpm -ivh foo-1.0-1.i386.rpm
foo ####################################
#
Como podrá ver, RPM imprime el nombre del paquete y luego imprime una serie de
almohadillas (#) mientras se instala el paquete como una especie de medidor de progreso.
Nota
A pesar de que un comando como rpm -ivh foo-1.0-1.i386.rpm se use comúnmente
para instalar un paquete RPM, tal vez desee tomar en consideración el uso de rpm
-Uvh foo-1.0-1.i386.rpm en su lugar. -U se usa normalmente para actualizar un
paquete, pero también instala paquetes nuevos. Consulte la sección de nombre La
actualización para obtener más información sobre el uso de la opción -U de RPM.
La instalación de paquetes está ideada para ser sencilla, pero de vez en cuando
podría haber errores:
Paquete ya instalado
Si ya está instalado un paquete de la misma versión, verá:

123
# rpm -ivh foo-1.0-1.i386.rpm
foo package foo-1.0-1 is already installed
#
Si desea instalar el paquete de todos modos y la versión que está intentando
instalar ya está instalada, podrá usar la opción --replacepkgs, la cual le dirá a RPM que
ignore el error:
# rpm -ivh --replacepkgs foo-1.0-1.i386.rpm
foo ####################################
#
Esta opción es útil si algunos ficheros instalados desde RPM fueron borrados o si
desea que se instalen los ficheros de configuración originales desde RPM.
Ficheros en conflicto
Si intenta instalar un paquete que contiene un fichero que ya ha sido instalado por
otro paquete o una versión más antigua del mismo paquete, verá lo siguiente:
# rpm -ivh foo-1.0-1.i386.rpm
foo /usr/bin/foo conflicts with file from bar-1.0-1
#
Para hacer que RPM ignore este error, use la opción --replacefiles:
# rpm -ivh --replacefiles foo-1.0-1.i386.rpm
foo ####################################
#
Dependencia no resuelta
Los paquetes RPM pueden "depender" de otros paquetes, lo cual significa que
requieren de la instalación de otros paquetes para poder ejecutarse adecuadamente. Si
intenta instalar un paquete que tiene una dependencia no resuelta, verá lo siguiente:
# rpm -ivh foo-1.0-1.i386.rpm
failed dependencies:
bar is needed by foo-1.0-1
#
Para resolver este error deberá instalar los paquetes indicados. Si de todos modos
desea forzar la instalación (no es una idea muy buena ya que el paquete probablemente
no se ejecutará adecuadamente), use la opción --nodeps.
La desinstalación
Desinstalar un paquete es tan simple como instalarlo. Teclee el siguiente comando
en el indicador de comandos shell:
# rpm -e foo
#
Nota
Note que hemos usado el nombre foo del paquete, no el nombre de fichero foo-1.0-
124
del paquete original. Para desinstalar un paquete necesitará sustituir foo con
1.i386.rpm
el verdadero nombre de paquete del paquete original.
Podría encontrarse con un error de dependencia cuando esté desinstalando un
paquete si otro paquete instalado depende del que está tratando de eliminar. Por ejemplo:
# rpm -e foo
removing these packages would break dependencies:
foo is needed by bar-1.0-1
#
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 opción --nodeps.
La actualización
Actualizar un paquete es parecido a instalarlo. Teclee el siguiente comando en un
indicador de comandos shell:
# rpm -Uvh foo-2.0-1.i386.rpm
foo ####################################
#
Lo que no se ve arriba es que RPM ha desinstalado automáticamente cualquier
versión 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 actualización inteligente de paquetes con ficheros de
configuración, 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 fichero de configuración podrían
no ser "compatibles a reenvío" con el fichero de configuración nuevo en el paquete, así
que RPM ha almacenado su fichero original y ha instalado uno nuevo. Debería averiguar
cuáles son las diferencias entre los dos ficheros de configuración y resuelva el problema
tan pronto como le sea posible para asegurarse que su sistema continúe funcionando
correctamente.
La actualización es en realidad una combinación de las actividades de
desinstalación e instalación, así que durante una actualización RPM, podrá encontrar
errores de desinstalación e instalación, además de cualquier otro tipo de error. Si RPM cree
que usted está tratando de actualizar a un número de versión de paquete más antiguo,
aparecerá lo siguiente:
# rpm -Uvh foo-1.0-1.i386.rpm
125
foo package foo-2.0-1 (which is newer) is already installed
#
Para hacer que RPM "actualice" de todos modos, use la opción --oldpackage:
# rpm -Uvh --oldpackage foo-1.0-1.i386.rpm
foo ####################################
#
El refrescamiento
Refrescar un paquete es parecido a actualizarlo. Teclee el siguiente comando en un
indicador de comandos shell:
# rpm -Fvh foo-1.2-1.i386.rpm
foo ####################################
#
La opción de refrescamiento RPM compara las versiones de los paquetes
especificados en la línea de comandos con las versiones de los paquetes que ya han sido
instalados en su sistema. Cuando la opción de refrescamiento de RPM elabora una versión
más reciente de un paquete ya instalado, éste será actualizado a la versión más reciente.
Sin embargo, la opción de refrescamiento de RPM no instalará un paquete si no existe un
paquete previamente instalado del mismo nombre. Esto no es igual a la opción de
actualización de RPM, ya que una actualización sí instalará paquetes, no importa si ya esté
instalada una versión más antigua de un paquete.
La opción 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 sólo desea actualizar los paquetes que ya estaban instalados en su
sistema, la solución es el refrescamiento. Si utiliza la opción de refrescamiento, antes de
usar RPM no tendrá que eliminar ningún paquete indeseado del grupo que ha descargado.
En este caso, puede simplemente lanzar el siguiente comando:
# rpm -Fvh *.rpm
RPM actualizará automáticamente sólo los paquetes que ya estén instalados.
La consulta
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, versión y número de
lanzamiento del paquete foo instalado:
# rpm -q foo
foo-2.0-1
#
Nota
Note que hemos utilizado el nombre foo del paquete. Al hacer una consulta sobre un
126
paquete, necesitará sustituir foo con el verdadero nombre del paquete.
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 especificación de paquetes.

• -a consulta todos los paquetes actualmente instalados.


• -f <file> consultará el paquete que posea <file>. Cuando especifique un fichero,
deberá especificar la ruta completa del fichero (/usr/bin/ls, por ejemplo).
• -p <packagefile> consulta el paquete <packagefile>.

Hay varias maneras de especificar qué información mostrar sobre los paquetes
consultados. Las siguientes opciones sirven para seleccionar el tipo de información que
usted está buscando. Se llaman Opciones de selección de información.

• -i muestra información del paquete como el nombre, la descripción, la versión, el


tamaño, la fecha de construcción, la fecha de instalación, el distribuidor, y otra
información miscelánea.
• -l muestra la lista de ficheros contenidos en el paquete.
• -s muestra el estado de todos los fichero en el paquete.
• -d muestra una lista de ficheros marcados como documentación (páginas de
manual, páginas de información, ficheros LÉAME, etc.).
• -c muestra una lista de ficheros marcados como ficheros de configuración. Estos
son los ficheros que usted cambia después de la instalación para adaptar el
paquete a su sistema (como sendmail.cf, passwd, inittab, etc.).
Para acceder a opciones que muestran listas de ficheros, puede añadir -v al
comando para que muestre las listas en un formato ls -l conocido.
La verificación
La verificación de un paquete tiene que ver con comparar la información sobre
ficheros instalados de un paquete con la misma información del paquete original. Entre
otras cosas, la verificación compara el tamaño, la suma MD5 los permisos, el tipo, el
dueño y el grupo de cada fichero.
El comando rpm -V verifica un paquete. Usted puede utilizar cualquiera de las
Opciones de selección 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
ficheros en el paquete foo se encuentran en el mismo estado en que estaban cuando
originalmente fueron instalados. Por ejemplo:

127
• Para verificar un paquete que contiene un determinado fichero:
rpm -Vf /bin/vi
• Para verificar TODOS los paquetes instalados:
rpm –Va
• Para verificar un paquete instalado contra un fichero 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 están
dañadas.
Si todo fue verificado correctamente, no habrá salida. Si se encuentran
discrepancias, serán mostradas. El formato de la salida es una cadena de ocho caracteres
(una c identifica un fichero de configuración) seguido por el nombre del fichero. Cada uno
de los ocho caracteres señala el resultado de una comparación entre un atributo del
fichero al valor de ese atributo escrito en la base de datos de RPM. Un solo . (punto)
significa que ha pasado la prueba. Los siguientes caracteres señalan que ciertas pruebas
no han sido pasadas:

• 5 — MD5 checksum
• S — file size
• L — symbolic link
• T — file modification time
• D — device
• U — user
• G — group
• M — mode (incluye los permisos y tipos de ficheros)
• ? — unreadable file

2.6 Apagado del sistema


Debe tener cuidado al momento de apagar el sistema de Linux. No basta con
apagar la máquina. Linux mantiene la información de entrada/salida del sistema de
archivos en la memoria intermedia de la computadora, y si se apaga el sistema puede
dañar el sistema de archivos.

128
La forma más segura de apagar el sistema de archivos se hace con la orden
shutdown, que tiene la sintaxis: shutdown [flags] tiempo [mensajes de advertencia].

El mensaje de advertencia es un mensaje que se envía a todos los usuarios que


estan conectados y tiempo es la hora en la que se va a pagar el sistema. El argumento
tiempo tiene muchos formatos distintos como son:
• Puede especificarse hh:mm, donde hh es la hora y mm los minutos en que se va
apagar el sistema, tanto los minutos como la hora deben especificarse en dos
dígitos.
• El valor de tiempo, también puede tener el formato de +m, donde m es el número
de minutos que van a suceder antes de que se apague el sistema. Puede sustituir
la palabra now por +0.

Las opciones de la orden shutdown se listan en la tabla x.2

Tabla x.2 relaciona todas las opciones del comando shutdown.


Opción Descripción
-t sec Espera segundos entre el momento de enviar el aviso y la señal de
eliminación de todos los procesos. Este intervalo proporciona el tiempo para
que los procesos hagan cualquier tarea necesaria de apagado.
-k No apaga el sistema solo envía el aviso.
-r Vuele a iniciar el sistema después de apagarlo.
-h Se detiene después de apagar.
-n No sincroniza los discos antes de detenerse o volver a arrancar. Utilicela con
precaución.
-f Realiza un rearranque rápido. Esto crea un archivo /etc/fastboot. La secuencia
de arranque rc buscará este archivo y no lo hará un fsck si no lo encuentra.
-c Cancela un apagado ya en ejecución. Con esta opción no se puede
especificar el argumento time.

La orden shutdown evita que cualquier usuario entre en el sistema, notifica a todos
los usuarios que el sistema va a apagarse, espera el tiempo especificado y envía la señal
SIGTERM a todos los procesos para que puedan salir sin problemas. Después, shutdown
ejecuta la orden de apagado o rearranque del sistema, según cual halla sido los
argumentos seleccionados.

129

You might also like