You are on page 1of 164

Slackware Linux Essentials

La gua oficial del Slackware Linux


David Cantrell
Logan Johnson
Chris Lumens
Este documento esta autorizado segn las condiciones del GNU. Una copia
de esta licencia puede encontrarse en el Apndice A.
Linux es una marca registrada de Linus Torvalds. Slackware es una marca
registrada de BSDi y Patrick Volkerding.

slackware@venezuela.com
http://slackware.venezuela.com

INDICE
I. Introduccin
1. Introduccin al Slackware Linux
Que es Linux?
Que es Slackware?
Open Source y Free Software

2. Ayuda
Ayuda del Sistema
Ayuda en Lnea

II. Instalacin
3. Instalacin
Consiguiendo Slackware
Requisitos del Sistema
Resumen

III. Configuracin
4. Configuracin del Sistema
Conociendo el Sistema
Seleccionando el Kernel
Resumen

5. Configuracin de Red
Hardware de Red
Utilidades de Red
Los Archivo de /etc
rc.inet1
rc.inet2
NFS (Sistema de Archivos de Red)
tcp_wrappers
Resumen

6. El sistema X window
xf86config
XF86Setup
Archivos de configuracin de sesin
Servidores y gestores de Ventana
Seleccionando un escritorio
Exportando Pantallas
Resumen

7. Booteando
LILO
LOADLIN
Booteo Dual
Resumen

IV. Usando Slackware Linux


8. El Shell
Usuarios
La linea de comandos
The Bourne Again Shell (bash)
Terminales Virtulaes
Resumen

9. Estructura del filesystem


Propietarios
Permisos
Enlaces(Links)
Montando Dispositivos
Montaje NFS
2

Resumen

10. Manejando Archivos y Directorios


ls
cd
more
less
cat
touch
echo
mkdir
ln
cp
mv
rm
rmdir
Resumen

11. Control de Procesos


Backgrounding
Foregrounding
ps
kill
top
Resumen

12. Administracion Esencial del Sistema


Usuarios y Grupos
Apagando Correctamente
Resumen

13. Comandos Bsicos de Red


ping
finger
telnet
Clientes FTP
email
lynx
wget
traceroute
Hablando con otras personas
Resumen

14. Guardando Archivos


gzip
bzip2
tar
zip
Resumen

15. vi
Iniciando vi
Modos
Abriendo Archivos
Guardando Archivos
Cerrando vi
Configuracin de vi
Teclas del vi
Resumen

16. Manejo de paquetes en Slackware


Vision general del formato de los paquetes
Utilidades de paquetes
Creando paquestes
Creando tags y tagfiles (para la instalacin)
Resumen

17. ZipSlack y BigSlack


Que es ZipSlack/BigSlack?
Consiguiendo ZipSlack/BigSlack
Instalacion
Arrancando ZipSlack/BigSlack
Agregando, eliminado y acuatlizando Software
Problemas comunes
Obteniendo Ayuda
Resumen

Glosario
A. Licencia Publica GNU
Preambulo
Trminos y condiciones para la copia, distribucin y modificacin
Cmo aplicar estos trminos a sus nuevos programas

I. Introduccin
Captulo 1. Introduccin al Slackware Linux
Contenido
Que es Linux?
Que es Slackware?
Cdigo abierto y el Software Libre

Que es Linux?
Linux fue creado por Linus Torvalds en 1991 como un proyecto personal. l
estaba buscando una manera de ejecutar un sistema operativo basado en
Unix sin gastar mucho dinero. Adems, de aprender las entradas-y-salidas del
procesador 386. El lanzo el sistema de forma gratuita para que cualquiera
pudiera hackearlo y hacerle mejoras bajo la licencia GNU General Public
License (Licencia Publica General).(vea la seccin llamada Open Source y
Software Libre)
Hoy, Linux ha crecido en el mercado de los sistemas operativos. Se ha puesto
a tono para correr en una variedad de arquitecturas incluso el Alfa de
Compaq, Sun SPARC y UltraSPARC, y Motorola PowerPC (a travs de Apple
Macintosh e IBM las computadoras de RS/6000, por ejemplo). Linux est
desarrollndose ahora por los centenares (si no miles) de programadores en
el mundo. Ejecuta programas como Sendmail, Apache, y LAZO que son
algunos de los software de servidor ms populares en la Internet.
El trmino "Linux" slo se refiere al Kernel el centro del sistema operativo.
Esta parte es responsable de controlar su procesador, memoria, unidades de
disco duro, y perifricos. Eso es realmente todo lo que Linux hace. Controla
las funciones de su computadora y se asegura que todos los programas se
comporten. Todos esos programas que hacen til a Linux son desarrollados
por los grupos de programadores independientes. El Kernel y sus programas
son desarrollados conjuntamente por varias compaas e individuos para
hacer un sistema operativo. A esto lo llamamos una distribucin de Linux.

Que es Slackware?
Slackware fue la primera distribucin de Linux en lograr un uso extendido. Fue
creada por Patrick Volkerding a finales de 1992. El comenz a utilizar Linux
5

cuando necesit un intrprete de LISP barato para un proyecto. En ese


momento, haba muy pocas distribuciones, Patrick uso la distribucin de Soft
Landing Systems (SLS Linux).
Sin embargo, SLS tena algunos problemas, por lo que Patrick comenzo a
arreglar los problemas que el encontr. En el futuro, l decidi fusionar todos
esos arreglos en su propia distribucin para l y sus amigos. Esta distribucin
privada gan popularidad rpidamente, y Patrick la hizo disponible al pblico
bajo el nombre de Slackware.
En el camino, Patrick agreg nuevas cosas a la distribucin como un
programa de instalacin de uso fcil basado en un sistema de menus y el
concepto de manejo de paquetes. Esto le permite a los usuarios fcilmente
agregar, actualizar o quitar paquetes de software de su sistema.

Open Source and Free Software


Dentro de la comunidad de Linux, hay dos movimientos ideolgicos de trabajo.
El movimiento del Free Software (Software Libre) que est trabajando hacia la
meta de hacer todo el software libre de restricciones de propiedad
intelectuales , cree en la mejoras tcnicas y trabaja en favor de la comunidad.
El movimiento Open Source (Cdigo Abierto) est trabajando hacia la mayora
de las mismas metas, pero toma un acercamiento ms pragmtico, prefiriendo
basar sus argumentos en los mritos econmicos y tcnicos de hacer el
cdigo fuente disponible libremente, en lugar de los principios morales y ticos
que manejan el Movimiento del Software Libre.
El movimiento del Software Libre esta encabezado por la Free Software
Fundation que esta organizando la recaudacin de fondos para el proyecto
GNU. El software libre es ms que una ideologa. En esencia, el software libre
es un esfuerzo por garantizar ciertos derechos para usuarios y diseadores.
Estas libertades incluyen la libertad para ejecutar el programa por cualquier
razn, la libertad para estudiar y modificar el cdigo fuente, la libertad para
redistribuir la fuente, y la libertad para compartir cualquier modificacin. Para
garantizar estas libertades, se cre la GNU General Pblic License (GPL). La
GPL, proporciona a cualquiera que distribuya un programa compilado
autorizado bajo la GPL a proporcionar el cdigo fuente, y ser libre de hacer las
modificaciones al programa con tal de que esas modificaciones estn
disponibles en el cdigo fuente. Esto garantiza que una vez el programa se
abre a la comunidad, no puede cerrarse" excepto por el consentimiento de
cada autor de cada pedazo de cdigo (incluso las modificaciones) dentro de
l. La mayora de los programas de Linux son distribuidos bajo la GPL.
Es importante sealar que la GPL no dice nada sobre el precio. Tan
contradictorio como puede parecer, usted puede cobrar por el software libre.
La" parte libre" est en que usted posee el cdigo fuente, no en el precio que
usted paga por el software. (Sin embargo, una vez que alguien lo ha vendido,
o incluso lo ha dado, un programa compilado distribuido bajo la GPL les
obligan a que proporcionen su cdigo fuente tambin.)
Al frente del joven movimiento del Open Source, se encuentra la OSI (Open
Source Iniciative) cuyo propsito es buscar apoyo para la distribucin de
software de cdigo abierto. Es decir, software que tiene el cdigo fuente
disponible as como el programa listo para ejecutarse. Ellos no ofrecen una
6

licencia especfica, pero en cambio ellos apoyan los varios tipos de licencia de
fuente abierta disponibles.
La idea detrs de la OSI es tener mas compaas usando cdigo abierto
permitindoles escribir sus propias licencias certificadas por la Open Source
Initiative. Muchas compaas quieren liberar el cdigo fuente, pero no quiere
usar la GPL. Debido a que ellos no pueden cambiar la GPL radicalmente,
ellos ofrecen la oportunidad de proporcionar su propia licencias certificadas
por esta organizacin.
Aunque la Free Software Foundation y la Open Source Initiative trabajan para
ayudarnos no son la misma cosa. La Free Software Fundation usa una
licencia especfica y proporciona el software bajo esa licencia. La Open
Source Initiative busca un soporte para todas las licencias de cdigo abierto,
incluyendo la licencia de la Free Software Foundation. La forma en que cada
uno defiende hacer el cdigo fuente disponible divide a los dos movimientos,
pero el hecho que dos grupos ideolgicamente diversos estn trabajando
hacia la misma meta presta creencia a los esfuerzos de cada uno.

Capitulo 2. Ayuda
Contenido
Ayuda del Sistema
Ayuda en lnea

Hay ocasiones en la que usted puede necesitar ayuda especifica sobre algn
comando, configurando un programa, o instalando una pieza de hardware. Por
suerte hay una variedad de maneras de conseguir la ayuda. Si usted instalara
los paquetes de las F software series, usted ya tiene una gran cantidad de
ayuda instalada. Los Programas tambin vienen con la ayuda sobre sus
opciones, la configuracin y uso. Finalmente, usted puede verificar el web site
oficial de Slackware para la ayuda.

Ayuda del Sistema


man
man (abreviatura de "manual") es una forma tradicional de documentacin en
lnea en Unix y sistemas operativos de Linux. Los archivos especialmente
estructurados, las "man pages, estn escritas para la mayora de las rdenes
y son distribuidos con el software. Ejecutando man comando mostrara la ayuda
sobre el comando o programa especificado.
Como hay tantos de ellos, se agrupan las pginas del man en secciones
enumeradas. Este sistema es tan largo que usted ver a menudo rdenes,
programas, e incluso funciones de biblioteca de programacin referidas con
su nmero de seccin en man. Por ejemplo, usted podra ver el man(1). Esto
le indica que usted esta viendo las paginas del man de la seccin uno
(comandos de usuario); usted puede especificar que quiere ver en la seccin
1 la pagina del manual referente al comando man ejecutando el comando
man 1 man. Especificar la seccin del manual que usted desea ver puede ser
muy til en el caso de que existan varios comandos o programas con el
mismo nombre.
Tabla 2-1. Secciones de las paginas del Manual
Seccin

Contenido

Seccin 1

Comandos de usuario (introduccin solamente)

Seccin 2

Funciones del sistema

Seccin 3

Funciones de la librera de C

Seccin 4

dispositivos (Ej. Discos Duros)

Seccin 5

Formatos de Archivos y Protocolos (Ej. wtmp, /etc/passwd, nfs)

Seccin 6

Juegos (introduccin solamente)

Seccin 7

Convenciones , paquetes macro, etc. (Ej.: nroff, ascii)

Seccin 8

Administracin de Sistema (introduccin solamente)

Adems del man(1), estan los comandos whatis(1) y apropos(1) cuyo


propsito es hacerle ms fcil encontrar la informacin en el sistema man. El
whatis da una descripcin muy breve de comandos del sistema, un poco en el
estilo de una referencia de bolsillo. apropos se usa para buscar la pgina del
man que contiene una palabra clave dada.
Vea esas paginas del manual para mas detalles. ;)

El Directorio /usr/doc
Los programas que no son diseados por nosotros vienen con su propia
documentacin. Archivos README, instrucciones de uso, licencias...
cualquier otro tipo de documentacin que se incluya con el programa se
instala en el directorio /usr/doc
Si las pginas del man no le proporcionan suficiente informacin usr/doc
deben ser su prxima parada.

HOWTOs y mini-HOWTOs
Es el verdadero espritu de comunidad el que crea la coleccin de
HOWTO/mini-HOWTO. Estos archivos son exactamente lo que parecen
documentos que describen cmo hacer las cosas. Si usted instala el paquete
de HOWTO , se instalar los HOWTOs en el directorio /usr/doc/Linux-HOWTOs y
los mini-HOWTOs en /usr/doc/Linux-mini-HOWTOs.
Tambin incluido en el mismo paquete se encuentra la coleccin de FAQs
(Listas de Preguntas Frecuentes--con las respuestas) qu se instala en el
mismo lugar.
Estos archivos merecen la pena cuando usted no est seguro de cmo
proceder con algo. Un rango asombroso de temas se cubre a veces con
detalle sorprendente.

Ayuda en Lnea
Adems de la documentacin proporcionada e instalable con el Slackware
Linux, hay varios recursos en lnea disponible.

Web site y Foro


www.slackware.com
El web site oficial del Slackware Linux est lleno de documentacin sobre
Slackware. En el se encuentran las pginas de ayuda introductorias, una gua
de la instalacin, listas de FAQs, y toda clases de material bueno para los
nuevos (y a menudo experimentados) usuarios.
Tambin disponible en el web site el Foro de Slackware, una seccin dnde
los usuarios pueden discutir sus experiencias con el Slackware y nos ayudan
con las preguntas y problemas. Se demuestra que es un recurso muy popular
y til, y probablemente debe ser su primera parada para el apoyo. (Debido al
gran pblico que leer su mensaje, usted puede tener a veces una buena
oportunidad de conseguir una solucin rpida). Por favor busque en el foro su
pregunta, para ver si ya se ha preguntado y se ha contestado, antes de
anunciar.

Apoyo por correo electrnico


Cualquiera que compra el CD oficial obtiene el apoyo de la instalacin va
correo electrnico. Eso dije, nosotros somos de la vieja escuela. Nosotros
hacemos nuestro mejor esfuerzo para ayudar a cualquiera que nos manda
electrnicamente las preguntas. Por favor verifique su documentacin y el web
site (sobre todo el FAQs y el Foro); usted puede conseguir una respuesta
ms rpida as, y es menos correo electrnico el que nosotros tenemos que
contestar, obviamente ms pronto podremos ayudar a todos.
La direccin del correo electrnico para el soporte tcnico es:
< support@slackware.com >. Se listan otras direcciones de correo electrnico
e informacin de contacto en el web site.

10

II. Instalacin
Capitulo 3. Instalacin
Contenido
Consiguiendo Slackware
Requisitos del Sistema
Resumen
Antes de que usted pueda usar Slackware Linux, usted tendr que obtenerlo e
instalarlo. Conseguir Slackware es tan fcil como comprndolo o bajndolo
gratis a travs de la Internet. Instalarlo tambin es fcil siempre que usted
tenga un poco de conocimiento bsico sobre su computadora y este deseoso
de aprender unas otras cosas. El programa de instalacin es un proceso paso
a paso. Debido a esto, usted puede ponerse rpidamente en marcha.

Consiguiendo Slackware
El CD official y los paquetes
El CD oficial del Slackware Linux est disponible de Slackware Inc.
comprando el disco oficial, usted obtiene el CD de instalacin, el apoyo de la
instalacin va el correo electrnico, un folleto de instalacin de 30-pginas, y
ms. Los paquetes de Slackware, incluyen el CD de instalacin ms el
manual oficial del Slackware Linux. Quizs ms pretenciosamente, comprar el
paquete sea una manera excelente de apoyar el Proyecto Slackware Linux
directamente (y nos ayuda a comprar los nachos).

Tabla 3-1. informacin de contacto de Slackware, Inc.


Mtodo

Informacin

telfono

1-800-786-9907

website

http://www.slackware.com

email

<orders@slackware.com>

snail mail

4041 Pike Lane, Suite F Concord, CA 94520-1207

Va Internet
Slackware Linux tambin est disponible gratis a travs de la Internet. Usted
puede mandar electrnicamente su pregunta a nuestro servicio de apoyo,
pero se dar prioridad superior a aquellos que han comprado el paquete de
CD oficial. El web site oficial donde se localiza el Slackware es:
http://www.slackware.com / La direccin de FTP primaria del Slackware
Linux es:ftp://ftp.slackware.com/pub/slackware/
11

Requisitos del Sistema


Una instalacin sencilla de Slackware requiere, mnimo, lo siguiente,:
Tabla 3-2. Requisitos del Sistema
Hardware

Requiere

Procesador

386

RAM

16 MB

Espacio en disco 500MB


Floppy Drive

1.44 MB

Si usted tiene el CD booteable, probablemente usted no necesitar una


Floppy Drive. Claro, est que si usted planea instalar el CD usted necesitar
una unidad de CD-ROM. Una tarjeta de red se requiere para una instalacin
tipo NFS. Vea la seccin llamada NFS para ms informacin.
El requisito de espacio en disco es algo variable. Los 500MB recomendados
son para una instalacin normal, pero si usted hace un instalacin completa,
usted necesitar alrededor de un gigabyte de espacio en el disco duro
disponible. La mayora de los usuarios no hace una instalacin completa. De
hecho, Slackware corre en espacios tan pequeos como 100MB de espacio
en disco.
Slackware puede ser instalado en equipos con menos RAM pero para esto ara
falta un poco de sufrimiento. Si usted esta listo para un poco de trabajo, eche
una mirada al archivo de LOWMEM.TXT en el rbol de la distribucin para
algunas instrucciones tiles.

Las Series del Software


Por razones de simplicidad, Slackware ha sido histricamente dividido en
series de software. Una llamada "disk sets" por que fue diseada para la
instalacin mediante Floppy, las series de software se usan actualmente para
categorizar los paquetes incluidos en la instalacin. Hoy, la instalacin
mediante Floppy todava es posible para la serie A y la mayora de las series
de N (vea debajo).
El siguiente cuadro es una descripcin breve de cada serie de software.
Tabla 3-3. Series de Software
Series

Contenido

El sistema base. Contiene el software para ponerse en marcha


publicar texto y el programa de comunicacin bsico.

AP

Varias aplicaciones que no requieren del sistema X window

Herramientas para el desarrollo de programas. Compiladores,


debuggers, interpretes, y todas las paginas del man se encuentran
12

all..
DES

Incluye la funcion crypt del GNU libc.

GNU emacs.

FAQs, HOWTOs, y otras documentaciones miscelneas.

GTK

El entorno de escritorio GNOME, GTK widget library, y el GIMP.

El cdigo fuente del Kernel de Linux

KDE

El entorno de escritorio de K. Un ambiente de X que comparte


mucho rasgos con el MacOS y Windows. La biblioteca de Qt que
KDE requiere, tambin est en esta serie.

Programas de Red. Daemons, mail, telnet, grupos de noticias, y as


sucesivamente.

teTeX sistema de formato de documentos

TCL

Lenguaje de Herramientas de Comando. Tk, TclX, y TkDesk.

X Window System basico.

XAP

Aplicaciones de X que no son parte de un ambiente de escritorio (por


ejemplo, Ghostscript y Netscape).

XD

X11 desarrollo de programas. Libreras, Server link kit, y soporte


para PEX

XV

XView libreras, el OpenLook Virtual y No-Virtual Window Manager,


y muchas otras aplicaciones XView

Juegos

Mtodos de Instalacin
Floppy
Mientras alguna una vez fue posible instalar todo Slackware Linux desde los
disquetes flexibles, el tamao creciente de paquetes de software (de hecho,
de algunos programas individuales) ha forzado el abandono de este tipo de
instalacin para todas las series excepto dos. La serie A todava es totalmente
instalable desde los disquetes, y la mayora de la serie N tambin. Esto le
dar un sistema muy bsico que puede usarse para instalar el resto de la
distribucin va red.
Por favor note que todava se requieren los disquetes para la instalacin por
CD-ROM si no tiene el CD booteable, as como para la instalacin NFS.

CD-ROM
Si usted tiene el CD booteable, disponible en el paquete oficial publicado por
Slackware, Inc. (vea la seccin llamada Consiguiendo Slackware), la
instalacin basada en CD ser ms simple para usted. Si no usted necesitara
iniciar desde los disquetes. Adems, si usted tiene un hardware especial que
cause conflictos con el kernel usado en el CD bootable, usted necesitara usar
disquetes especiales.

13

Vea la Seccin llamada Disco de Inicio en la seccion llamada Disco


Suplemental para informacin de cmo escoger y crear los discos para
iniciar, si es necesario.

NFS
NFS Net File System ( Sistema de Archivo de Red) es una manera de hacer
el sistema de archivos disponible a las mquinas remotas. La instalacin NFS
le permite instalar Slackware desde otra computadora conectada en su red. La
mquina desde la que usted est instalando necesita ser configurado para
exportar la distribucin de Slackware a la mquina a que usted est
instalando. Esto, claro, involucra un poco de conocimiento de NFS que se
cubre en la seccin llamada NFS (Sistema de Archivo de Red) en Captulo 5.
Es posible realizar una instalacin NFS a travs de mtodos como PLIP
(mediante el puerto paralelo), SLIP, y PPP (aunque no mediante una conexin
de mdem). Sin embargo, nosotros recomendamos el uso de una tarjeta de
red si esta disponible. Despus de todo, instalar el sistema operativo a travs
de el Puerto de impresora va a ser un proceso muy, muy lento.

Disco de Inicio(Boot Disk)


El disco de inicio es el que se utiliza para arrancar la maquina y empezar la
instalacin. Contiene una imagen del kernel comprimida que se usa para
controlar el hardware durante la instalacin. Por consiguiente, es muy
importante (a menos que usted est iniciando desde el CD, como se explica
en la seccin llamada CD-ROM). Los discos de inicio estn localizados en el
directorio bootdsks.144/ en el rbol de la distribucin.
Hay ms discos de inicio de Slackware que usted puede utilizar (es decir
aproximadamente 60). Una lista completa de discos de inicio, con una
descripcin de cada uno, est disponible en el arbol de archivos de la
distribucin de Slackware en el archivo bootdsks.144/WHICH.ONE. Sin embargo,
la mayora de las personas puede usar el bare.i (para los dispositivos de IDE)
o scsi.s (para los dispositivos de SCSI) como imagen del disco de inicio.
Vea la seccin llamada la Creacin de los Discos para instrucciones de como
hacer un disco de imagen.
Despus de iniciar, se le pedir insertar el disco raz. Recomendamos que
inserte el disco raz y contine con la instalacin.

Disco Raiz(Root Disk)


El disco raz contiene el programa de instalacin y un el sistema de archivos
que se usa durante la instalacin. Es indispensable. Las imagines del disco
raz se encuentran el directorio rootdisk en el rbol de la distribucin.
Hay afortunadamente, menos imgenes de disco raz que de discos de inicio.
Hay slo tres de hecho.

color.gz Es el que la mayora de la personas utiliza. Esta en colores.


text.gz Es como el color.gz, pero sin color.
umsdos.gz se usa por instalar en una particin tipo FAT (Windows) se
recomienda slo para los propsitos experimentales. Para aquellos

14

interesados probar Slackware en una particin de Windows, nosotros


recomendamos usar ZipSlack o BigSlack.

Disco Suplemental
Un disco suplemental se necesita si usted est realizando una instalacin NFS
o instalando en un sistema con dispositivos PCMCIA. Los Discos
Suplementales se encuentran en el directorio rootdsks, bajo el nombre de
network.dsk y pcmcia.dsk.
El disco raz lo instruir en el uso de discos suplementales cuando este
cargado.

Creando los discos


Una vez seleccionada la imagen de disco de inicio que utilizara ,usted debe
colocarla en el disquete. El proceso es ligeramente diferente dependiendo del
sistema operativo que este usando para hacer los discos. Si esta bajo Linux (o
cualquiera basado en UNIX) usted necesitar usar el comando dd(1).
Asumiendo a hejaz.dsk Como imagen de inicio y su unidad de disquete como
/dev/fd0 el comando para hacer el disco hejaz.dsk es:
# dd if=hejaz.dsk of=/dev/fd0

Si usted est ejecutando un sistema operativo Microsoft, usted necesitar usar


el RAWRITE.EXE programa que es incluido en el rbol de la distribucin en
los mismos directorios de las imgenes de disquetes. Asumiendo que hejaz.dsk
de nuevo es su archivo de imagen de disco y su unidad de disquete es A:,
abra una ventana de DOS y teclee lo siguiente:
c:\ rawrite a: hejaz.dsk

Creando las Particiones


Despus de iniciar desde el dispositivo que halla elegido , usted necesitar
particionar su disco duro. La particiones del disco es donde se crearan los
sistemas de archivos de Linux y es donde Slackware se instalar. Como
mnimo nosotros recomendamos crear dos particiones; uno para la raz de su
filesystem(/) y una para swap.
Despus de cargar el Disco Raz(Root Disk), se le pedir el inicio de sesin.
Entre como root (no tiene contrasea). En el prompt del shell, ejecute
cfdisk(8) o fdisk(8). El programa cfdisk incluye una interfase mas amigable
que fdisk, pero no incluye ciertas funciones. Nosotros explicaremos
brevemente el programa fdisk a continuacin.
Empiece ejecutando fdisk en su disco duro. En Linux, los discos duros no
tienen letras para designar las unidades, pero se representan por un archivo.
El primer disco duro IDE (primary master) es /dev/hda, el esclavo
15

primario(primary slave) es /dev/hdb, y as sucesivamente. Los discos SCSI


siguen el mismo tipo de sistema, pero est con la forma de /dev/sdX. Usted
necesitar ejecutar fdisk y asignarle su disco duro:
# fdisk /dev/hda

Como todos los buenos programas de Unix, el fdisk le mostrara un prompt


(estaba pensando en un men, verdad?). La primera cosa que usted debe
hacer es examinar sus particiones actuales. Hacemos esto escribiendo p en el
prompt de fdisk:
Command (m for help): p

Esto desplegar toda la informacin sobre sus particiones actuales. La


mayora de las personas escoge una unidad libre para instalar y despus
quitar cualquier particin existente para crear las particiones de Linux.
ES MUY IMPORTANTE QUE USTED RESPALDE CUALQUIER INFORMACIN
QUE DESEE CONSERVAR ANTES DE DESTRUIR CUALQUIERA DE LAS
PARTCIONES DONDE SE ENCUENTRA.

No hay manera de recuperar despus de borrar una particin, as que haga un


respaldo de todo antes de empezar a jugar con ellas.
Mirando la informacin de la particin usted debe ver el numero de
particiones, el tamao de la particin, y su tipo. Hay mas informacin, pero no
se preocupe por eso ahora. Nosotros vamos a anular todas las particiones en
este paso para crear las de Linux. Ejecutamos el comando d para eliminarlas:
Command (m for help): d
Partition number (1-4): 1

Este proceso debe continuarse para cada una de las particiones. Despus de
anular todas las particiones nosotros estamos listos crear las de Linux.
Nosotros decidimos crear una particin para nuestro directorio raz y una para
swap. Nuestro consejo es hacer dos particiones para empezar, una para la
raiz del filesystem y una para el espacio swap. Con el tiempo usted encontrara
un esquema de particin que satisfaga su sistema.
Ahora nosotros creamos las particiones con el comando n:
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4):1
First cylinder (0-1060, default 0):0
Last cylinder or +size or +sizeM or +sizeK (0-1060, default 1060):+64M

Usted necesita asegurarse de crear las particiones primarias. La primera


particin va a ser nuestra particin swap. Nosotros decimos al fdisk hacer la
particin nmero 1 una particin primaria. Nosotros la comenzamos en el
cilindro 0 y como cilindro final escribimos +64M. Esto nos dar una particin de
16

64 Mb para el swap. (El tamao de la particin swap que usted realmente


necesita depende de la cantidad de RAM que usted tiene. En la mayora de
los casos debe ser el doble de la cantidad de RAM que usted posee.)
Entonces nosotros definimos la particin primaria 2 arrancando en el primer
cilindro disponible y tomando todo el espacio disponible en la unidad.
Command (m for help):n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4):2
First cylinder (124-1060, default 124):124
Last cylinder or +size or +sizeM or +sizeK (124-1060, default 1060):1060

Ya casi esta listo. Necesitamos cambiar el tipo de la primera particin a 82


(swap de Linux). Teclee t para cambiar el tipo, seleccione la primera particin,
y teclee 82. Antes de escribir sus cambios al disco, usted debe mirar la nueva
tabla de particin una ltima vez. Use p en el fdisk para desplegar la tabla de
particin. Si todo esta bien, tecleamos w para escribir sus cambios al disco y
salir del fdisk.

El Programa de Instalacin
Una vez creadas sus particiones, usted est listo para instalar Slackware. El
prximo paso en el proceso de instalacin ser ejecutar el programa de
instalacin: setup(8). Para hacer esto, simplemente escriba setup en el prompt
del shell. setup es un sistema manejado por mens que sirve para instalar los
paquetes de Slackware y configurar su sistema.

El proceso instalacin es as: Usted va paso a paso a travs de cada opcin


en el programa de instalacin, en el orden en que ellos se listan. (Por su
puesto usted puede hacer las cosas en el orden que usted escoja, pero tendr
pocas posibilidades para que las cosas le salgan bien.) Las opciones del
men se seleccionan usando las teclas de navegacin arriba y abajo, " Okay"
y" Cancel" ser escogidos usando la flechas de izquierda y derecha.
17

Opcionalmente, cada opcin tiene una tecla correspondiente a la letra que se


resalta en el nombre de la opcin. Las opciones que son flaggables (aqullas
indicadas con una [X]) se marcan usando la barra espaciadora.
Por supuesto, todo eso se describe en la seccin "help" del setup.
HELP
Si ste es su primera vez instalando Slackware, usted podra echar una
mirada a la pantalla de ayuda. Encontrara la descripcin de cada parte del
setup (mas o menos como la que estamos escribiendo ahora menos
profunda.) e instrucciones para recorrer el resto de la instalacin.

Keymap (Teclado)
Si usted posee un teclado diferente al de Estados Unidos, usted debe entrar a
esta seccin Ofrece varios diseos alternativos para el uso de su teclado.

ADDSWAP
Si usted creo una particin swap ,esta seccin le permitir habilitarlo. El las
detectara automticamente y le mostrara las particones swap de su disco
duro, permitindole seleccionar una para estructurarla y habilitara.
18

TARGET
La seccin Target es donde sus otras particiones (no-swap) son formateadas
y trazar los puntos de montaje del filesystem. Una lista de las particiones en
su disco duro se desplegar. Para cada particin, usted tendra la opcin de
formatear (y en ese caso, verificar los bloques malos) y una seleccin de
tamaos del inode. Para el uso normal, el tamao del inode predefinido est
bien.
La primera opcin en la seccin Target es la seleccin de una particin para
instalar la raz del filesystem(/). Despus de eso, usted podr trazar otras
particiones al filesystems. (Por ejemplo, usted puede querer una tercera
particin, digamos el /dev/hda3, para ser el HOME de su sistema de
archivos. Esto es simplemente un ejemplo; cree las particiones como le
parezca mejor.)
SOURCE
La seccin Source es donde usted selecciona los medios con los que usted
est instalando Slackware. Hay cuatro fuentes actualmente para escoger
Disquetes, CD-ROM, NFS, o un directorio PRE-montado.

La instalacin por disquetes empieza solicitando muchos discos. Esta opcin


requiere de mucho tiempo y paciencia, pero es posible. Tenga presente que
usted necesita crear los discos antes de empieza el programa de instalacin.
La seleccin de CD-ROM habilita la instalacin mediante CD. Ofrece la opcin
de buscar su tipo de unidad de CD o mostrar una lista para que usted escoja
el tipo de unidad de CD que usted posee. Asegrese que usted tiene el CD de
Slackware en su CDROM antes de permitirle examinar. Despus que el
programa encuentre su unidad del CD-ROM le preguntar si usted quiere
realizar una instalacin tipo "slakware" o tipo "slaktest." El valor
predeterminado es slakware que es una instalacin normal. La opcin del
slaktest instala un mnimo de software al disco duro y guarda la mayora de l
en el CD. Usted necesitara el CD live incluido en el set de instalacin para
poder utilizar esta opcin.
La seleccin de NFS le pedir la informacin de red de su equipo y la
informacin de red del servidor NFS. El servidor NFS debe prepararse por
adelantado. Tambin note que usted no puede usar hostnames, usted debe
19

usar las direcciones IP para su mquina y el servidor de NFS (no hay ningn
resolvedor de nombres en el disco de instalacin).
El directorio pre-mounted ofrece una mayor flexibilidad. Usted puede usar este
mtodo para instalar desde discos Jaz, NFS a travs de PLIP, y sistemas de
archivos FAT. Monte el filesystem en antes del setup, entonces especifique
esa direccin aqu.

20

SELECT
La opcin SELECT le permite seleccionar las series del software que usted
desea instalar. Estas series se describen en la seccin llamada Series de
Software. Por favor note que usted debe instalar serie A para tener un sistema
activo. Todas las otras series son optativas.

INSTALL
Asumiendo que usted ha pasado por " TARGET"," SOURCE", y" SELECT", la
opcion INSTALL le permitir seleccionar los paquetes de sus series
desoftware escogidas. Si no, le pedira regresar y completar las otras
secciones del programa de instalacin. Esta opcion le permite seleccionar seis
tipos diferentes de instalacion: full, newbie, menu, expert, custom, y tag
path.

21

La opcin full instalar cada paquete de todas las series desoftware que
usted escogi en la "seccin select.". ste es el mtodo de la instalacin ms
fcil, ya que usted no necesita tomar cualquier decisin en los paquetes a
instalar. Claro, esta opcin tambin aumenta la cantidad de espacio requerido
en la unidad de disco duro.
La prxima opcin es el newbie (novato). Esta opcin instala todos los
paquetes requeridos en las series seleccionadas. Para todos los otros
paquetes, ofrece una sugerencia dnde usted puede escoger" Yes"," No", o"
Skip. Yes y No hacen lo obvio, Mientras que Skip permite saltar a la
prxima serie de software. Adicionalmente, usted ver una descripcin y el
tamao requerido para cada paquete para ayudarle a decidir si usted lo
necesita. Nosotros recomendamos esta opcin para los nuevos usuarios, con
ella asegura que usted obtiene todos los paquetes requeridos instalados. Sin
embargo, es un poco lento debido a las preguntas.
El menu es una versin ms rpida y ms avanzada de la opcin newbie.
Para cada series, un men se despliega en el que usted puede seleccionar
todos los paquetes no-requeridos que usted quiere instalar. No se despliegan
los paquetes requeridos en este men.
Para el usuario ms avanzado, instale la opcin expert. Esto permite usted un
control completo sobre los paquetes que se instalan. Usted puede cancelar
una seleccin paquetes que se requieren absolutamente, produciendo un
sistema daado. Por otro lado, usted puede controlar lo que va hacia su
sistema exactamente. Simplemente seleccione los paquetes de cada series
que usted necesita instalar. Esto no se recomienda para el nuevo usuario..
La custom y tag path tambin son para los usuarias avanzados. Estas
opciones le permiten instalar archivos basados en etiquetas de costumbre(tag
path) que usted cre en el rbol de la distribucin. Esto es til para instalar
rpidamente a gran numero de mquinas. Para ms informacin sobre usar
los tag path, vea la seccin llamada la Fabricacin de Tags y Tagfiles (para la
instalacin) en Captulo 16.
Despus de seleccionar su mtodo de la instalacin, algunas cosas pasarn.
Si usted seleccionara full o menu, una pantalla del men aparecer,
permitindole seleccionar los paquetes a ser instalados. Si usted selecciono
full, los paquetes empezarn inmediatamente a ser instalados. Si usted ha
seleccionado newbie, se instalarn los paquetes hasta que se encuentre con
un paquete optativo.
note que es posible quedarse sin espacio mientras esta instalando. Si usted
selecciono demasiados paquetes para la cantidad de espacio libre en el
dispositivo designado, usted tendr problemas. La forma mas segura de
hacerlo es seleccionar algn software y agregar ms tarde, si usted lo
necesita. Esto puede hacerse fcilmente usando Slackware's package
22

management tools(Herramientas de manejo de paquetes de Slackware). Para


esta informacin, vea Captulo 16.
CONFIGURE
la seccin configure le permite hacer una configuracin bsica del sistema,
ahora que los paquetes se han instalado. Lo qu usted ve aqu depende
principalmente del software que usted ha instalado. Usted , sin embargo,
siempre vera lo siguiente:
Kernel selection(Seleccin de Kernel)
Aqu le pedirn que seleccione un Kernel para instalar. Usted puede
instalar el Kernel del disco que uso para iniciar(bootdisk), el del CDROM de Slackware(cdrom), o desde otro disco que usted tenga
(siempre pensando antes) preparado(floppy). O usted puede elegir
skip en este caso el kernel predefinido se instalara.

Make a boot disk (Crear un disco de arranque)


Hacer un disco de arranque para el uso futuro probablemente es una
buena idea. Usted tendr la opcin de formatear un disco y crear uno
de dos tipos de disco de inicio. El primer tipo, simple, simplemente
escribe un Kernel en el disco. Un una opcin ms flexible (y
recomendada) es lilo que crear un disco de inicio de lilo . Vea la
seccin llamada LILO en Captulo 7 para informacin sobre el lilo.
Claro, usted tambin puede escoger simplemente continue en esta
ningn disco de inicio se har.

23

Modem
Usted ser consultado sobre la informacin del mdem. Ms
especficamente, se preguntar si usted tiene un mdem, y en ese
caso, en que puerto serial se encuentra.

Estas prximas subdivisiones de la configuracin pueden o no aparecer,


dependiendo de si instalo o no los paquetes correspondientes.
Timezone (Zona Horaria)
Se le preguntara en que zona horaria se encuentra usted. Si usted
opera en la zona horaria de Zulu, lo sentimos; La (extremadamente
larga) lista esta ordenada alfabticamente, y usted esta de ultimo.

24

Mouse
Esta subdivisin simplemente pregunta qu tipo de ratn usted tiene, y
si usted quiere el gpm(8) (soporte de mouse para la consola) activado
en el inicio.

Font (Fuentes)
La subdivisin FONT le permite escoger de una lista el tipo de fuente
para la consola.
25

LILO
Aqu se le pide la instalacin de LILO (Linux Loader o cargador de
Linux ; vea la seccin llamada LILO en Captulo 7 para ms
informacin). Si el va de Slackware un ser el nico sistema operativo en
su computadoras, el debe trabajar bien para usted simple. Si usted
tiene un sistema dual de inicio, la opcin expert es una buena opcin.
Vea que la seccin llamada booteo dual en el Captulo 7 para ms
informacin sobre el inicio-dual. La tercera opcin, do not install, no se
recomienda a menos que usted sepa lo que usted est haciendo y tiene
una razn muy buena por no instalar LILO. Si usted est realizando una
instalacin en modo experto , usted tendr la opcin acerca de dnde
LILO se instalara. Usted puede poner LILO en el MBR (Master Boot
Record de su unidad de disco duro), en el superblock de su particin
raz de Linux, o en un disquete flexible.
Por favor note que si usted est usando el inicio de otro sistema
operativo actualmente es aconsejable o instalar LILO al superblock de
particin raz de Linux o a un disquete. Instalando al MBR se borrara el
inicio de cualquier otro sistema operativo y puede hacerle la vida muy
difcil.
Network (Red)
La subdivisin de configuracin de red es realmente el netconfig. Vea la
seccin llamada netconfig en Captulo 5 para ms informacin.
CD-ROM
La subdivisin de CD-ROM simplemente pregunta si le gustara que el
sistema examinara y montara automticamente un disco de CD-ROM
disponible en /cdrom.

26

X Window Manager (El Gestor de Ventanas X)


Esta seccin le permitir configurar su gestor window predeterminado
para X . Vea el Captulo 6 para ms detalles sobre X Window
Manager.

No importa qu paquetes que usted instal, la ltima cosa que har es


preguntarle si usted quiere proseguir y poner una contrasea de root.
Por las razones de seguridad, sta es probablemente una buena idea;
sin embargo, como casi todo lo dems en Slackware, sta es su
decisin.
EXIT
La existencia misma de esta seccin en el libro es un insulto a su
inteligencia. Nosotros nos disculpamos humildemente y pedimos su
perdn.

Resumen
Usted debe tener Slackware Linux ahora instalado en su sistema. Adems,
usted debe tener un poco de conocimientos sobre particiones, paquetes de
software, el programa de instalacin, y algunas opciones de la configuracin
simples. Con este conocimiento, usted debe estar listo para trabajar
terminando la configuracin de su sistema.
27

III. Configuracin
Contenido
4. Configuracin del Sistema
5. Configuracin de Red
6. El sistema de ventanas X
7. Inicio

Capitulo 4. Configuracin del Sistema


Contenido
Conociendo el Sistema
Seleccionando el Kernel
Resumen
Antes de que usted pueda configurar las partes ms avanzadas de su
sistema, es una buen idea aprender cmo esta organizado y qu rdenes
pueden usarse para buscar archivos y programas. Tambin es bueno saber si
usted necesitara compilar un Kernel propio y los pasos que debe hacer. Este
captulo lo familiarizar con la organizacin del sistema y los archivos de
configuracin. Entonces, usted puede seguir a configurar las partes ms
avanzadas del sistema.

Conociendo el Sistema
Es importante entender cmo se distribuye el sistema Linux antes de entrar en
los varios aspectos de la configuracin. Un sistema Linux es
significativamente diferente a DOS o a Windows (o incluso a un Macintosh),
pero estas secciones lo ayudarn a entender el diseo para que usted pueda
configurar su sistema fcilmente para satisfacer sus necesidades.

Sistema de Archivos
La primera diferencia notable entre Slackware Linux y DOS o Windows es el
filesystem(Sistema de Archivos). Para comenzar, nosotros no usamos letras
diferentes para denotar las particiones diferentes. Bajo Linux, hay un directorio
principal. Usted puede relacionar esto al C: de DOS. Cada particin en su
sistema se monta en un directorio en el directorio principal.
Nosotros llamamos a el directorio principal ,directorio raz, y se denota con un
solo slash(/). Este concepto puede parecer extrao, pero hace la vida
realmente fcil para usted cuando usted quiere agregar ms espacio. Por
ejemplo, digamos que se quede sin espacio en el directorio /home. La mayora
de las personas instala Slackware y crea un gran directorio raz. Bien, desde
que una particin puede montarse en cualquier directorio, usted simplemente
puede ir a la tienda comprar una nueva unidad de disco duro y montarlo en el
28

directorio /home. Usted ha unido" ahora" un poco ms de espacio a su sistema.


Y todo sin tener que mover muchas cosas.
Debajo, usted encontrar descripciones del tope mayor de los directorios bajo
Slackware.
/bin
Aqu se guardan los programas de usuario esenciales. stos
representan el grupo mnimo de programas requerido para usar el
sistema. Las cosas como el shell y los comandos del filesystem (ls, cp,
y as sucesivamente) se guardan aqu. El directorio /bin normalmente no
recibe modificacin despus de la instalacin. Si lo hace, normalmente
est en el paquete de actualizaciones que nosotros proporcionamos.
/boot
Archivos que utiliza el Cargador de Linux (LILO). Este directorio
tambin recibe la poca modificacion despus de la instalacin.
/cdrom
Recuerda que todas las unidades tienen que ser montadas en un
directorio en el directorio raz? Bien, /cdrom es provisto para el montaje
de la unidad de CDROM.
/dev
Todo en Linux se trata como un archivo, los dispositivos del hardware
como los puertos en serie, discos duros, y escneres. Para acceder a
estos dispositivos, un archivo especial que llame al nodo del dispositivo
tiene que estar presente. Todos los nodos del dispositivo se guardan en
el directorio /dev. Usted encontrar esto en muchos sistemas basados
en UNIX.
/etc
Este directorio guarda los archivos de configuracin del sistema. Todo
el archivo de configuracin del sistema X window, la base de datos del
usuario, las entradas de inicio de sistema. El administrador del sistema
se familiarizara con el tiempo a este directorio.
/home
Linux es un sistema operativo multiusuario. Cada usuario en el sistema
se le otorga una cuenta y un nico directorio para los archivos
personales. A este directorio se le llama el Home del usuario. El
directorio /home es el predefinido como ubicacin para estos directorios.
/lib
Aqu se guardan bibliotecas del Sistema que se requieren para el
funcionamiento bsico. La biblioteca de C, el cargador dinmico, la
biblioteca del ncurses, y los mdulos del kernel estn entre otras cosas
guardados aqu.
/lost+found
Cuando el sistema se arranca, los filesystems se verifican para
cualquier error. Si se descubren los errores, se ejecuta el programa
fsck para ver si cualquiera puede corregirse. Las partes corregidas del
filesystem se escriben al directorio /lost+found.
/mnt
Este directorio sirve de punto de montaje temporal para discos duros o
discos extrables.

29

/opt
Paquetes de software optativos. La idea detrs de /opt es de que cada
paquete opcional se instale en /opt/<software package>, lo que har fcil
desinstalarlo despus. Slackware incluye algunas cosas en /opt (como
KDE en /opt/kde), pero usted es libre agregar lo que usted quiera a /opt.
/proc
ste es un directorio nico. Realmente no es parte del filesystem, pero
es un sistema de archivos virtual que proporciona acceso a la
informacin del kernel. Los varios pedazos de informacin que el kernel
quiere que usted sepa se muestran a travez de archivos en el
directorio /proc. Usted tambin puede enviar la informacin al Kernel a
travs de algunos de estos" archivos".Trate haciendo cat /proc/cpuinfo.
/root
El administrador del sistema es conocido como root". el directorio
home del root se encuentra en el directorio /root en lugar de /home/root.
La razn es simple. Qu pasaria si /home estuviera en una particin
diferente a / y no pudiera montarse? root querra entrar y reparar el
problema naturalmente. Si su directorio home estuviera en el filesystem
daado, seria difcil para l entrar.
/sbin
Programas esenciales que se ejecutan por el root y durante el proceso
de arranque del sistema se guarda aqu. Los usuarios normales no
ejecutan los programas de este directorio.
/tmp

La ubicacin de almacenamiento temporal. Todos los usuarios tiene


acceso a este directorio.
/usr
ste es el directorio grande en un sistema Linux. Todo lo ms bonito va
aqu, programas, documentacin, el cdigo fuente del kernel, y el
sistema X window. ste es el directorio en el usted estar instalando
mas programas probablemente.
/var
Aqu se guardan archivos log del Sistema, datos del cache, y archivos
de bloqueo de programa. ste es el directorio para los datos
frecuentemente-cambiantes.
Usted debe ahora tener una buena percepcin de lo que contiene los
directorios en el filesystem. La prxima seccin le ayudar a encontrar los
archivos especficos fcilmente, para que usted no tenga que hacerlo a mano.

Encontrando Archivos
Usted sabe lo que contiene cada directorio ahora, pero todava no le ayuda
realmente a encontrar las cosas. Es decir, usted podra ir buscando a travs
de los directorios, pero hay maneras ms rpidas. Hay cuatro comandos
principales de bsqueda de archivos disponibles en Slackware.
which
El primer comando es which(1). Normalmente se usa which para localizar
rpidamente un programa. El solo busca la ruta y muestra la primera instancia
que encuentra y el directorio donde se localiza. Tome este ejemplo:
30

$ which bash
/bin/bash

Lo que usted ve ahora es que bash esta en el directorio /bin. ste es un


comando muy limitado para investigar, ya que slo muestra la ruta.
whereis
El whereis(1) es un comando similar, pero tambin puede buscar pginas del
manual y archivos fuente. Una bsqueda del whereis para bash debe devolver
esto:
$ whereis bash
bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz

Este comando no slo nos dijo donde esta el programa real, sino tambin
donde la se guarda la documentacion. Todava, este comando est limitado.
Qu si usted quisiera buscar un archivo de configuracin especfico? Usted
no puede usar which o whereis para eso.
find
El comando find(1) puede buscar lo que sea. Yo quiero buscar el sistema
entero para encontrar el xinitrc predefinido en el sistema.
$ find / -name xinitrc
./var/X11R6/lib/xinit/xinitrc

find tardar un rato en ejecutarse, ya que tiene que cruzar el rbol del
directorio raz entero. Si usted ejecuta este orden como un usuario normal,
usted conseguir mensajes de error de permiso denegado para los
directorios que slo root puede ver. Pero find encontr nuestro archivo, lo que
es bueno. Si slo pudiera ser un poco mas rapido...
locate
El locate (1) busca en el filesystem entero, como lo hace el comando find,
pero investiga una base de datos en lugar del filesystem real. La base de
datos se pone al da automticamente a las 4:40AM, para que usted tenga
una descripcin fresca de los archivos en su sistema. Usted puede ejecutar el
updatedb(1) a mano para poner al da la base de datos. Este es un ejemplo
de locate en accin:
$ locate xinitrc # we don't have to go to the root
/var/X11R6/lib/xinit/xinitrc
/var/X11R6/lib/xinit/xinitrc.fvwm2
/var/X11R6/lib/xinit/xinitrc.openwin
/var/X11R6/lib/xinit/xinitrc.twm

Nosotros conseguimos ms de lo que nosotros estbamos buscando, y


rpidamente tambin. Con estas rdenes, usted debe poder encontrar
cualquier cosa que usted est buscando en su sistema Linux.

El Directorio etc/rc.d
Los archivos de inicio del sistema se guardan en el directorio /etc/rc.d.
Slackware usa el diseo tipo-BSD para sus archivos de inicio. Cada tarea o
runlevel tiene su propio archivo rc. Esto proporciona una estructura
organizada que es fcil mantener.

31

Hay varias categoras de archivos de inicio. stos son inicio del sistema
(system startup), runlevels, inicio de red (network initilization), y
compatibilidad con el Sistema V (System V compatibility).
System Startup(Inicio del Sistema)
El primer programa que se ejecuta bajo Slackware adems del Kernel de
Linux es el init(8). Este programa lee el archivo /etc/inittab(5) para ver cmo
arrancara su sistema. Ejecuta el script /etc/rc.d/rc.S para preparar el sistema
antes de entrar en el runlevel deseado. El archivo de rc.S habilita su memoria
virtual, monta su filesystem, limpia ciertos directorios del log, inicia los
dispositivos Plug & Play, carga los mdulos del kernel, configura los
dispositivos PCMCIA, los puertos en serie, y ejecuta el System V init script (si
lo encontr). Obviamente rc.S tiene mucho trabajo que hacer, pero estn
algunos scripts en /etc/rc.d que rc.S llamar mas adelante para completar su
trabajo:
rc.S

ste es el script de inicializacin del sistema actual.


rc.modules

Carga los mdulos del kernel. Cosas como su tarjeta de red,soporte


para PPP, y otras cosas son cargadas aqu. Si este script encuentra
rc.netdevice, ejecutar eso tambin.
rc.pcmcia

Busca y configura cualquier dispositivo PCMCIA que usted podra


tener en su sistema. Esto es muy til para usuarios de porttiles que
probablemente tienen un mdem PCMCIA o una tarjeta de red.
rc.serial

Configura sus puertos en serie ejecutando los caomandos apropiados


del setserial.
rc.sysvinit

Busca los scripts de System V init para el runlevel deseado y los


ejecuta. Esto se discute con ms detalle abajo.
Runlevel Initialization Scripts
Despus de que el inicio del sistema est completo, el init continua la
inicializacin del runlevel. Un runlevel describe el estado en que su mquina
estar corriendo. Suena redundante? Bien, el runlevel dice al init si usted
esta aceptando inicios de sesin multiusuarios o simplemente un solo usuario,
si usted quiere o no los servicios de red, y si usted estar usando el X window
system o agetty(8) para ocuparse de los inicios de sesin. Los archivos
debajo definen los diferentes runlevels en Slackware Linux.

rc.0

Deteniene el sistema (runlevel 0). Por defecto, esta linkeado a rc.6.


rc.4

Inicio Multiusuario (runlevel 4), pero con X11 con KDM, GDM, o XDM
como gestor de inicio de sesion.
rc.6
32

Reinicia el sistema (runlevel 6).


rc.K

inicio en modo de un solo usuario (runlevel 1).


rc.M

modo multiusuario (runlevels 2 y 3), pero con el inicio de sesin


basado en texto normal. ste es el runlevel predefinido en Slackware.
Inicio de Red(Network Initialization)
Runlevels 2, 3, y 4 pondrn en marcha los servicios de red. Los siguientes
archivos son los responsables del inicio de la red:
rc.inet1

Creado por el netconfig, este archivo es responsable de configurar la


interfaz de la red actual.
rc.inet2

Se ejecuta despus de rc.inet1 inicia los servicios de red bsicos.


rc.atalk

Inicia los servicios AppleTalk.


rc.httpd

Inicia el servidor web Apache.


rc.samba

Inicia el servicio para compartir archivos e impresoras con sitemas


Windows.
rc.news

Inicia el servidor de noticias.


System V Compatibility
Sistem V init compatibility se introdujo en Slackware 7.0. Muchas otras
distribuciones de Linux hacen uso de este estilo en lugar del estilo de BSD.
Bsicamente a cada runlevel se le otorga un subdirectorio para los scripts de
init, mientras que el estilo BSD otorga un script de init para cada runlevel.
El script de rc.sysvinit buscar cualquier script de sistema V init que usted tenga
en /etc/rc.d y lo ejecuta, si el runlevel es apropiado. Esto es con toda seguridad
til para paquetes de software comerciales que instalan System V init scripts y
scripts para el init de BSD.
Otros Archivos
Los scripts descritos debajo son los otros scripts de inicio del sistema. Ellos se
ejecutan normalmente desde uno de estos scripts descritos abajo, todo lo que
usted necesita es editar el contenido
rc.cdrom

Si esta activado, este script buscara la unidad de CD-ROM y la montara


en el directorio /cdrom.
rc.gpm

Inicia los servicios del mouse para propsitos generales. Le permite


copiar y pegar en la consola de Linux.
rc.ibcs2

Inicia el soporte de compatibilidad binaria de Intel. Esto solo es


necesario si usted planea ejecutar programas compilados en SCO
UNIX, u otra aplicacin comercial Intel UNIX. No se necesita para
ejecutar los programas de Linux
33

rc.font

Carga la fuente de pantalla personalizada para la consola.


rc.local

Contiene cualquier inicio especifico para su sistema. Esta vaco


despus de una instalacin reciente, esta reservado para los
Administradores locales .Este script se ejecuta despus de que toda la
otra inicializacin ha tenido lugar.
Para habilitar un script, todo lo que tiene que hacer es agregarle los permisos
de ejecucin con el comando chmod . Para desactivar un script, quite los
permisos de ejecucin de l . Para ms informacin sobre el chmod, vea la
seccin sobre los Permisos en Captulo 9.

Seleccionando el Kernel
El Kernel es la parte del sistema operativo que proporciona acceso al
hardware, controla los proceso, y el mando general del sistema. El Kernel
contiene el soporte para su hardware, as que escoger el adecuado para su
sistema es un paso importante en el proceso de instalacin.
Slackware proporciona alrededor de sesenta Kernels precompilados que
usted puede escoger, cada uno con un set normal de drivers y drivers
adicionales especficos. Usted puede ejecutar uno de los Kernels
precompilados o puede construir su propio Kernel desde la fuente. De
cualquier modo, usted necesita asegurarse que su Kernel tiene el soporte de
hardware que su sistema necesita.

El directorio /Kernel en el CD-ROM de Slackware


Los Kernel precompilados de Slackware estn disponibles en el directorio
/Kernel del CD-ROM de Slackware o en el sitio de FTP en el directorio
principal de Slackware. Los Kernels disponibles cambian de acuerdo a las
nuevas versiones que se hacen por lo que la documentacin en este directorio
es siempre la fuente autorizada. El directorio /Kernel tiene subdirectorios para
cada kernel disponible. Los subdirectorios tienen el mismo nombre como del
disco de inicio que los acompaa. En cada subdirectorio usted encontrar los
siguientes archivos:
Archivo

Proposito

System.map

El archivo de mapa de sistema para este Kernel

bzImage (o zImage)

La imagen del Kernel actual

config

La fuente para la configuracin de este Kernel

Para usar un Kernel, copie el System.map y los archivos de configuracin a su


directorio /boot y copie la imagen del Kernel en el directorio /vmlinuz. Ejecute
/sbin/lilo(8) para instalar el LILO del nuevo Kernel, y entonces reinicie su
sistema. Esto es todo lo que hay que hacer para instalar un nuevo Kernel.
34

Los Kernels que terminan con un ".i" son lo Kernels IDE. Es decir, ellos no
incluyen el apoyo para SCSI en el Kernel. Los Kernels que terminan con .s
son los Kernels SCSI. Ellos incluyen todo el suporte de IDE de los Kernels .i
,mas el suporte para SCSI.

Compilando un Kernel desde la fuente


La pregunta" yo debo compilar un Kernel para mi sistema?" se presenta a
menudo en los nuevos usuarios. La respuesta definitivamente es tal vez. Hay
pocos casos dnde usted necesitar compilar un Kernel especfico para su
sistema. La mayora de los usuarios puede usar un Kernel precompilado y los
mdulos cargables del Kernel para lograr un sistema totalmente activo. Usted
querr compilar un Kernel para su sistema si usted est actualizando la
versiones del Kernel a uno que nosotros no ofrecemos actualmente en
Slackware, o si usted ha reparado la fuente del Kernel para conseguir soporte
a algn dispositivo especial que no est en la fuente kernel nativa.
Construir su propio Kernel no es tan difcil. El primer paso es asegurarse que
usted tiene la fuente del kernel instalada en su sistema. Asegrese que usted
instal los paquetes de las series K durante la instalacin. Usted tambin debe
asegurarse que tiene instalada la serie D, especficamente el compilador de C,
el GNU make y el GNU binutils. En general, es una buena idea tener toda la
serie D instalada si usted planea en hacer cualquier tipo de desarrollo. Ahora
nosotros estamos listos para construir un Kernel:
$ su Password:
# cd /usr/src/linux

El primer paso es traer la fuente del Kernel a su estado bsico. Nosotros


emitimos este orden para hacer eso:
# make mrproper

Ahora usted puede configurar el Kernel para su sistema. Los kernls actuales
permiten tres maneras de hacer esto. La primera es el sistema de texto
basado en preguntas y respuestas. Hace una serie de preguntas y entonces
construye el archivo de configuracin. El problema con este mtodo es que si
usted se equivoca, usted debe volver a empezar. El mtodo que la mayora de
las personas prefiere es el manejado por mens. Hay por ultimo una
herramienta de configuracin basada en X. Escoja el que usted quiera y
ejecute el comando apropiado
# make config
(texto basado en preguntas y respuestas.)
# make menuconfig (manejado por menus, basado en texto)
# make xconfig
(version basada en X, asegurese que se encuentra en X primero)

35

Figura 4-1. El programa de configuracin Kernel manejado por mens.

Los Nuevos usuarios encontrarn el menuconfig probablemente ms fcil de


usar. Las pantallas de ayuda que provee explica las partes del Kernel.
Despus de configurar su Kernel, salda del programa de configuracin. El
programa escribir los archivos de configuracin necesarios. Ahora nosotros
debemos preparar el rbol de la fuente para construirlo:
# make dep
# make clean

El prximo paso es compilar el Kernel. Trate primero usando el comando


zImage. Este fallar si su Kernel es demasiado grande. No preocupe, usted
todava puede construirlo con el comando bzImage.
# make zImage
# make bzImage

(pruebe este primero)


(si make zimage falla, ejecute este comando)

Esto puede tardar un poco, dependiendo de la velocidad de su CPU. Durante


el proceso de construccin, usted ver los mensajes del compilador. Despus
de construir la imagen kernel, usted querr construir cualquier parte del Kernel
que usted marc como modulo.
# make modules

36

Nosotros podemos ahora instalar el Kernel y los mdulos que usted compil.
Para instalar el Kernel en un sistema Slackware, estos comandos deben
ejecutarse:
# mv /vmlinuz /vmlinuz.old
# cat arch/i386/boot/zImage > /vmlinuz
# mv /boot/System.map /boot/System.map.old
# cp System.map /boot/System.map

Reemplace el zImage con el bzImage si usted tena que construir un Kernel


grande. Usted querr revisar /etc/lilo.conf y agregar una seccin para iniciar
desde su Kernel viejo en caso de que el nuevo no trabaje. Despus de hacer
eso ejecute /sbin/lilo para instalar el nuevo bloque de inicio. Usted puede
reiniciar ahora y utilizar su nuevo Kernel.

Usando los Mdulos del Kernel


Los modulo del Kernel son otros dispositivos adicionales que pueden ser
agregados en un Kernel normal. Ellos le permiten extender el soporte de
hardware de su Kernel sin necesidad de escoger otro Kernel o compilar uno
por usted.
Tambin puede cargar y descargar los mdulos cuando usted quiera , incluso
cuando el sistema est corriendo. Esto hace la actualizacin de drivers
especficos mas sencillo para los administradores de sistema. Un nuevo
mdulo puede compilarse, quitar el viejo, cargar el nuevo, y todo sin reiniciar
la mquina.
Los mdulos se guardan en el directorio /lib/modules/<kernel version> en su
sistema. Ellos pueden cargarse al inicio a travs del archivo rc.modules. Este
archivo esta muy bien documentado y ofrece ejemplos para la mayora de las
opciones de hardware. Para ver la lista de mdulos que estn actualmente
activos, utilice el comando lsmod(1):
# lsmod
Module
parport_pc
parport

Size Used by
7220 0
7844 0 [parport_pc]

Usted puede ver aqu que slo tengo el mdulo del puerto paralelo cargado.
Para quitar un mdulo, usted usa el comando rmmod(1). Los mdulos pueden
ser cargados con las ordenes modprobe(1) o insmod(1). modprobe es
generalmente mas seguro porque cargara cualquier modulo que dependa del
que usted esta intentando cargar.
Muchos usuarios nunca tienen que cargar o descargar los mdulos a mano.
Ellos usan el Kernel autoloader para el manejo de los mdulos. Todo lo que
tiene que hacer es descomentar la linea /sbin/kernel(8) en
/etc/rc.d/e/rc.modules y el autoloader se cargara. Se encargara de cargar y
descargar los mdulos como usted le pida. Una peticin solo involucra tratar
de acceder a ese dispositivo.
Ms informacin puede encontrarse en las pginas del manual de cada uno
de estos comandos, y en el archivo de rc.modules.
37

Resumen
Usted debe estar ahora familiarizado con los rdenes para buscar en el
filesystem, la organizacin del filesystem, y la configuracin de archivos en el
directorio /etc. Estas habilidades sern sumamente tiles como usted aprende
ms sobre el sistema. Adems, usted debe saber cmo configurar y compilar
un Kernel desde la fuente.

38

Capitulo 5. Configuracin de la Red


Contenido
Hardware de Red
Utilidades de Red
Los Archivos de /etc
rc.inet1
rc.inet2
NFS (Sistema de Archivos de Red)
tcp wrappers
Resumen

Hardware de Red
Como la mayora de las cosas interesantes que usted puede hacer con una
computadora, conectarla a una red involucra tener algo de hardware especial.
Usted necesitar una NIC ( Tarjeta de Interfaz de Red) para conectarla a una
red LAN, quizs un mdem para conectarse a un proveedor de Internet, o
quizs ambos (o alguno , o ninguno).
Para los propsitos de configuracin, nosotros podemos dividir dicho
hardware en PCMCIA (para las computadoras porttil) y no-PCMCIA. La
razn para esta divisin algo desequilibrada es que actualmente el hardware
PCMCIA no es soportado por la distribucin Kernel, pero es posible lograrlo
con un paquete separado que incluye los drivers necesarios (como los
mdulos Kernel) y algn software para la configuracin y manejo de
dispositivos de PCMCIA. Todo lo dems, claro, se maneja con la distribucin
Kernel normal.

Netmods( Mdulos de Red)


Los drivers para los dispositivos de red que son soportados por el Kernel
estn incluidos en el paquete netmods(slakware/n3/netmods.tgz). Si usted no ha
instalado el netmods todava, usted necesitar hacerlo ahora. (Vea el
Captulo 16 para ayuda sobre instalar los paquetes.)
Los modulos del Kernel que sern cargados al iniciar se encuentran en el
archivo rc.modules en el directorio /etc/rc.d. El archivo rc.modules predefinido
incluye una seccin llamada |Network device support| (soporte de equipos de
red) .si usted abre el archivo rc.modules y busca esa seccion, usted notara que
el busca primero el ejecutable rc.netdevice en /etc/rc.d; rc.netdevice se crea si se
instala el autoprobes para su dispositivo de red durante la isntalacion. Si esta,
usted probablemente no este leyendo esto (ooh, paradjico), si no esta sigua
leyendo.
Debajo del bloque "if" ah una lista de dispositivos de red y lneas del
modprobe, cada una se encuentra comentada. Encuentre su dispositivo y
descomente la lnea correspondiente en el modprobe, despus guarde el
39

archivo. Ejecutando rc.modules como root debe cargar el driver para su


dispositivo de red.( l as como cualquier otro modulo descomentado.) Note que
algunos mdulos (como el driver del ne2000) requiere los parmetros;
asegrese usted seleccione la lnea correcta.

Dispositivos de red PCMCIA


Los dispositivos de red PCMCIA son aun mas fciles que los otros. Asegrese
que usted tiene instalado el paquete de PCMCIA (slakware/a11/pcmcia.tgz).
(vea el Captulo 16 para detalles sobre la instalacin del paquete.) En la
instalacin, el paquete pcmcia creara un archivo rc.pcmcia en el directorio
/etc/rc.d y un directorio /etc/pcmcia, e instalara los drivers en /lib/modules/<kernel
version>/pcmcia. Lo bueno del paquete pcmcia es que intenta detectar
automticamente la instalacin y desinstalacin de dispositivos pcmcia
soportados; y usted debe poder insertar su dispositivo pcmcia y escuchar
simplemente el pitido que da al cargar los mdulos necesarios. Si usted quita
la tarjeta, los mdulos del driver deben quitarse automticamente.
Desgraciadamente, si usted compila una versin mas nueva del Kernel usted
probablemente tendr que recompilar pcmcia-cs para obtener los drivers
actualizados. Claro , la fuente esta incluida; chequee el directorio
source/a/pcmcia, hay encontrara la fuente , scripts y cualquier otra
documentacin que tenemos para ayudarle.

Utilidades de Red (Network Utilities)


ifconfig
Ahora que su Kernel puede comunicarse con su hardware de red ,lo que se
necesita lograr es que el software le diga al Kernel como pasar informacin a
travs de el y viceversa. Nosotros necesitamos configurar una interfaz.
necesitamos el ifconfig(8).
Es mas facil aprender sobre el ifconfig a travs de el ejemplo; usted puede
echar una mirada a su archivo rc.inet1 (cubierto en las seccin llamada
rc.inet1) para ver como se hace: el caso mas comn y mas sencillo se parece
a esto:
# ifconfig eth0 192.168.1.10 broadcast 192.168.1.255 \
netmask 255.255.255.0

Esta lnea plantea el eth0 (la primera interfaz de ethenet ; usa el anillo tr0, los
ppp usan el ppp0, etc.). con el IP 192.168.1.10, una direccin de trasmisin de
192.168.1.255(incluye toda la subred 192.168.1) y la mascara de red
(netmask) de 255.255.255.0 (indicando que las tres primeras partes de la
direccin de IP(192.168.1) se refieren a la red, mientras que la ultima
parte,(.10), se refiere al host). Al menos que usted este haciendo algo extrao,
puede usar siempre esta direccin de trasmisin que es las primeras tres
partes de su IP seguidas por 255. Usted puede usar casi siempre como
40

netmask 255.255.255.0. Si usted esta haciendo algo diferente, usted sabe que
esta parte del libro probablemente no le servir mucho de ayuda.
tambin puede usar ifconifg simplemente para ver lo que esta all. Ejectelo
sin ninguna opcin ni parmetro para ver la lista de todas sus interfaces de
red actuales y sus configuraciones.

route
Para saber donde enviar los datos, el Kernel mantiene una tabla de rutas
(routing table). No vamos a hacer mucho detalle sobre el aqu, pero usted
puede ver la tabla de rutas ejecutando /sbin/route(8). route -n le dar la lista de
direcciones IP en lugar de los nombre; esto es util si esta teniendo problemas
comunicndose con el nombre del servidor o si usted simplemente no esta
interesado en el mundo ilusorio de los nombres de dominio. Afortunadamente
si usted tiene una instalacin de red simple(y la mayora de las personas
hace).los Kernels 2.2 automticamente crearan las entradas en la tabla de
asignacin de rutas.

Netconfig
netconfig es parte del programa de instalacin del Slackware, pero como la
mayora de los componentes puede ejecutarse por separado. el netconfig es
muy sincero, y lo guiara de forma que usted pueda crear una conexin de red
bsica. Es un programa especialmente bueno si usted no est muy
familiarizado o cmodo con los archivos de red rc. Cuando usted ejecuta el
netconfig, usted se encontrara con esta pantalla de saludo:

Se le pedir escribir el hostname y el domain name de su computadora. Usted


puede escribir cualquier cosa en estos dos renglones, a menos que este
preparando un servidor u otra maquina que usaran muchas personas. se le
preguntara si usted esta usando un IP esttico, DHC,o simplemente loopback.

41

Si usted no va a estar conectado a una red, escoja loopback. Si usted est


preparando una computadora que se conectara a una universidad o a una red
de oficina grande, usted debe escoger DHCP ms probablemente. En otro
caso escoja el IP esttico(static IP). Si usted no escogi Ip esttico, usted
esta listo ahora. Si usted escoge el IP esttico, usted tendr que introducir la
direccin de IP de su computadora, la mascara de red, direccin de
trasmisin, y direccin del servidor. netconfig le dir como deducir todos
esos nmeros.

pppsetup
Slackware incluye la utilidad pppsetup que permite configurar una conexin
con un ISP.(Proveedor de Servicios de Internet). Se localiza en el paquete
ppp.tgz en la serie de software N: pppsetup utiliza la misma interfase que el
programa de instalacin. Si usted no recuerda cmo usar esta interfaz,
refirase atrs a la seccin llamada El Programa del Instalacin en Captulo 3
para algunas instrucciones. pppsetup le hara una serie de preguntas y
configurara varios archivos en el directorio /etc/ppp. Como root, ejecute
pppsetup, nosotros lo guiaremos a travs de las preguntas.

42

Phone number (Numero de telfono)


La primera de las preguntas se refiere a el nmero de telfono de su
ISP, los cdigos de rea y tipo de marcado. Como la mayora de las
personas, usted querr usar el marcado por tonos(tone dialing). Si el
nmero de telfono de su ISP fuera 555-1013 y usted usa el marcado
por tonos, escriba atdt5551013 en el cuadro de dilogo.

43

Modem
Luego, seleccione la ubicacin de su mdem. Si usted sabe cual puerto
COM usaba bajo Windows, usted puede seleccionar el equivalente en
el listado. Si no lo sabe, usted tendr que hacer un experimento. La
mejor manera es empezar por ttys0 y ir probando lista abajo.

Velocidad de trasmisin del modem


(Modem Baud Rate)
Escoja la velocidad de transmisin que mas se acerque a su modem. Si
usted no sabe la velocidad de su modem, podra verificar la caja del
modem o cualquier documentacin que viniera con el. Cada seleccin
tiene varios ejemplos, por lo que no debe ser difcil deducir.

44

Callback
Ahora, usted necesitara indicar la informacin referente a su ISP.
Pocos ISPs usan el callback, probablemente puede seleccionar mejor
"NO." Callback es cuando usted marca al ISP y ellos devuelven la
llamada para que usted se pueda conectar en el.

Si usted tiene que usar el callback, seleccione" YES." Entonces, se le


pedir introducir su nmero de telfono, un nombre del inicio de sesin,
y una contrasea. Usted no tiene que introducir su nombre de usuario y
contrasea. Finalmente se le preguntara sobre que tipo de esquema de
45

autenticacin usa su ISP. Si ellos usan CHAP o PAP, seleccione


"YES". Despus, usted necesitar preparar esto. Refirase a la seccin
debajo. Si ellos no usan ninguno de los anteriores, seleccione "NO" y
refirase a la seccin "Chat Script descrita abajo.
Modem init string
A menos que usted tenga un modem extrao, usted podra
simplemente presionar enter para seleccionar el predeterminado
("AT&FHO"). Por otra parte, refirase a la documentacin que vino con
su modem para saber cual init string usar.

Nombre del Dominio (Domain Name)


Ahora, usted necesitar entrar en el nombre del dominio de su ISP.
Este ser algo de forma "example.net", "slackware.com", o algo
parecido. (De acuerdo, no va a ser slackware.com definitivamente:)

46

DNS IP address (direccion DNS IP)


Su ISP le debe de haber proporcionado la direccin IP de su
nameserver. Si usted tiene esa direccin IP, escrbala. Si no la tiene,
regstrese con su ISP para ver qu nmero puede usar.

Authentication method (Mtodo de autenticacin)


Esta pregunta tambin podra llevarle un poco de trabajo de ensayo y
error. Usted necesita deducir si su ISP usa al CHAP, PAP, o ningun
mtodo para la autenticacin de usuario. La manera ms fcil de
deducir esto es llamar a su ISP. Sin embargo, si usted se consigue con
el inicio de sesin y paswords cuando se conecta, usted probablemente
deba escoger "SCRIPT". De todas maneras, consulte a su ISP para
saber cual usar.

47

PAP or CHAP
Si usted selecciona "CHAP" o "PAP" en la pantalla de mtodo de
autenticacin, se le pedir su nombre de usuario. Su ISP le debe de
haber asignado un username. Si ellos no hicieron, entonces sucede
algo muy extrao. Usted necesita contactarlos y conseguir su
username.
Despus usted debe ingresar la contrasea que le asigno su ISP en el
prximo cuadro de dialogo.
Chat script
Si usted selecciona la opcin "SCRIPTS" en la pantalla de mtodo de
autenticacin, se le presentara una discusin bastante larga sobre que
tipo de chat script es. Asegrese de leerlo porque hay se describe muy
bien todo. Bsicamente, usted tendr que decir que tipo de informacin
va a enviar su ISP y lo que su computadora debe enviar de vuelta.
Usted tendr entonces que anotar el texto que su computadora debe
recibir de su ISP, seguido de la informacin que debe devolver.
Done
Finalmente se le mostraran sus archivos de configuracin ppp
completos. Usted realmente no puede hacer nada sobre ellos, pero
usted puede comprobar todo por lo menos. Presione enter para guardar
todo y salir del pppsetup.
Esta pantalla contiene informacin sobre como iniciar una conexin
dialup y como abandonarla cuando este listo. La idea bsica es esta:
entre como root, ejecute ppp-go para empezar la conexin. Una vez
que le asignan un IP local y remoto, usted esta conectado en la
Internet. Cuando este listo, ejecute ppp-off y terminara la conexin.

48

Los Archivos de /etc


/etc/inetd.conf
En un sistema operativo de red central, no es raro que muchos servidores
estn ejecutndose al mismo tiempo. Comnmente para cada servicio que
esta disponible un programa debe estar revisando alrededor recibiendo
conexiones, con esto se puede obtener un sistema pesado ejecutando
muchos de estos servidores. Para reducir la sobrecarga, fue creado el inetd.
inetd es el "sper-servidor de Internet" el esta pendiente de recibir la
conexiones desde muchos sockets, y cundo un archivo entra inetd se
encarga de buscar el servidor apropiado para manejarlo. As se reducen
muchos servidores esperando a uno solo.
/etc/inetd.conf es el archivo encargado de la configuracin del inetd. Especifica
que servidor se ejecuta para cada conexin. La pagina del manual sobre el
inetd(8), contiene una informacin mas detallada , pero echmosle una
mirada a la lnea bsica de servicio:
ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -l -i -a

sta es la lnea para el servidor de ftp. Note primero el nombre del protocolo
"ftp", y por ultimo el comando que ejecuta para responder. En este caso, el
programa que se usa para contestar el intento de conexin esta en
/usr/sbin/tcpd; es un "wrapper"(envoltura) programa que proporciona algunas
opciones de seguridad bsica al servidor que envuelve. wu.ftpd es nuestro
servidor de ftp real, pero tcpd corre ese para nosotros. Mas informacin til
sobre el tcpd se encuentra en la seccin llamada tcp wrappers.
Como muchos archivos del sistema, las lneas en inetd.conf se comentan con
el carcter # ; usted puede agregar y quitar los servicios simplemente
comentando esas lneas y reiniciando el inetd.

/etc/resolv.conf
ste es el archivo que dice al resto del sistema dnde conseguir su
informacin de DNS. Se lista cualquier servidor de nombres que usted use
aqu, as como el nombre del dominio de su host. Aqu hay un ejemplo
resolv.conf (desde el laptop yo estoy escribiendo esto, ninja.tdn):
domain tdn
nameserver 192.168.1.1
search tdn. slackware.com

La primera lnea describe el nombre del dominio ninja; despus del hostname
en mi direccin. Lo segundo es el DNS de nuestra red local. Usted puede
tener tantos de estos como usted necesite; ellos se verificaran en el orden
desde el primero al ultimo siempre que un programa necesite buscar el
nombre del domino correspondiente a la direccin de IP.

49

La ltima lnea es un poco mas interesante. Describe cualquier nombre de


dominio que puede ser asumidos por mi sistema. Por ejemplo, suponga que
yo tengo las mquinas zuul.tdn y hejaz.slackware.com. Yo puedo hacer ping
zuul y ping hejaz para hacerle un ping a ellas , respectivamente. Esto se
debe a que el ping intenta primero agregar a ".tdn" al nombre zuul, y
encuentra la entrada que va con el. En el caso de" hejaz", prueba" hejaz.tdn"
primero. No hay ninguna coincidencia, por lo que prueba con
"hejaz.slacware.com"--bingo. Note que todos los dominios listados en la lnea
search necesitan terminar con un "." excepto el ultimo; si hay uno solo, este
ser el ultimo y no hay necesidad de ningn rastreo.

/etc/hosts
El archivo host permite un mtodo mas simple de bsqueda de dominios. Es
una lista de hostnames y su IPs correspondiente. Esto es util en una red
pequea donde los DNS no valen la pena, en casos cundo los DNS son
inestables, etc.y es usado por la maquina durante el arranque cuando ningn
nameservers esta disponible. Los mos podran parecerse a esto:
127.0.0.1 localhost
192.168.1.32 ninja.tdn ninja

La primera lnea se explica por si sola. La segunda, sin embargo , no. Usted
puede listar tantos nombres y aliases(alias) para una direccin como usted
guste, separados por un espacio. As que yo tengo "192.168.1.32" traducido a
"ninja.tdn" ( y viceversa), pero el alias "ninja" puede usarse tambin cuando
estoy demasiado cansado para escribir ".tdn"(que es la mayora del tiempo).

rc.inet1
/etc/rc.d/rc.inet1 es el archivo que prepara la "infraestructura" de la red--inicia los
dispositivos y configura las direcciones(adresses) y rutas(routes). El rc.onet1

que viene con Slackware esta muy bien documentado , as que estaramos
repitiendo lo mismo si nos detenemos aqu.

rc.inet2
El archivo /etc/rc.d/rc.inet2 esta all para encargarse de la otra parte. Prepara los
servicios y daemons y se ocupa de cualquier gestin de redes interesante.
Miremos un bloque de muestra:
# Start the NAMED/BIND name server:
if [ -f ${NET}/named ]; then
echo -n " named"
${NET}/named -u daemon -g daemon
fi

50

La lnea importante aqu es la 4, qu actualmente ejecuta el comando


named(8). El resto esta congelndose: "if" verifica para ver si los programas
estn nombrados(named) como se espera realmente, y la lnea echo reporta
que ese nombre se uso desde que se inicio el sistema. Usted encontrara que
la mayora de los servidores arranca desde rc.inet2 ejecutndose en bloques
como este; simplemente prueba si existe alguna razn obvia para que ellos se
estn ejecutando ,y luego los comandos para que se inicien por si mismo. De
nuevo, rc.inet2 , esta muy bien documentado ; revselo.

NFS (Sistema de Archivos de Red)


El Sistema de Archivo de Red se usa, obviamente, para compartir archivos
entre las mquinas en una red. Lo bueno del NFS es que esta diseado para
que una maquina pueda montar archivos compartidos de la otra de forma
transparente, y los trata como archivos locales.
Sin embargo , un par de cosas tienen que pasar para que esto suceda.
Primero los servicios apropiados tienen que estar corriendo en la mquina del
servidor: stos son los portmap(8), nfsd(8), y mountd(8). Lo segundo es que
el servidor tiene explcitamente que "exportar" un arbol del filesystem al
cliente, lo que se logra mediante el archivo exports(5) en /etc.
La primera parte de la ecuacin se logra instalando el paquete tcpip1.tgz (de
la serie de software N) y permitiendo a rc.inet2 hacer su trabajo. /etc/exports es
la parte mas divertida.
Suponga que yo tengo un directorio de imgenes(var/media/images) en
battlecat.tdn que yo quiero montar en ninja.tdn. En battlecat, necesitare una
lnea en /etc/exports parecida a esta:
/var/media/images ninja.tdn(ro)

Entonces en ninja, yo simplemente coloco:


# mount -t nfs battlecat.tdn:/var/media/images /mnt

para montar el directorio de las imgenes en /mnt localmente.


Desgraciadamente, yo me he prohibido la escritura en el directorio
compartido-- el pedazo de lnea "(ro)" en battlecat etc/exports es una opcin
que significa "solo lectura" (read only). Cualquier otra opcin que necesite
despus del nombre del cliente, debe escribirse dentro de parntesis, y
separadas por coma.. Por ejemplo:
/var/media/images ninja.tdn(rw,no_root_squash)

La "rw" es obviamente la opcin "read-write" (lectura-escritura)--sujeta al


grupo y usuario que indica (vea la seccin export(5) de la pagina del manual
para una explicacin), se le permite a los usuarios de ninja escribir en el
directorio compartido. No me gusta mucho la explicadera, por lo que pienso
dejar a la pagina del manual explicarle eso a usted; si usted planea usar
mucho NFS , export(5) ser su mejor amigo.
51

tcp_wrappers
tcp_wrappers es un servicio bsico para prevenir ( y explcitamente permitir) el
acceso a los servicios desde los host especificados. En una nutshell, funciona
as:
inetd (el sper-servidor de Internet) ejecuta muchos servidores, muchos de
los cuales son "wrapped"(ajustados) por tcpd. En otras palabras, tcpd es
realmente quien ejecuta estos servidores, pero el inetd no sabe eso. tcpd
logea los intentos de conexin y entonces chequea los archivos /etc/host.allow y
etc/host.deny para ver cuales conexiones debe permitirse.
Las reglas contenidas en estos archivos pueden ser algo complejas, pero
supongamos, pyramid.tdn esta siendo muy molesto y no deja en paz al pobre
mojo.tdn. ; mojo.tdn podria escribir una lnea en /etc/host deny parecida a esta:
ALL: pyramid.tdn

Esta lnea debe ser bastante clara: impide a pyramid usar todos los servicios
en mojo que estan protegidos por tcpd. Si estoy siendo molestado por un
dominio entero adems de pyramid, yo podra crear esta lnea:
ALL: pyramid.tdn, .annoying.domain

Pero espera! Mi amigo Hobbes esta entrando desde una maquina en


.annonying.domain , pero yo quiero que el pueda entrar(pero no el resto de
sus amigos molestos). Eso es bastante simple. Dejo como esta a host.deny , y
estas lneas en hosts.allow dejaran entrar a Hobbes:
ALL: hobbes.annoying.domain

Para mucho ms detalle, vea tcpd(8), hosts_access(5), y hosts_options(5).


El sistema de tcp_wrappers es mucho ms flexible que esto, y merece la pena
revisarlo bien.

Resumen
En este captulo, usted aprendi a configurar su sistema para atarlo a una red,
cmo cambiar la configuracin archiva, y algunos principios de seguridad
bsicos. Adems, usted aprendi lo que es el NFS Sistema de Archivos de
Red y cmo hacerlo trabajar en su sistema. Hacer su sistema parte de una red
le permite acceder a toda clase de recursos como correo, noticias y websites.
Vea Captulo 13 para la informacin sobre cmo usar algunos programas de
la red bsicos.

52

Capitulo 6. El sistema X Window


Contenido
xf86config
XF86Setup
Archivos de configuracin de sesin
Servidores y gestores de ventana
Seleccionando un escritorio
Exportando Pantallas
Resumen
El X window system es el GUI standard para todas las plataformas UNIX,
incluyendo Linux. Diferente a Windows y MacOS , en Linux y Unix el GUI esta
separado del Kernel del sistema operativo principal. Esto le otorga estabilidad
al sistema; si el GUI falla , no cuelga a el sistema entero.
El problema con X es que ha sido tradicionalmente difcil de configurar para un
sistema. Sin embargo, Slackware 7 introduce un modo de configurar X que
utiliza los drivers del framebuffer. Esto significa que usted no tiene que pasar
por los procedimientos descritos en la seccin llamada xf86config y la seccin
llamada XF86Setup. Los framebuffer trabajan tambin en cualquier tarjeta
compatible VESA 2.0. Esto significa que cualquier tarjeta de video moderna
trabajar bajo X. Sin embargo , el framebuffer es notoriamente mas lento que
utilizar una configuracin adecuada a su sistema.
Si usted decide usar los framebuffer, debe instalar el paquete xxfb.tgz de la
serie de software X. Usted tiene que escoger una resolucin de consola
durante el proceso de instalacin. La opcin recomendada para X es
probablemente la mejor para la mayora de las personas.
Si usted escoge configurar X para su sistema, usted necesitar seguir las
instrucciones en la seccin llam xf86config o la seccin llamadas XF86Setup.
La primera seccin explica como usar el xf86config(1), un programa basado
en lneas de comando para configurar X. La segunda seccin describe
XF86Setup(1), una versin grfica del programa de la configuracin.

xf86config
El xf86config es uno de los dos programas que pueden usarse para
configurar X en su sistema. La idea bsica es simple: usted se encontrara con
una serie de preguntas y respuestas de opcin mltiple. Escoja la respuesta
que mejor se adapte a su sistema. Despus de proceder a travs del
programa entero, se escribir el archivo /etc/XF86Config(5) y usted estar listo
usar X. Si usted se equivoca en algn punto, usted tendr que matar el
programa que usa control-c y volver a empezar del principio.
Ayuda conocer lo mas posible a su tarjeta de video y monitor antes de
comenzar a usar el xf86config. Usted puede conseguir la informacin sobre su
tarjeta de video usando el programa SuperProbe:
53

# SuperProbe

Este le dar una advertencia sobre las posibilidades de colgar su sistema, si


esto le asusta salga del programa presionando control-c antes de que
terminen los 5 seg. de advertencia. Por otra parte, usted conseguir alguna
informacin sobre su configuracin de video:
First video: Super-VGA
Chipset: ATI 264GT3 (3D Rage Pro) (Port Probed)
Memory: 4096 Kbytes
RAMDAC: ATI Mach64 integrated 15/16/24/32-bit
DAC w/ clock
(with 8-bit wide lookup tables)
(programmable for 6/8-bit wide lookup tables)
Attached graphics coprocessor:
Chipset: ATI Mach64
Memory: 4096 Kbytes

As es como luce la informacin sobre una tarjeta de video ATI Rage Pro :
Escriba la informacin sobre su tarjeta, o cmbiese a otro terminal (usando las
teclas de funcin y alt) y ejecute xf86config desde all. Usted necesitara esta
informacin despus. Debe ejecutar xf86config como root, ya que el crea los
archivos y hace los links simblicos en lugares donde solo puede estar root:
# xf86config

Una vez que ejecuta xf86config , se le presentara un modo de pantalla


completa que le dice lo que va a hacer. Recuerde, hay ninguna manera de
regresar a la pantalla anterior si usted comete un error, as que escoja
cuidadosamente. Por otra parte, usted podra tener que hacer esto varias
veces. Presione enter como se le indica.
Mouse protocol(Protocolo del Ratn)

54

Escoja el tipo de ratn que usted tiene de la lista. Actualmente, la mayora de


los ratones son PS/2 o Microsoft Intellimouse. Los ratones ms viejos
requerirn uno de los otros tipos listado probablemente.
Emulate3Buttons( Emulacin de 3 botones)

Si su ratn tiene slo dos botones , usted puede escoger emular un tercer
botn. Pulsando el botn de la izquierda y el de la derecha junto se
interpretara como el tercer botn del mouse. Muchos programas utilizan el
tercer botn, se recomienda habilitarlo. Si usted tiene un mouse de tres
botones, esto no har nada.
Mouse device name(Nombre del dispositivo del raton)

55

El valor predeterminado /dev/mouse normalmente estar bien. Sin embargo, si


usted tiene su ratn conectado en algn puerto extrao, usted podra
necesitar cambiar esto. Para la mayora de los ratones serie y ratones PS/2, el
valor predeterminado est bien.
XKEYBOARD extensin

Probablemente querr usar las extensiones de teclado de X. Si no hace esto


su teclas backspace y delete se comportaran de forma extraa. Escogiendo
las extensiones estas teclas de su teclado se comportara de forma correcta.
Bindings for alt keys
Si usted quiere usar caracteres de lenguajes diferentes , tiene que habilitar las
bindings de las teclas alt. Si usted slo va a estar tecleando en ingls, usted
no necesita habilitar estas bindings..

56

Horizontal sync range (rango de la sincronizacin horizontal)

sta es la primera de las preguntas relacionadas al monitor. Es importante


que usted escoja aqu sabiamente. No escoja un rango que este fuera de las
especificaciones de su monitor. Esto no es muy importante en los monitores
mas nuevos, ya que ellos no intentan hacer nada cuando esta fuera de sus
especificaciones. sin embargo podran daarse los monitores mas viejos.
Cuando dude, escoja un rango conservador.
Tener la documentacin de su monitor seria algo muy bueno para responder
las siguientes preguntas. Para la mayora de los monitores nuevos, usted
puede escoger 31.5-47.5 o 31.5-57.0 probablemente. Aquellos de ustedes
que cuente con un monitor de primera lnea pueden escoger un rango mas
grande. O , usted puede escribir su propio rango de sincronizacin horizontal
si usted no ve ninguno que encaje con el suyo.

57

Vertical sync range (Rango de sincronizacion Vertical)

Una vez ms, usted necesitar saber las especificaciones de su monitorr para
contestar esta pregunta. Cuando tenga dudas, vaya por un rango estrecho.
Una opcin segura probablemente sera 50-90 o 50-100. Si usted no ve uno
que se adapte a su monitorr, usted puede escoger escribir su propio rango.
Video card database(Base de datos de tarjetas de video)

La prxima larga seccin de configuracin son los tratos de su tarjeta de video


con X. La documentacin de su tarjeta y la informacin de SuperProbe sern
tiles ahora. Usted tendr que buscar a travez de la base de datos de tarjetas,
seleccionar su tarjeta y pulsar "y". Usando enter pasara de esta pagina a la
siguiente.
58

Hay mas de 800 tarjetas en la base de datos. La columna izquierda contiene


un nmero para cada tarjeta y el nombre de la tarjeta. La columna derecha
contiene el chipset para esa tarjeta. Siga usando enter hasta que encuentre
su tarjeta de video en la lista. Cuando la consiga escriba el numero y presione
enter. Si usted no sabe que qu tipo de tarjeta de video usted tiene, hay unas
opciones. Primero, usted podra mira la lnea "Chipset" de SuperProbe y
buscar la tarjeta que coincide con ese chipset en la base de datos. O, usted
podra usar un tipo de tarjeta SVGA genrico. Muchas tarjetas que no tienen
su propio servidor son soportadas por el servidor SVGA, sta pudiera ser
una opcin segura.
Despus de escoger una tarjeta, le dar un poco ms informacin. Siguiendo
el ejemplo ATI Rage Pro anterior, dara este tipo de informacin:
Your selected card definition:
Identifier: ATI Mach64
Chipset: ATI-Mach64
Server: XF86_Mach64
Do NOT probe clocks or use any Clocks line.

A estas alturas, usted debe verificar y asegurarse que usted instal el paquete
del servidor. El servidor de XF86_Mach64 est en el paquete de xma64.tgz.
Asegrese de instalar el paquete del servidor correcto, o X no podr correr.
Which server to run?(Ejecutar cual servidor?)

Esta prxima pregunta presenta varios servidores que usted puede usar. Si
usted ha seleccionado su tarjeta de video correctamente, usted puede
simplemente pulsar enter. Eso le dir a X que use el servidor que la tarjeta
especific. Por otra parte, usted puede escoger para usar el servidor
Mono(XF86_Mono server), el servidor de VGA16(XF86_ VGA16 server), el
59

servidor SVGA(XF86_ SVGA server), o un servidor acelerado. La mejor


opcin es usar el servidor que la tarjeta especific.
Setting the symbolic link(Configurando el link simbolico)

Seleccione "y" para configurar el link simblico. Esto creara el enlace al


servidor X adecuado.
Video memory (Memoria de video)

Seleccione la cantidad de memoria que su tarjeta tiene. SuperProbe puede


usarse para dar esta informacin . Si usted tiene algo diferente a las opciones
, usted puede seleccionar "Other" y escribir una cantidad diferente. Asegrese
que usted especifica la cantidad de memoria en kilobytes(Kb).

60

Identification strings
Se le pedira insertar tres o mas identification strings. stos se aplican a su
tarjeta de video. Como con los monitor strings, es mas seguro presionar enter
para los tres , a menos que usted quiere nombrar su tarjeta de video.
RAMDAC
Usted solo necesita seleccionar un RAMDAC si esta usando S3, AGX o
servidores W32. SuperProbe le dir qu tipo de chip RAMDAC est presente
en su tarjeta de video. Busque en la lista hasta que encuentre el chip correcto,
luego introduzca el numero correspondiente. Si usted no est usando S3,
AGX, o servidores de W32, entre " q" para continuar .
Clockchip setting

Si su tarjeta tiene un clockchip programable, usted tendra que seleccionar uno


de esta prxima lista. Tenga presente que que la mayora de las tarjetas no
tiene un clockchip programable, usted puede estar mas seguro simplemente
pulsando enter. SuperProbe debe informar si su tarjeta tiene un clockchip.
Clocks line
Las prximas pantallas de texto muestran lo que es una clock line. Como l
explica, usted no querr uno en la mayora de las configuraciones modernas.
Le preguntara entonces, si debe buscar un clock(reloj).. Tambin le dir si la
tarjeta necesita ser sondeada o no. En el caso de la tarjeta de ATI, xf86config
dira:
The card definition says to NOT probe clocks.

Si dice algo as, escoge "n" a la pregunta de buscar en la tarjeta los relojes.
Las tarjetas grficas muy viejas necesitarn ser sondeadas. xf86config le
dirn lo que necesita hacer.

61

Video modes

Ahora es tiempo para seleccionar los modos videos que su servidor de X


usar. Usted vera cuatro profundidades de color diferentes (color depth) 8bpp
,24bpp y 32bpp. Cada uno tendr una lista de los modos de video que pueden
ejecutarse bajo esa profundidad de color. Cuando usted pone en marcha X,
entrar en una profundidad de color predefinida y correr en la primera
resolucin listada para esa profundidad de color. Si le gustara ejecutar X en
una resolucin diferente, ahora es el momento de hacer eso.
Si la clasificacin de los modos de video est bien, usted puede seleccionar "
OK" y seguir adelante con el proceso de la configuracin. Si no, seleccione la
profundidad de color que le gustara cambiar. Por ejemplo, suponga usted se
le presentan las siguientes opciones:
"640x480" "800x600" "1024x768" "1280x1024" for 8bpp
"640x480" "800x600" "1024x768" "1280x1024" for 16bpp
"640x480" "800x600" "1024x768" "1280x1024" for 24bpp
"640x480" "800x600" "1024x768" for 32bpp

Si desea arrancar X en una resolucin diferente , tiene que seleccionar


primero una profundidad de color para cambiar. siga las direcciones dadas por
xf86config. Tendr que escribir los nmeros correspondientes a las
resoluciones. Si usted quisiera invertir el orden de las resoluciones
simplemente, puede colocar lo siguiente
Which modes? 5432

Esto tambin le permite borrar resoluciones. Si su tarjeta de video no puede


correr al 1280x1024, no hay ninguna razn para que el haga la prueba. Usted
podra quitar esa lnea colocando los siguientes dgitos:
Which modes? 432

Despus de seleccionar los modo a esa profundidad de color, se le


preguntar si le gustara una pantalla virtual ms grande que la pantalla
fsica. Una pantalla virtual es una pantalla que es ms grande que el monitor
real. Cuando usted mueve el ratn en la pantalla virtual, desplazar un pedazo
antes de llegar al borde. Esto le permite encajar ms ventanas en su monitor.
62

Sin embargo, como usted no podr ver todo en seguida, la pantalla virtual
puede ser un poco molesta. Todava es una cosa interesante para jugar , por
lo que usted podra querer probarlo.
Entonces lo envaran de vuelta a los modos de video. Alterando los modos de
video para la profundidad 24bpp, quedara as:
"640x480" "800x600" "1024x768" "1280x1024" for 8bpp
"640x480" "800x600" "1024x768" "1280x1024" for 16bpp
"1280x1024" "1024x768" "800x600" "640x480" for 24bpp
"640x480" "800x600" "1024x768" for 32bpp

Contine alterando los modos videos hasta que usted est satisfecho con
ellos. Cuando usted termine con esta seccin seleccione "OK" para continuar.
Write the config file
A estas alturas, la configuracin de X est completa. xf86config preguntara si
debe escribir los archivos config en el directorio /etc/XF86Config. Si desea
ejecutar el servidor X usted debe contestar "y" a esa pregunta, por que all es
donde el servidor X busca su archivo de configuracin.
Asumiendo que usted contest todas las preguntas correctamente y que tiene
el paquete X server instalado, usted poder iniciar X as:
$ startx

Si usted ha instalado KDE o GNOME, debera iniciar en este momento. Por


otra parte, usted podra querer ejecutar el xwmconfig y seleccionar el gestor
de ventana que usted quiere usar por defecto. Se explicaran los gerentes de
ventana mas adelante en este capitulo. xwmconfig slo prepara el gestor de
ventanas predefinido por el usuario. Si usted tiene varios usuarios en su
sistema, cada uno necesitar seleccionar a su propio gestor de ventanas.
Hay algunas teclas especiales que podran ser tiles cuando esta usando X. si
usted necesita salirse en algn momento y no puede cerrarlo apropiadamente
, esta es la combinacin para una salida forzada. control-alt-backspace matara
X y lo mandara de vuelta a la linea de comando. Usted puede moverse hacia
otra lnea de comando mientras esta usando X pulsando control-alt-y la tecla de
funcion. parecido a como se hace desde la consola. la sesin de X se localiza
en el terminal 7, as que usted puede regresar a X con alt-F7. Finalmente,
usted puede cambiar los modos videos mientras X esta corriendo pulsando
cantrol-alt-numeric keypad + esto lo llevara hacia una resolucin mayor , en
cambio si pulsa las teclas control-alt-numeric keypad - lo llevara hacia la prxima
resolucin menor.

XF86Setup
La otra manera de configurar X es usar XF86Setup, un programa de
configuracin grafico que viene como parte del paquete xset.tgz. Usted tambin
necesitar instalar el paquete xvg16.tgz.
Para ejecutar XF86Setup, entre como root y escriba:
# XF86Setup

Si usted ya tiene el archivo /etc/XF86Setup(porque usted ya haba configurado X


antes), se le preguntara si quiere usar los valores existentes en XF86Config
como predeterminados. Despus, cambiara al modo grafico.

63

Figura 6-1. La pantalla inicial del XF86Setup.

XF86Setup es muy similar al xf86config. Hace el mismo tipo de preguntas,


pero las presenta en un entorno grafico. Si usted esta preguntndose que
significa cada pregunta, refirase a la seccin anterior para informacin.
XF86Setup tiene mucha ayuda tambin, por lo que usted no debe tener
dificultad en ejecutarlo.

Archivos de Configuracin de sesin


xinitrc and ~/.xinitrc
xinit(1) es el programa que realmente arranca a X; es llamado por startx(1),
por lo que usted no lo pudo haber notado (y probablemente no necesita
saberlo). Este archivo de configuracin, sin embargo , determina que
programa se ejecuta(incluyendo sobre todo el gestor de ventana) cuando
inicia X. xinit chequea primero su directorio home en busca del archivo .xinitrc .
Si el archivo se encuentra, se ejecuta, si no utiliza el archivo predeterminado
ubicado en /var/X11R6/lib/xinit/xinitrc. Este es un ejemplo simple de un archivo
.xinit:
#!/bin/sh
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $
64

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f $userresources ]; then
xrdb -merge $userresources
fi
if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi
# start some nice programs
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login

Todos esos "if" estn all para unir varios tipos de configuracin desde otros
archivos. Bien nosotros explicaremos .Xresources ahora, pero .Xmodmap
nosotros vamos a dejarlo as. La parte interesante de el archivo es el fin con
que se ejecutan , los programas. Esta sesin de X empezara con el gestor de
ventanas twm(1) , un reloj, y tres terminales. Fjese en exec antes del ultimo
xterm. Lo que esto hace es remplazar la shell que esta corriendo
actualmente(la que esta ejecutando el script xinitrc(1)) con el comando
xterm(1). Cuando el usuario cierre ese xterm, la sesin X terminara.
Para personalizar su inicio de X, copie el valor predeterminado desde
/var/X11R6/lib/xinit a ~/.xinitrc y editelo, remplzando todas aquellas lneas del
programa con las lneas que usted quiera. El fin de mo simplemente es:
# Start the window manager:
exec startkde

Note that there are several xinitrc.* files in /var/X11R6/lib/xinit that correspond to
various window managers and GUIs. You can use any of those, if you like.

.Xresources y .Xdefaults
Muchos progrmas en X utilizan un sistema llamado X Resource Database
(Base de Datos de Recursos) para encontrar las preferencias del usuario
(fuentes , colores ,etc.) Esta base de datos se mantiene a travez del programa
xrdb(1) que usted tal vez no necesite ejecutar nunca. En Slackware se
ejecuta desde el xinitrc. El archivo xinitrc le dice a xrdb que ~ /. Xresources es la
fuente para las opciones. xrdb tambin cargara ~ /. Xdefaults , por lo tanto
65

cualquiera de los nombres funcionara. Un archivo .Xresources pequeo se


parece a esto:
xterm*background: black
xterm*foreground: gray
xterm*scrollBar: true
xterm*font: -*-lucidatypewriter-*-r-*-*-15-*-*-*-*-*-*-*

Estas cuatro lneas especifican la informacin de configuracin para el


programa xterm. Un recurso de X se lista de esta forma:
program*option: setting/value

Asi que, la muestra de .Xresources anterior debe ser autoexplicativa. No se


enrede por el contenido de la linea "font" ; las fuentes siempre se nombran de
esta forma en X.

Servidores y Gestores de Ventana


El X Window System fue diseado originalmente para trabajar a travs de una
Red. Un servidor grande seria realmente el que correra el programa X, pero
se desplegara en las otras maquinas clientes en cualquier otro lugar de la
red. La habilidad de desplegar los programas remotamente puede ser una
gran ventaja. La desventaja principal de este concepto de la gestin a travs
de redes es ;que es menos seguro que ejecutar la aplicacin desde la
maquina local , y tomara un ancho de banda muy grande para hacerlo. Esto
se discute despus en la seccin llamada Exportando pantallas.
Incluso cuando usted esta ejecutando X en su propia mquina, usted todava
est basndose en el modelo cliente-servidor. El servidor es la tarjeta de video
en la porcin especifica. Cuando usted configur X y le dijo que qu tipo de
tarjeta de video usted tena, estaba dicindole qu programa servidor usar.
La porcin del cliente es todos los otros programas que usted ejecuta bajo X.
Un cliente especial, llamado gestor de ventanas, es responsable de la
apariencia de su sesin X . Los gestores de Ventanas se explican con detalle
mas adelante.
El trabajo de un gestor de ventanas es dibujar ventanas con programas dentro
de la pantalla, as como ocuparse del ratn y del teclado. Los primeros
gestores de ventanas hicieron simplemente esto y nada mas. Los gestores de
ventanas actuales son programas mucho ms complicados y son
personalizables de casi cualquier manera imaginable. Ellos tienen toda clase
de opciones que permiten a su escritorio lucir diferente al de nadie ms.
Contar con varios gestores de ventanas realmente separa a Linux de
Windows en el escritorio. Bajo Windows, usted solo tiene un sistema de
ventanas bsico. Bajo Linux, usted puede ejecutar uno de muchos gestores
de ventanas diferentes, cada uno con un look diferente y rasgos diferentes.
Algunas personas llaman a esto una debilidad, porque no hay ningn look
consistente. Sin embargo, la mayora de los usuarios de Linux llaman a esto
una ventaja porque usted puede configurar su sistema de la forma que usted
quiera.

66

Seleccionado un Escritorio
Durante aos, Unix se us casi exclusivamente como sistema operativo para
servidores, con la excepcin de puestos de trabajo profesionales de alta
potencia. Era probable que slo los tcnicamente inclinados usramos un
Unix-como sistema operativo, y la interfaz de usuario es reflejo de este
hecho. El GUIs(Interfaz grafica de usuario) tenda a ser solo esqueletos,
diseados para ejecutar aplicaciones necesariamente graficas como los
programas CAD y simuladores de imgenes. La mayora de los archivos y el
manejo del sistema se dirigan en la lnea de comando. Varios
vendedores(Sun Microsystems ,Silicon Graphics , etc) estaban vendiendo
instalaciones de workstations en un intento por unificar el look , pero la
variedad de herramientas GUI usadas por los diseadores llevo a la disolucin
de la uniformidad de escritorios. La barra de desplazamiento poda no lucir
igual en dos programas diferentes. Los mens podan aparecer en lugares
diferentes. Programas que tenan botones y checkboxs distintas. Los colores
eran codificados de forma diferente en cada barra de herramientas. Mientras
los usuarios fueran principalmente profesionales tcnicos, a ninguno de estos
les importaba mucho.
Con la salida de free Unix como sistema operativo y el creciente numero de
aplicaciones graficas, X ha ganado una gran cantidad de usuarios. La
mayora de los usuarios, claro, est acostumbrado al look proporcionado por
Windows de Microsoft o el MacOS de Apple; la falta de tal consistencia en las
aplicaciones basadas en X se volvi una barrera para lograr una mayor
aceptacin. Como respuesta a esto, se han emprendido dos proyectos Open
Source: The K Desktop Enviroment(El ambiente de escritorio K) o KDE, y el
GNU Network Object Model Enviroment, conocido como GNOME. Cada uno
tiene una variedad ancha de aplicaciones, desde taskbars y administradores
de archivos hasta juegos y aplicaciones de Oficina ,escrito con las mismas
herramientas GUI y hermticamente integrado para proporcionar un escritorio
consistente y uniforme.
Las diferencias en KDE y GNOME son generalmente bastante sutiles. Ellos
lucen diferentes el uno del otro, porque cada uno utiliza un juego de
herramientas GUI diferente. KDE se basa en la tecnologa QT de Troll Tech
AS, mientras que GNOME usa GTK, un kit de herramientas diseado
originalmente para el GNU Image Manipulation Program (o GIMP). Como
proyectos separados, KDE y GNOME tienen cada uno sus propios
diseadores y programadores , con diferentes filosofas y etilos de
programacin. Sin embargo , el resultado en cada caso, es un ambiente de
escritorio hermticamente integrado y una coleccin de aplicaciones.
La funcionalidad, utilidad, y hermosura pura tanto de KDE y su rival GNOME
es algo que no esta disponible en ningn otro sistema operativo.
La mejor parte, sin embargo , es que estos escritorios son gratis. Esto significa
usted puede tener cualquiera o ambos (s, al mismo tiempo). La opcin es
suya.
Adems del GNOME y KDE, Slackware incluye una coleccin grande de
gestores de ventana. Algunos estn diseados para emular otros sistemas
operativos, otros para la personalizacin , otros para la velocidad. Hay una
67

variedad realmente. Claro usted puede instalar tantos como usted quiera,
juegue con todos ellos, y decida cual es el que le gusta mas.
Para hacer la seleccin del escritorio fcil, Slackware incluye tambin un
programa llamado xwmconfig que puede usarse para seleccionar un
escritorio o gestor de ventana. Se ejecuta de esta forma:
$ xwmconfig

Figura 6-2. el program xwmconfig de Slackware.

Usted encontrara una lista de todos los escritorios y gestores de ventana


instalados. Simplemente seleccione el que usted quiere de la lista. Cada
usuario en su sistema necesitar ejecutar este programa, ya que los usuarios
diferentes pueden usar escritorios diferentes, y no todos querrn usar el valor
predeterminado que usted seleccion en la instalacin.
Entonces solo ejecute X, y esta listo:
$ startx

Exportando Pantallas
Como mencionamos anteriormente , es posible ejecutar X en una
computadora y exporta la pantalla a otra. Esto requiere de un ancho de banda
intenso , por lo que usted no querr hacer esto mediante una conexin por
modem o entre distancias muy largas. Adicionalmente hay consideraciones de
seguridad: exportar una pantalla no es algo muy seguro de hacer, ya que
usted estar permitiendo a toda la red mirar lo que usted esta haciendo.
Todava, puede ser muy til en una red local.
Una cosa importante para notar aqu es el uso de las palabras "cliente" y
"servidor". Cuando exporta una pantalla , usted puede confundirse acerca de
lo que es un cliente y lo que es un servidor. Nosotros nos referimos a la
mquina que realmente ejecuta el programa X y enva la informacin de la
pantalla como "servidor". La mquina que usted usa para mostrar el
programa remoto se llama " cliente." Cuando planeamos el diseo de X , esto
se utiliza. El programa que muestra las cosas se llama "servidor", mientras
que donde se ejecutan los programas se llama "cliente". No es muy terrible
confundirse , pero tngalo en cuenta.
68

Para este ejemplo, nosotros estaremos haciendo uso de dos computadoras:


golf que es un servidor bastante poderoso que esta debajo de un escritorio en
un cuarto atestado de cosas. Tiene mucha RAM y un buen procesador.
Adems tiene muchos programas X , pero ningn monitor. En el otro lado del
cuarto se encuentra couch, una maquina vieja con poco RAM y un disco
pequeo. Es demasiado dbil para ejecutar programas de recursos intensos
como el Netsacpe. couch tiene dos ventajas, a pesar de todo: tiene monitor , y
esta justo al lado de la cama por lo que usted no tiene que levantarse para
usarla ni siquiera. Con suerte, usted podra usar Netsacpe sin bajarse de la
cama. Exportar es la respuesta.
Primero, entre en couch y ejecute X. Luego ejecute su terminal preferido
(xterm , rxvt ,eterm, o cualquier otro.) El primer paso para mostrar programas
X de forma remota es configurar la maquina cliente para que permita que otra
maquinas se muestren. Esta usa el programa xhost para controlar el acceso,
Si usted esta dentro de una red interna segura, probablemente no le importe
quien puede mostrar programas en su computadora. En este caso, usted
permitir simplemente que cualquier maquina de red se muestre:
couch$ xhost +
access control disabled, clients can connect from any host

Por otro lado, usted podra querer hacer esto usando mquinas que estn en
una red insegura (Internet, una red de la universidad, o cualquiera que no sea
controlada por usted). Usted no quiere conectar a nadie simplemente. xhost
le permite ser selectivo sobre quin puede desplegar:
couch$ xhost + golf.foc
golf.foc being added to access control list

Ahora, slo golf.foc (el servidor mencionado antes) puede desplegar


programas en couch. Usted puede ver quin tiene acceso para desplegar los
programas ejecutando xhost sin los argumentos:
couch$ xhost
access control enabled, only authorized clients can connect
INET:golf.foc
INET:localhost
INET:couch.foc
LOCAL:

Esto es todo lo que tiene que hacer para terminar de configurar el cliente: The
next step is to set up the server so that it knows to display programs
somewhere other than the monitor. Desde que el servidor no tiene monitor (y
por consiguiente no puede ejecutar X),necesitar saber dnde mostrarse.
Prepara el servidor no es muy difcil. Despus de conectarse, usted necesita
modificar la variable $DISPLAY. Por defecto, probablemente no esta
configurara a nadie. Usted necesita configurar la variable $DISPLAY con el
valor del host remoto, mas el numero que representa la sesin de X que
69

quiere mostrar. Usted casi siempre tendr una sola sesin de X ejecutndose
, por lo que tratar con esa variable no le traer problemas.
As es como se debe configurar la variable $DISPLAY que en nuestro ejemplo
usa Bash como shell. Otras shells usaran sintaxis diferentes, pero el valor
debe ser el mismo.
golf$ export DISPLAY=couch.foc:0.0

Esto es todo lo que tiene que preparar en la parte del servidor. Ahora usted
solo necesita estar conectado en el servidor y ejecutar los programas X desde
all. Todo lo que sale por pantalla en el programa se enviara por red a la
maquina del cliente aun cuando se esta ejecutando el programa en otra
computadora en la otra habitacin.
golf$ netscape &

Esto ejecutara netscape en el servidor, pero desde que la variable DISPLAY


fue configurada para couch todo es mostrado all. Usted no tiene que
levantarse para ejecutar esos grandes programas X en su equipo viejo. Una
nota importante sobre esto: la mquina servidor tendr que tener todas las
bibliotecas de X y otros archivos de apoyo necesitados para ejecutar el
programa. Sin embargo, usted no necesitar un X server o un archivo
/etc/XF86Config , despus de que nada se este mostrando en el servidor.
Mas adelante , usted podra querer desactivar la exportacin quitando al
servidor de la lista de control de acceso:
couch$ xhost - golf.foc
golf.foc being removed from access control list
couch$

Usted puede ver que esta es una gran manera de compartir recursos
informaticos. Pero tenga cuidado, usted puede ser el host de muchos
programas X para muchas computadoras remotas sin siquiera saberlo.

Resumen
En este captulo, usted aprendi a configurar el X Window System utilizando
xf86config y XF86Setup. Usted tambin debe saber lo que es un ambiente de
escritorio y un gestor de ventanas, y cmo cambiar entre las varias opciones.
Usted debe poder exportar su sesin de X a otro computador. A estas alturas,
usted debe poner en marcha un ambiente grfico.

70

Chapitulo 7. Booteando
Contenido
LILO
LOADLIN
Booteo Dual
Resumen
El proceso de arranque de su sistema Linux a veces puede ser fcil y a veces
puede ser difcil. Muchos usuarios instalan Slackware en su computadora y
se es. Ellos apenas lo encienden y est listo para usar. Otros, sin embargo,
deben usar otro sistema operativo para ciertas tareas, por lo que ellos
necesitan ambos sistemas operativos disponibles en la mquina.
Esta seccin explica como usar LILO y Loadlin , los dos booters(Iniciadores)
incluidos en Slackware. Tambin explica algunos tipos de booteo dual tpicos
y como usted puede configurarlos.

LILO
El Cargador de Linux, o LILO(Linux Loader), es el booter ms popular en los
sistemas Linux. Es realmente configurable y puede usarse para arrancar otros
sistemas operativos fcilmente.
Slackware Linux viene con una utilidad de configuracin basada en mens
llamada liloconfig. Este programa se ejecuta durante el proceso de
instalacin, pero usted puede ejecutarlo despus escribiendo liloconfig en el
prompt.
LILO lee su configuracin del archivo /etc/lilo.conf(5). No lo lee cada vez que
inicia, pero en cambio lo lee cada vez que se instala LILO. LILO debe
reinstalarse en el sector boot cada vez que usted haga un cambio en la
configuracin. liloconfig le ayudarn a construir el archivo de configuracin
para que usted pueda instalar LILO en su sistema. Si usted prefiere revisar
/etc/lilo.conf a mano, simplemente reinstale LILO escribiendo sbin/lilo en el
prompt.
Cuando usted ejecuta liloconfig , aparecer primero:
Figura 7-1. La pantalla inicial del liloconfig.

71

Si sta es su primera configurando LILO, usted debe escoger "simple." Por


otro lado, usted encontrara que "expert" es mas rapido si usted esta
familiarizado con Linux y LILO. Seleccionando "simple" empezar la
configuracin de LILO.
Si el kernel frame buffer support esta compilado en su sitema, liloconfig le
preguntara que resolucin de video desea utilizar. Esta es la misma resolucin
que utiliza el XFree86 frame buffer server. Si usted no quiere ejecutar la
consola en un modo de video especial, seleccione standard 80x25 que esta
utilizando.
Figura 7-2. Liloconfig preguntando que modo de video usara el
framebuffer.

La prxima parte de la configuracin de LILO es seleccionar en que parte


desea usted instalarlo. ste probablemente es el paso ms importante. La
lista que sigue de explica los lugares de instalacin:
Root
Esta opcin instala LILO al principio de su particin raz de Linux. sta
es la opcin ms segura si usted tiene otros sistemas operativos en su
computadora. Asegura que cualquier otro booters no se sobrescribe. La
desventaja es que LILO solo arrancara desde all si su unidad Linux es
la primera unidad en su sistema.
Floppy
Este mtodo est aun ms seguro que el anterior. Crea un disco de
inicio que usted puede usar para arrancar su sistema Linux. Esto
guarda el booter completamente fuera del disco duro, por lo que usted
slo podr arrancar desde el Disquete cuando quiera usar Slackware.
MBR
Usted querr usar este mtodo si Slackware es el nico sistema
operativo en su computadora, o si usted estar usando LILO para
escoger entre los sistemas operativos mltiples en su computadora.
72

Esta opcin eliminara cualquier otro booter instalado en MBR


Despus de seleccionar la ubicacin de la instalacin, liloconfig escribir el
archivo de configuracin e instalara LILO. Eso es todo. Si usted selecciona el
modo "expert" usted recibir un men especial. Este men le permite
escarbar en el archivo /etc/lilo.conf , agregar otros sistemas operativos a su
men de booteo , y configura a LILO para "saltar" parmetros especiales del
Kernel en el momento de arrancar. As luce el men experto:
Figura 7-3. liloconfig modoexpert.

Cualquiera que sea la configuracin de su sistema, configurar un boot loader


es fcil. liloconfig hace que la configuracin sea muy sencilla. Sin embargo,
hay casos en los que LILO simplemente no funcionara. Hay otras opciones
afortunadamente.

LOADLIN
La otra de arranque que viene con Slackware Linux es LOADLIN. LOADLIN es
un ejecutable de DOS que puede ser usado para arrancar Linux desde un
sistemas DOS corriente. Requiere que el Kernel de Linux este instalado en
esa particin DOS para que LOADLIN pueda cargarlo e iniciar el sistema
apropiadamente.
Durante el proceso de la instalacin, LOADLIN se copiar al directorio de la
home de root como un archivo .ZIP. No hay ningn proceso de configuracin
automtico para LOADLIN. Usted necesitar copiar el Kernel de Linux (el
/vmlinuz) y el archivo LOADLIN desde el directorio home de root a la particion
de DOS.
LOADLIN es til si usted quiere hacer un men de arranque en su particin
DOS. Un men podra agregarse a su archivo AUTOEXEC.BAT que le
permitira escoger entre Linux o DOS. La opcin Linux ejecutara LOADLIN,
73

iniciando su sistema Slackware. Este archivo AUTOEXEC.BAT bajo Windows


95 proporcionara un boot menu decente :

@ECHO OFF
SET PROMPT=$P$G
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\
CLS
ECHO Por favor seleccione sus sitema operativo:
ECHO.
ECHO [1] Slackware Linux
ECHO [2] Windows 95
ECHO.
CHOICE /C:12 "Selecion? -> "
IF ERRORLEVEL 2 GOTO WIN
IF ERRORLEVEL 1 GOTO LINUX
:WIN
CLS
ECHO Iniciando Windows 95...
WIN
GOTO END
:LINUX
ECHO Iniciando Slackware Linux...
CD \LINUX
LOADLIN C:\LINUX\VMLINUZ ROOT=<root partition device> RO
GOTO END
:END

Usted tendr que especificar su particin raz como un dispositivo linux, por
ejemplo /dev/hda2 o algo as. Usted siempre puede usar LOADLIN a la lnea
de comando. Usted lo usa simplemente de la misma manera como est
anteriormente en el ejemplo. La documentacin de LOADLIN viene con
muchos ejemplos sobre cmo usarlo.

Booteo Dual
Muchos usuarios prepararon sus computadoras para iniciar Slackware Linux y
otro sistema operativo. Nosotros estaremos explicando varios ejemplos tpicos
de booteo dual, en caso de que usted tenga problemas configurando su
sistema.

Windows 9x/DOS
Configurar una computadora para que arranque con Windos 9x y Linux es
probablemente el caso de booteo dual mas comn. Hay numerosas maneras
de configurar el inicio, pero esta seccin cubrir dos.
A menudo en el momento de configurar un sistema de booteo dual, la persona
inventar un plan perfecto para dnde debe ir todo pero se desordena en el
orden de la instalacin. Es muy importante entender que los sistemas
operativos necesitan ser instalados en un cierto orden para que funcione un
booteo dual. Linux siempre ofrece un control mayor en eso, si pasa algo, se
74

escribe en el Master Boot Record. Por consiguiente, siempre es aconsejable


instalar Linux en ltimo lugar. Windows debe instalarse primero, ya que
siempre escribe su booter en el Master Boot Record.

Usando LILO
La mayora de las personas querr usar LILO para escoger entre Linux y
Windows. Como se ha dicho anteriormente, usted debe instalar Windows
primero y despus Linux.
Digamos que usted tiene un disco duro 4.7GB IDE como nica unidad en su
sistema. Tambin digamos que usted quiere dar la mitad de ese espacio a
Windows y la mitad de ese espacio a Linux. Esto presentar un problema al
intentar iniciar con Linux. Yo no s la geometra especfica del disco, pero las
oportunidades son que pasando los 23.5GB ser pasando del cilindro 1024th
tambin. Un diseo bueno para esta unidad sera:

1GB
1GB
22.5
22.5

Windows boot (C:)


Linux root (/)
Windows misc (D:)
Linux /usr (/usr)

Usted tambin querra poner una cantidad adecuada de espacio para una
particin swap Linux . La regla no escrita es usar el doble de la cantidad de
RAM que usted tiene como espacio en disco. Un sistema con 64MB tendra
128MB de swap, y as sucesivamente.
Con su particiones listas, usted debe proceder a instalar Windows. Despus
de eso configrelo y a trabajar, usted debe proceder a instalar Windows. La
instalacin de LILO necesita atencin especial. Usted necesitara seleccionar
el modo "expert" para instalar LILO.
Empiece una nueva configuracin de LILO. Usted querr instalarlo para
Dominar el Master Boot Record (MBR) para que pueda usarse para escoger
entre los dos sistemas operativos. Del men, agregue su particin de Linux y
agregue su particin de Windows (o DOS) . Una vez completado esto, usted
puede instalar LILO.
Reinicie la computadora. LILO debe cargar y debe esperar por la seleccin del
usuario. Usted puede usar Alt para que aparezca el prompt boot:. Teclee el
nombre del sistema operativo que usted quiere iniciar (estos nombres sern
seleccionados cuando usted instale LILO). Si usted se olvidara del nombre,
Presione Tab para conseguir una lista de sistemas operativos que usted
puede iniciar.
Usted incluso puede configurar ms a LILO editando el archivo /etc/lilo.conf en
su particin de Linux. Usted puede configurar para que despliegue un men
de texto, y siempre presentar el prompt. Por ejemplo, si yo quisiera que mi
LILO desplegara esto:
System Boot Menu
================
1 - Linux
2 - Windows
75

LILO boot:

Mi archivo /etc/lilo.conf deberia lucir asi:


# LILO configuration file
boot = /dev/hda
vga = normal
message = /boot/message
image = /vmlinuz
root = /dev/hda2
label = 1
read-only
other = /dev/hda1
label = 2
table = /dev/hda

Y mi archivo /boot/message debera ser as:


System Boot Menu
================
1 - Linux
2 - Windows

LILO es un bootloader realmente configurable. Simplemente no se limita a


iniciar Linux o DOS. Puede iniciar lo que sea. Las paginas del manual de el
lilo(8), y lilo.conf(5) ,proporcionan una informacin mas detallada
LILO no le funciona? Hay casos dnde LILO simplemente no trabajar en
una mquina particular. Hay otra manera afortunadamente, para iniciar Linux y
Windows.

Usando LOADLIN
Este mtodo puede usarse si LILO no trabaja en su sistema, o si usted no
quiere configurar LILO. Este mtodo tambin es ideal para el usuario que
reinstala a menudo Windows. Cada tiempo usted reinstala Windows, borrar
el Master Boot Record, destruyendo cualquier instalacin de LILO . Con
LOADLIN, usted no est sujeto a ese problema. La desventaja ms grande es
que usted puede usar LOADLIN solamente para iniciar Linux.
Con LOADLIN, usted puede instalar los sistemas operativos en cualquier
orden deseado. Tenga el cuidado acerca de instalar las cosas al Master Boot
Resocrdl, usted no quierra hacer eso. LOADLIN confia en que la particion de
Windows es Booteable. As que durante la instalacin de Slackware,
asegrese de saltar la configuracion de LILO.
Despus de instalar los sistemas operativos, copie el lodlinX.zip (donde" X" es
el nmero de la versin, por ejemplo" 16a") desde el home de root hasta su
particion de Windows. Tambin copie su imagen kernel a la particin de
76

Windows. Usted necesitar estar en Linux para trabajar. Este ejemplo


muestra cmo hacer esto:
# mkdir /win
# mount -t vfat /dev/hda1 /win
# mkdir /win/linux
# cd /root
# cp loadlin* /win/linux
# cp /vmlinuz /win/linux
# cd /win/linuz
# unzip loadlin16a.zip

Eso crear un directorio C:\LINUX en su particin de Windows (asumindolo


que es /dev/hda1) y copia encima el material necesario para LOADLIN.
Despus de hacer esto, usted necesitar iniciar en Windows para instalar el
men de booteo.
Una vez en Windows, entre en un prompt de DOS. Primero, nosotros
necesitamos asegurarnos que el sistema no esta configurado para iniciar con
la interfaz grafica:
C:\>cd \
C:\>attrib -r -a -s -h MSDOS.SYS
C:\>edit MSDOS.SYS

Agregue esta lnea al archivo:


BootGUI=0

Now save the file and exit the editor. Now edit C:\AUTOEXEC.BAT so we can add
a boot menu. The following provides an example of what a boot menu block in
AUTOEXEC.BAT would look like:
cls
echo System Boot Menu
echo.
echo 1 - Linux
echo 2 - Windows
echo.
choice /c:12 "Selection? -> "
if errorlevel 2 goto WIN
if errorlevel 1 goto LINUX
:LINUX
cls
echo "Starting Linux..."
cd \linux
loadlin c:\linux\vmlinuz root=/dev/hda2 ro
goto END
:WIN
cls
echo "Starting Windows..."
win
goto END
77

:END

La lnea importante es la que ejecuta a LOADLIN. Nosotros le decimos cual


Kernel iniciar, la particin raz de Linux y que queremos que se monto como
solo-lectura al principio.
Las herramientas para estos dos mtodos se incluyen en Slackware Linux.
Hay numerosos booters en el mercado, pero stos deben trabajar para ms
configuraciones de inicio dual.

Windows NT
Esta es la segunda forma de inicio dual mas usada. WINDOWS NT presenta
mas problemas que el booteo dual entre Windows 9x y Linux. El principal
problema es que se sobrescribe el Master Boot Record con LILO , NT no
iniciara mas nunca. Por consiguiente, nosotros debemos usar al Cargador de
OS(OS Loader) que viene con WINDOWS NT. Los siguientes pasos le
indican como montar un booteo dual entre Windows NT y Linux.
1. Instale WINDOWS NT
2. Instale Linux, asegrese de instalar LILO en el superblock de la
particin de Linux.
3. Consiga los primeros 512 bytes de la particin raz de Linux y
gurdelos en la particin de Windows NT.
4. Revise C:\BOOT.INI bajo WINDOWS NT para agregar una opcin de
Linux
Instalar Windows NT debe ser tan fcil como instalar Linux. Despus de eso
la cosa se pone un poquito mas difcil. Agarrar los primeros 512 bytes de la
particin de Linux es ms fcil de lo que parece. Usted necesitar estar en
Linux para lograr esto. Asumiendo que su particin de Linux es /dev/hda2,
emita esta orden:
# dd if=/dev/hda2 of=/tmp/bootsect.lnx bs=1 count=512

Esos son. Ahora usted necesita copiar bootsect.lnx a la particin de WINDOWS


NT. Aqu es donde nosotros nos encontramos con otro problema. Linux no
tiene el soporte para en escribir el sistema de archivos NTFS. Si usted instalo
Windows NT y formateo su disco duro como NTFS, usted necesita copiar este
archivo a un disquete y leerlo bajo Windows NT. Si usted estructurara la
unidad de WINDOWS NT como FAT, usted puede montarlo simplemente bajo
Linux y puede copiar el archivo . De cualquier forma usted necesita tener el
archivo /tmp/bootset.inx de Linux en C:\BOOTSECT.LNX en la unidad de
Windows NT.
El ultimo paso ser agregar una opcin al men de booteo de Windows NT.
Bajo Windows NT abra un prompt de comandos.
C:\WINNT>cd \
C:\>attrib -r -a -s -h boot.ini
C:\>edit boot.ini
78

Agregue esta lnea al final del archivo:


C:\bootsect.lnx="Slackware Linux"

Guarde los cambios y cierre el editor. Cuando usted reinicie WINDOWS NT,
usted tendr una opcin de Linux en el men. Escogindola se iniciara Linux.

Linux
S, las personas realmente hacen esto. Este es la forma mas fcil de realizar
un booteo dual. Usted simplemente puede usar LILO y agregar mas opciones
en el archivo /etc/lilo.conf. Y eso es todo.

Resumen
Este capitulo mostr como iniciar su sistema usando LILO o Loadlin . Tambin
le dijimos como iniciar entre Linux y otros sistemas operativos. Usted puede
configurar ahora su propio mtodo para iniciar su sistema operativo y un
booteo dual para escoger otro si usted lo necesita.

79

IV. Usando Slackware Linux


Contenido
8. El Shell
9. Estructura del sistema de archivos (filesystem)
10. Manejando Archivos y Directorios
11. Control de Procesos
12. Administracin esencial del sistema
13. Comandos Bsicos de Red
14. Guardando Archivos
15. vi
16. Manejo de paquetes de Slackware
17. ZipSlack y BigSlack

Capitulo 8. El Shell
Contenido
Usuarios
La linea de comandos
The Bourne Again Shell (bash)
Terminales Virtulaes
Resumen
En un entorno grafico, la interfase es proporcionada por un programa que crea
las ventanas, barras de desplazamiento , mens ,etc. En un entorno de lneas
de comando, la interfaz del usuario es proporcionada por el shell que
interpreta los comandos y generalmente haces las cosas tiles.
Inmediatamente despus de iniciar sesin (que se explica en este capitulo),
los usuarios entran en un shell y se les permite hacer su negocio. Este
captulo sirve como una introduccin al shell, y el shell mas comn entre los
usuarios de Linux-El Bourne Again Shell (bash). Para informacin ms
detallada sobre cualquier cosa en este captulo, revise la pagina del manual
bash(1).

80

Usuarios
Iniciando sesin
As que usted a iniciado su maquina, y esta mirando algo como esto:
Welcome to Linux 2.2.14
darkstar login:

Hmm.. nadie dijo algo sobre un inicio de sesin. Y que es darkstar? No se


preocupe; usted probablemente dispar accidentalmente un comm-link del
hyperspacio a la luna artificial del Imperio. (Disculpeme el protocolo de
comm-link del hiperespacio no es soportado actualmente por el Kernel de
Linux.) No, darkstar es simplemente el nombre de una de nuestras
computadoras, y su nombre se establece como el valor predeterminado. Si
usted especifico un nombre para su computadora durante la instalacin, usted
debe verlo en lugar de darkstar.
En cuanto al inicio de sesin... Si esta es su primera vez, usted tiene que
entrar como root. Se le pedir introducir la contrasea, si usted coloco una
durante el proceso de instalacin, eso es lo que le esta pidiendo. Si no, slo
presione enter. Eso es! usted esta adentro!

Root: El Superususario
De acuerdo, que o quien es "root"? Y qu est haciendo con una cuenta en
su sistema?
Bien, en el mundo de Unix y los sistemas operativos similares (como Linux),
hay usuarios. Nosotros explicaremos esto con detalle mas adelante, pero lo
que nos interesa saber aqu ahora es que root es el usuario sobre todos los
usuarios ; root es todopoderoso y todo-inteligente, y nadie desobedece a root.
Simplemente no se permite. Root es lo que nosotros llamamos un
"Superusuario", y eso justamente es lo que es. Y lo mejor de todo, es que root
es usted.
Excelente, ha?
Si usted no esta seguro; si, eso es excelente. El asunto es, sin embargo, que
a root se le permite daar cosas en el sistema. Usted puede pasar al capitulo
12 ver como agregar a un usuario; entonces iniciar sesin con el y trabajar
desde all. La sabidura tradicional dice que es mejor volverse superusuario
solo cuando sea completamente necesario, para minimizar la posibilidad de
daar algo accidentalmente.
A propsito, si usted decide que usted quiere ser root mientras usted esta
adentro como alguien ms, no hay ningn problema. Simplemente use el
comando su(1). Le pedir la contrasea de root y entonces comenzara a ser
root hasta que usted se salga o coloque logout. Usted tambin puede
volverse cualquier otro usuario usando el comando su, con tal de que usted
conozca la contrasea del usuario: su logan, por ejemplo , lo hara
convertirse en mi.

81

La lnea de comandos
Ejecutando Programas
Recuerda qu casi todo en Linux es un archivo? Bien, eso va por los
programas, tambin. Cada orden que usted ejecuta (que no esta incluida en el
shell) reside en algn archivo en alguna parte. Usted ejecuta un programa
simplemente especificando la ruta completa hasta el.
Por ejemplo, recuerda el comando su de la seccin anterior? Bien,
realmente el esta actualmente en el directorio /bin/su.
As que por que, entonces, solo con escribir su funciona? Despus de todo,
usted no dijo que era en el directorio /bin. Pudo haber estado fcilmente en
el directorio /usr/local/share , verdad? Cmo supo? La respuesta a eso queda
en la ruta de entorno variable; la mayora de los shell ya conoce la ruta o algo
parecido a la ruta. Contiene bsicamente una lista de directorios para buscar
los programas que usted intenta ejecutar. As que cuando usted ejecuto el
comando su , el shell busco a travs de su lista de directorios, verificando
cada archivo ejecutable llamado su que podra ejecutar: el primero que
consigui lo ejecuto. Esto pasa siempre que usted ejecuta un programa sin
especificar la ruta completa hasta el; si usted se consigue con un error tipo
Command not found, esto significa que el programa que usted intenta ejecutar
no esta en su ruta. (Claro, esto seria verdad solamente si el programa no
existe en lo absoluto...) Nosotros explicaremos la variable de entrono con mas
profundidad en la seccin llamada The Bourne Again Shell(bash).
Recuerde tambin que "." es la ruta corta para" el directorio en que yo estoy,
por lo que si usted esta en el directorio /bin ./su funcionaria como una ruta
explicita completa.

Comodines
Casi todos los shell reconocen ciertos caracteres como sustitutos o
abreviaciones que significan "algo va aqu". Esos caracteres se conocen como
"wildcards"(comodines); los mas comunes son * y ?. Por convencin ?
normalmente coincide con un solo carcter. Por ejemplo, suponga usted que
est en un directorio con tres archivos: ex1.txt, ex2.txt, y ex3.txt. Usted quiere
copiar todos esos archivos (usando la orden cp que nosotros explicaremos en
el Captulo 10) a otro directorio, digamos /tmp. Bien, teclear cp ex1.txt ex2.txt
ex3.txt /tmp es completamente demasiado trabajo. Es mucho ms fcil de
teclear cp ex?.txt /tmp el smbolo ? coincidir con los caracteres " 1"," 2", y"
3", y cada uno a su vez sera sustituido por el.
Qu es lo que dices? Eso es todava demasiado trabajo? Usted tiene
razn. Est espantando; nosotros tenemos leyes sociales para protegernos
de esa clase de cosas. Afortunadamente, nosotros tambin tenemos *. Como
ya se mencion, * coincide con "cualquier nmero de caracteres", incluyendo
0. Si esos tres archivos fueran los nicos en el directorio, nosotros podramos
decir simplemente cp * /tmp y eso seria todo. Suponga, sin embargo, que
hay tambin un archivo llamado example.txt y uno llamado hejaz.txt. Nosotros
82

queremos copiar example.txt pero no hejaz.txt; cp example? Har eso por


nosotros.

Input/Output Redireccionamiento y tuberias


$ ps > blargh

Usted sabe que es eso? Estoy ejecutando ps para saber que procesos se
estn ejecutando; el comando ps se cubre en el Capitulo 11. La parte
divertida es > blargh que significa aproximadamente, "tome el output de ps y
escriba un archivo llamado blargh." Pero espere, se pone ms divertido.
$ ps | less

Este toma el output de ps y lo entuba menos, para que yo pueda recorrerlo a


mi antojo.
$ ps > > blargh

Este es el tercer redireccionador mas usado; hace la misma cosa que ">",
excepto que "> >" escribir el output de ps en el archivo blargh, si ese archivo
existe.. (">" sobrescribir el contenido de blargh.)
Existe tambin el operador "<" que quiere decir "tome como entrada lo
siguiente", pero no se usa tan a menudo.
$ fromdos < dosfile.txt > unixfile.txt

Redireccionar se torna divertido cuando usted empieza a amontonarlos:


$ ps | tac > > blargh

Eso ejecutar ps, invertir las lneas de su output, y aadir aquellos en el


archivo blargh. Usted puede colocar tantos de ellos como usted quiera; solo
tenga en cuenta que ellos se interpretan de izquierda a derecha.
Vea el manual de bash(1) , para informacin mas completa sobre el.

The Bourne Again Shell (bash)


Variables de Entorno
Un sistema Linux es una bestia compleja, y hay que estar pendiente de
muchas cosas. muchos pequeos detalles que estn en juego en su
interaccin normal con varios programas. Nadie quiere pasar un puado de
opciones a cada programa que ejecuta, decir que tipo de terminal esta
usando, el hostname de la computadora, como debe lucir el prompt...
Como un mecanismo de copiado, los usuarios tenemos lo que se llama un
ambiente. El ambiente define las condiciones en que se ejecutan los
programas, y algunas de estas definiciones son variables; el usuario puede
alterar y jugar con ellas , como solo se puede en sistema Linux. Muchas sheel
tendrn variables de entorno (si no, es probable que no sea una shell muy
util.). Aqu nosotros daremos un vistazo al shell de forma global y de las
ordenes que mantiene usando sus variables de entorno.
$ set

set por defecto le muestra todas las variables de entorno que estn
actualmente definidas, as como sus valores. Como la mayora de los bash ,
83

tambin puede hacer otras cosas( con parmetros);sin embargo, nosotros


dejaremos que eso lo explique la pagina bash(1) del manual. Un extracto de
una configuracin de comandos como luce en mi computadora , seria as:
PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/ usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin
PIPESTATUS=([0]="0")
PPID=4978
PS1='\h:\w\$ '
PS2='> '
PS4='+ '
PWD=/home/logan
QTDIR=/usr/local/lib/qt
REMOTEHOST=ninja.tdn
SHELL=/bin/bash

Note la ruta variable que nosotros mencionamos antes; yo puedo ejecutar algo
en cualquiera de esos directorios simplemente tecleando su nombre de
archivo.
$ unset VARIABLE

Unset quitara cualquier variable que usted especifique, borrando esa variable
y su valor; bash olvidara para siempre que esa variable existi. (No se
preocupe. Al menos que sea algo que usted explcitamente defini en esa
sesin de shell, probablemente esta se redefinir en cualquier otra sesin).
$ export VARIABLE=some_value

Ahora, export es verdaderamente hbil. Usndolo, usted le da un valor


cualquiera a la variable de entorno "VARIABLE"; si "VARIABLE" no existe,
entonces la creara. Si la "VARIABLE" ya tuviera un valor, entonces ser
sustituido. Eso no es tan bueno, si usted est intentando agregar un directorio
a su PATH simplemente. En ese caso, usted quiere hacer algo as
probablemente:
$ export PATH=$PATH:/some/new/directory

Note el uso de $PATH ; cuando usted quiere que el bash interprete una
variable (Remplazarla con ese valor), coloque el simbolo "$" en el comienzo
del nombre de la variable. Por ejemplo ,echo $PATH mostrara el valor de la
variable PATH, que en mi caso es:
$ echo $PATH
/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:
/usr/openwin/bin:/usr/games:.:/usr/local/ssh2/bin:/usr/local/ssh1/bin:
/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin

84

Completacion con TAB


1. Una lnea de comandos significa mucha mecanografa.
2. Mecanografiar es trabajo.
3. A nadie le gusta el trabajo.
De 3 y 2, nosotros podemos determinar que 4) a nadie le gusta teclear.
Afortunadamente, bash nos salva del 5( a nadie le gusta la lnea de comando).
usted se preguntara como bash logra este hecho tan maravilloso? Adems
de los comodines que nosotros explicamos anteriormente, bash incluye "tab
completion".
Tab completion trabaja de esta forma: Usted est tecleando el nombre de un
archivo. Quiz est en su PATH, quiz usted est teclendolo explcitamente.
Todo lo que tiene que hacer es tipear toda la ruta del archivo para identificarlo.
Entonces presione la tecla TAB. bash deducir lo que usted quiere y
terminara de escribirlo por usted.
El Hora del ejemplo el directorio /usr/src contiene dos subdirectorios:
/usr/src/linux y /usr/src/sendmail. Yo quiero ver lo que hay en /usr/src/linux. Asi que
yo nada mas tecleo ls /usr/src/l , presiono la tecla TAB, y el bash me completa ls
/usr/src/linux.
Ahora suponga que hay dos directorios /usr/src/linux y /usr/src/linux-old : Si yo
tecleo /usr/src/l y presiono TAB , bash completara tanto como pueda, y me
mostrara /udr/src/linux. Yo puedo detenerme all, o puedo presionar TAB de
nuevo, y el bash me mostrara una lista de directorios que coinciden con lo que
he tipeado anteriormente.
Menos mecanografa(y a las personas , les gustara la lnea de comando).

Terminales Virtuales
As que usted esta en la mitad de un trabajo y decide que necesita hacer otra
cosa. Usted podra dejar lo que usted estar haciendo y cambiar las tareas,
pero esto un sistema multiusuario, correcto? Y usted puede entrar
simultneamente las veces que quiera, correcto? As que por que tiene que
hacer una cosa a la vez?
You don't. Todos Nosotros no podemos tener multiples teclados, mouses y
monitores en una sola maquina; lo mas seguro es que ningun de nosotros los
quiera. Claramente, el hardware no es la solucin. Eso nos deja el software, y
Linux trabaja para eso, proporcionando "Terminales Virtuales, o "VTs".
Apretando Alt y una tecla de funcin, usted puede cambiar entre los
trminales virtuales; cada tecla de funcin corresponde a uno. Slackware tiene
inicios de sesin por defecto en 6 VTs. Alt+F2 lo llevaran al segundo, Alt+F3
al tercero, etc.
El resto de las teclas de funcin esta reservado para las sesiones de X. Cada
sesin de X usa su propio VT, empezando con el sptimo (Alt+F7) y subiendo.
Estando en X, la combinacin de teclas de Alt+Function se reemplaza con
Ctrl+Alt+Function; si usted est en X y quiere volver a un inicio de sesin de
texto (sin terminar su sesin de X), Ctrl+Alt+F3 lo llevara al tercero. (Alt+F7 lo
devolver, asumiendo que est usando la primera sesin de X.)

85

Resumen
En este capitulo explicamos los usuarios, el shell , la lnea de comando , y los
terminales virtuales. Usted debe sentirse cmodo en trabajando en la lnea de
comandos, ejecutando programas, y usando las tuberas y operadores de
redireccionamineto para combinar los comandos. Finalmente, usted debe
tener una idea del poder del usuario root y de porque es una mala idea estar
como root.

86

Capitulo 9. Estructura del Filesystem


Contenido
Propietarios
Permisos
Enlaces(Links)
Montando Dispositivos
Montaje NFS
Resumen
Nosotros ya hemos discutido la estructura del directorio en Slackware Linux.
Usted puede encontrar los archivos y directorios que usted necesita. Pero hay
ms en el filesystem que simplemente la estructura del directorio.
Linux es un sistema operativo multiusuario. Cada aspecto del sistema es
multiusuario, incluso el filesystem. El sistema guarda informacin sobre quin
posee un archivo y quin puede leerlo. Hay otras partes nicas acerca del
filesystem, como los enlaces y los montajes NFS. Estos se explican en esta
seccin, as como los aspectos multiusuarios del filesystem.

Propietario
El filesystem guarda informacin sobre la propiedad para cada archivo y
directorio en el sistema. Esto incluye que dueo y grupo posee un archivo en
particular. La manera ms fcil de ver esta informacin es con el comando ls :
$ ls -l /usr/bin/wc
-rwxr-xr-x 1 root bin

7368 Jul 30 1999 /usr/bin/wc

A nosotros nos interesa la tercera y cuarta columna. stas contienen el


username y nombre del grupo que posee este archivo. Nosotros vemos que el
usuario "root" y el grupo "bin" poseen este archivo.
Nosotros podemos cambiar a los dueos del archivo fcilmente con los
comandos chown(1)(que significa "cambiar propietario") y chgrp(1)(que
significa "cambiar grupo"). Para cambiar el propietario a daemon ,
utilizaremos el comando chown(1):
# chown daemon /usr/bin/wc

Para cambiar el grupo propietario a root, usaremos chgrp:


# chgrp root /usr/bin/wc

Podemos usar chown para cambiar el propietario y el grupo inclusive:


# chown daemon.root /usr/bin/wc
87

La propiedad del archivo es una parte muy importante en un sistema Linux,


aun cuando usted sea el nico usuario. Usted a veces necesitara arreglar la
propiedad en los archivos y nodos de dispositivos.

Permisos
Los permisos son la otra parte importante de los aspectos multiusuarios del
filesystem. Con stos, usted puede cambiar quien puede leer, escribir, y
puede ejecutar los archivos.
La informacin de los permisos se guarda en cuatro dgitos octales, cada uno
que especifica un juego diferente de permisos. Hay permisos para el
propietario, permisos de grupo, y los permisos mundiales. El cuarto digito octal
se usa para guardar informacin especial como el user ID (identificacin del
usuario) , set group ID (identificacin de grupo), y el "sticky" bit. Los valores
octales asignados a los modos del permiso son (ellos tienen tambin letras
asociadas con ellos que son mostradas por programas como ls y pueden ser
usadas por chmod):
Tabla 9-1. Valores octales de permisos
Tipo de Permiso

Valor Octal

Valor en Letras

"sticky" bit

set user ID

set group ID

leer

escribir

ejecutar

Usted agrega los valores octales para cada grupo de permisos. Por ejemplo,
si usted quiere el grupo de permiso para "leer" y "escribir", usted usara "6" en
la porcin del grupo de la informacin de permisos.
los permisos predefinidos de bash son:
$ ls -l /bin/bash
-rwxr-xr-x 1 root

bin 477692 Mar 21 19:57 /bin/bash

La primera letra antes del guin seria una d si esto fuera un directorio. Los
tres grupos de permisos (propietario , grupo, y mundo) se despliegan
despus. Nosotros vemos que el dueo tiene permiso para leer, escribir y
ejecutar (rwx). El grupo solo puede leer y ejecutar (r-x). Y todos los dems
pueden leer y ejecutar (r-x).
Como podemos poner los permisos del bash en otro archivo? Primero,
hagamos un archivo de ejemplo:
$ touch /tmp/example
$ ls -l /tmp/example
-rw-rw-r--- 1 david users

0 Apr 19 11:21 /tmp/example

Vamos a usar chmod(1)(que significa "cambiar modos") para poner los


permisos al archivo de ejemplo. Agregue los nmeros octales para los
88

permisos que usted quiere. Para que el propietario pueda leer, escribir y
ejecutar, colocamos el valor 7. Leer y ejecutar seria 5. Ejectelos todos juntos
y pngalos en el chmod as:
$ chmod 755 /tmp/example
$ ls -l /tmp/example
-rwxr-xr-x 1 david users 0 Apr 19 11:21 /tmp/example

Para poner permisos especiales, sume los nmeros y pngalos en la primera


columna. Por ejemplo, para que coloque el userID y el groupID, utilizamos 6
en la primera columna:
$ chmod 6755 /tmp/example
$ ls -l /tmp/example
-rwsr-sr-x 1 david users 0 Apr 19 11:21 /tmp/example

Si los valores octales lo confunden, usted puede usar las letras con el chmod.
Los grupos de permiso se representan como:
Propietario
u
Grupo

Mundo

Todos

Para hacer lo anterior, nosotros tendriamos que usar algunas lineas de


comando:
$ chmod a+rx /tmp/example
$ chmod u+w /tmp/example
$ chmod ug+s /tmp/example

Algunas personas prefieren las letras en vez de los nmeros. De cualquier


modo producir el mismo juego de permisos.
Nosotros mencionamos los permisos set userID y set gruoupID anteriormente
varias veces. Usted puede estar preguntandose que es esto. Normalmente
cuando usted ejecuta un programa, est operando bajo su cuenta de usuario.
Es decir, con todos los permisos que usted como un usuario tiene. Lo mismo
pasa con el grupo. Cuando usted ejecuta un programa, este se ejecuta bajo
su grupo actual. Con los permisos set userID , usted puede obligar al
programa a que solo sea ejecutado por el propietario(por ejemplo como
"root"). set groupID es lo mismo, pero para el grupo.
Tenga cuidado con esto, los programas set userID y set groupID pueden abrir
agujeros de seguridad graves en su sistema. Si usted frecuentemente coloca
set user Id a los programas propiedad de "root" , usted esta permitiendo a
cualquiera utilizar este programa como root. Como root no tiene ninguna
restriccin en el sistema, usted puede darse cuenta del problema que esto
causara. En resumen, no es malo usar los permisos set user ID y set group
ID, solo selos con sentido comn.

Enlaces(Links)
Los enlaces son indicadores entre archivos. Con los enlaces, usted puede
tener archivos en distintos sitios y hacerlos accesibles con varios nombres.
Hay dos tipos de enlaces: duros y suaves.
89

Los enlaces duros son los nombres de un archivo en particular. Ellos pueden
estar solo en el directorio donde se encuentra el archivo y solo se pueden
borrar cuando el nombre real es eliminado del sistema. stos son tiles en
algunos casos, pero muchos usuarios encuentran el enlace suave ms
verstil.
El enlace suave, tambin llamado enlace simblico, pude apuntar a un archivo
fuera de su directorio. Realmente es un archivo pequeo que contiene la
informacin que necesita. Usted puede agregar y borrar los enlaces suaves
sin afectar el archivo real.
Los enlaces no tienen su propio grupo de permisos o propiedades, pero refleja
los permisos del archivo al que apuntan. Slackware principalmente usa los
enlaces suaves. Aqu hay un ejemplo comn:
$ ls -l /bin/sh
lrwxrwxrwx 1 root

root

4 Apr 6 12:34 /bin/sh -> bash

El sh shell en Slackware es realmente el bash. Para quitar los enlaces se


utiliza rm. El comando ln se usa para crear los enlaces. Estos comandos se
discuten mas adelante en el capitulo 10.

Montando Dispositivos
Como se discuti anteriormente en la seccin llamada Sistema de Archivos en
el Capitulo 4, todas las unidades y dispositivos de su computadora son un
gran filesystem. Los discos duros, CD-ROMs , y los floppies se encuentran en
el mismo rbol. Para unir estas unidades al filesystem y poder accesarlos,
usted tiene que usar el comando mount(1) y umount(1).
Algunos dispositivos estn automticamente montados cuando usted inicia su
computadora. Estos se listan en el archivo /etc/fstab. Todo lo que usted quiere
que se monte automticamente debe aparecer en este archivo. Para los otros
dispositivos, usted tendr que ejecutar el comando cada vez que quiera usar
el dispositivo.

fstab
Veamos un ejemplo de archivo etc/fstab :
/dev/sda1
/
/dev/sda2
/usr/local
/dev/sda4
/home
/dev/sdb1
swap
/dev/sdb3
/export
none
/dev/pts
none
/proc
/dev/fd0
/mnt
/dev/cdrom
/cdrom

ext2
defaults
1 1
ext2
defaults
1 1
ext2
defaults
1 1
swap
defaults
0 0
ext2
defaults
1 1
devpts
gid=5,mode=620 0 0
proc
defaults
0 0
ext2
defaults
0 0
iso9660 ro
0 0

La primera columna es el nombre del dispositivo. En este caso, los


dispositivos son cinco particiones extendidas en dos unidades de disco duro
SCSI , dos filesystem especiales que no necesitan un dispositivo, un floppy ,
90

y una unidad de CD-ROM. La segunda columna es donde el dispositivo se


montar. Esto tiene que ser el nombre de un directorio, a menos que sea una
particin tipo swap. La tercera columna es el tipo de filesystem del dispositivo.
Para Linux el filesystem normal ser el ext2. Las unidades de CD-ROM son
los iso9660, y los dispositivos Basados en Windows sern msdos o vfat.
La cuarta columna es una lista de opciones que aplican al filesystem montado.
los valores predeterminados("defaults") estn bien para casi todo. Sin
embargo, los dispositivos de solo lectura deben tener el indicador ro.
Hay muchas opciones que pueden usarse. Verifique la pagina del manual
fstab(5) para mas informacin. Las ltimas dos columnas son usadas por
fsck y otros comandos que necesitan manipular los dispositivos. Verifique la
pagina del manual para esta informacin.
Cuando usted instala Slackware Linux, el programa de instalacin construir
gran parte del archivo del fstab. Lo nico que necesita hacer es editarlo si
usted agrega discos o dispositivos que necesitan ser montados
automticamente en el inicio.

mount y umount
Montar otro dispositivo en su filesystem es fcil. Todo lo que tiene que hacer
es usar le comando mount, seguido de algunas opciones. Usar mount puede
ser mas fcil si el dispositivo tiene una entrada en el archivo /etc/fstab. Por
ejemplo, digamos que yo quiero montar mi unidad de CD-ROM y que mi
archivo fstab se parece a el ejemplo de la seccin anterior. Yo ejecutara
mount de este modo:
# mount /cdrom

Hay una entrada en fstab para este punto de montaje, mount sabe que
opciones usar. Si no existiera una entrada para este dispositivo, tendramos
que usar varias opciones para mount:
# mount -t iso9660 -o ro /dev/cdrom /cdrom

Esa lnea de comandos incluye la misma informacin del fstab de ejemplo,


pero nosotros revisaremos todas las partes de todas formas. La -t iso9660 es
el tipo de filesystem del dispositivo a montar. En este caso t iso9660 , seria
el filesystem iso9660 que normalmente son los que usan la mayora de las
unidades de CD-ROM. La -o ro le dice que monte el dispositivo en modo solo
lectura. /dev/cdrom es el nombre del dispositivo a montar y /cdrom es la
ubicacin donde se montara la unidad.
Antes de que usted pueda quitar un disquete , un CD-ROM , u otro dispositivo
removible que este montado, usted tiene que desmontarlo(unmount). Eso se
hace con la orden umount. No pregunten a donde se fue la "n" porque
nosotros no podemos decirles. Usted puede usar el nombre del dispositivo
montado o la direccin de montaje como argumento para umount. Por
ejemplo, si usted quiere desmontar el CD-ROM del ejemplo anterior,
cualquiera de estas dos ordenes funcionaria:
# umount /dev/cdrom
# umount /cdrom

91

Montaje NFS
NFS representa el Filesystem de red. Realmente no es parte del filesystem
real, pero puede usarse para agregar partes al filesystem montado.
En ambientes Unix grandes a veces se comparten los mismos programas,
directorios home , y servicios de correo. El problema de hacer la misma copia
para cada mquina se resuelve con NFS. Nosotros podemos usar NFS para
compartir directorios home entre todas las maquinas. Los puestos de trabajo
montan ese NFS compartido como si estuviera en sus propias mquinas.
Vea la seccin llamada NFS (Sistema de Archivos de Red) en el Capitulo 5 y
el manual de exports(5), nfsd(8) , y mount(8) para mas informacin.

Resumen
En este captulo, usted debe de haber ganado conocimiento de propiedades y
permisos. Usted debe saber por qu stos existen y cmo ponerlos. Usted
tambin debe saber sobre los enlaces entre archivos, montar los
dispositivos, y montajes de NFS. Estas tres cosas son aspectos importantes
del filesystem. Usted debe tener una idea bsica de cmo usarlos.

92

Capitulo 10. Manejando Archivos y Directorios


Contenido

ls
cd
more
less
cat
touch
echo
mkdir
ln
cp
mv
rm
rmdir
Resumen

Slackware Linux intenta parecerse lo mas posible a Unix. Tradicionalmente,


los sistemas Unix son orientados hacia la lnea de comandos. Nosotros
tenemos una interfaz grfica de usuario en Slackware, pero la lnea de
comandos todava es el nivel principal de mando para el sistema. Por
consiguiente, es importante entender algunas de las rdenes de
administracin de archivos bsicas.
Las siguientes secciones explican los comandos de manejo de archivos mas
comunes y ejemplos de como se utilizan. Hay muchas otros comandos, pero
estos le ayudara a empezar. Los comandos se discuten muy brevemente
aqu. Usted encontrar ms detalle en las pginas del manual que acompaan
a cada comando.

ls
Este comando lista los archivos de un directorio. Los usuarios de Windows y
DOS notaran su similitud con el comando dir. Solo, ls(1) listara los archivos en
el directorio actual. Para ver lo que est en su directorio raz, usted podra
emitir estas rdenes:
$ cd /
$ ls
bin cdr dev home lost+found proc sbin tmp var
boot cdrom etc lib mnt
root suncd usr vmlinuz

El problema que mucha gente tiene con ese resultado es que no es fcil saber
cual es un directorio y cual es un archivo. Algunos usuarios prefieren que ls
agregue un identificador de tipo en cada lista, as:
93

$ ls -FC
bin/ cdr/ dev/ home/ lost+found/ proc/ sbin/ tmp/ var/
boot/ cdrom/ etc/ lib/ mnt/
root/ suncd/ usr/ vmlinuz

Los directorios tienen un slash al final del nombre, los ejecutables tiene un
asterisco, y as sucesivamente.
tambin pueden usarse ls para conseguir otras estadsticas en los archivos.
Por ejemplo, para ver las fechas de creacin, dueos, y permisos, usted
mirara una lista larga:
$ ls -l
drwxr-xr-x 2 root
drwxr-xr-x 2 root
drwxr-xr-x 2 root
drwxr-xr-x 14 root
drwxr-xr-x 4 root
drwxr-xr-x 10 root
drwxr-xr-x 8 root
drwxr-xr-x 3 root
drwxr-xr-x 2 root
drwxr-xr-x 2 root
dr-xr-xr-x 62 root
drwxr-x---x 12 root
drwxr-xr-x 2 root
drwxr-xr-x 5 root
drwxrwxrwt 4 root
drwxr-xr-x 21 root
drwxr-xr-x 18 root
-rw-r---r--- 1 root

bin
root
root
root
root
root
root
root
root
root
root
root
bin
root
root
root
root
root

4096 May 7 1994 bin/


4096 Feb 24 03:55 boot/
4096 Feb 18 01:10 cdr/
6144 Oct 23 18:37 cdrom/
28672 Mar 5 18:01 dev/
4096 Mar 8 03:32 etc/
4096 Mar 8 03:31 home/
4096 Jan 23 21:29 lib/
16384 Nov 1 08:53 lost+found/
4096 Oct 6 1997 mnt/
0 Mar 4 15:32 proc/
4096 Feb 26 02:06 root/
4096 Feb 17 02:02 sbin/
2048 Oct 25 10:51 suncd/
487424 Mar 7 20:42 tmp/
4096 Aug 24 1999 usr/
4096 Mar 8 03:32 var/
461907 Feb 22 20:04 vmlinuz

Suponga que usted quiere conseguir una lista de los archivos ocultos en el
directorio actual. Este simple comando hace eso:
$ ls -a
.
bin cdrom home
mnt sbin usr
..
boot dev lib
proc suncd var
.pwrchute_tmp cdr etc lost+found root tmp

vmlinuz

Archivos que comienza con un punto (llamados "archivos con punto") estn
ocultos cuando usted ejecuta ls. Usted los ver slo si coloca la opcin -a.
Hay muchos ms opciones que pueden encontrarse en la pgina manual. No
se olvide que usted puede combinar opciones.

94

cd
La orden cd se usa para cambiar el directorio de trabajo. Usted simplemente
coloca cd seguido de la ruta a donde quiere pasar. Aqu estan algunos
ejemplos:

darkstar:~$ cd /bin
darkstar:/bin$ cd usr
bash: cd: usr: No such file or directory
darkstar:/bin$ cd /usr
darkstar:/usr$

Note que si no comienza con slash , intenta cambiar a un directorio en el


directorio actual.
La orden cd no es como los otros comandos. Es una orden construida en el
shell. Esto no puede tener ningn sentido ahora mismo para usted.
Bsicamente significa no hay ninguna pgina del manual para esta orden. En
cambio, usted puede usar la ayuda del shell. As:
$ help cd

Desplegar las opciones para cd y cmo usarlas.

more
more(1) es lo que nosotros llamamos una utilidad pager. A menudo el
resultado de un comando en particular es demasiado grande para encajar en
una pantalla. Los comandos por si solos no saben encajar su output para
separar las pantallas. Ellos dejan este trabajo a la utilidad del pager.
El comando more separa las salidas por pantalla en pantallas individuales y
espera hasta que usted presione la barra espaciadora para continuar en la
siguiente pantalla. Apretando enter adelantara una lnea. Aqu esta un ejemplo
bueno:
$ cd /usr/bin
$ ls -l

Eso debe desplazar durante algn tiempo. Para separa la salida por pantalla
en varias pantallas, simplemente manjelo por tuberas con el comando more:
$ ls -l | more

95

Este es el carcter de tubo | (generalmente Alt+1). El tubo es la abreviatura


de decir tome el output de ls y manjelo con more. Usted puede conducir
por tuberas casi todo con el comando more, no solo ls. Conducir por
tuberias tambin se cubre en la seccion llamada Input/Output
Redireccionamiento y tuberas en el capitulo 8.

less
La orden more es bastante hbil, pero a menudo usted encontrara que usted
ha adelantado mas all de la pantalla que usted quera. more no proporciona
una manera de retroceder. El comando less(1) proporciona esa funcin. Se
usa de la misma forma que el comando more, por lo que los ejemplos
anteriores aplican aqu tambin. En resumen, less es mas que more.

cat
cat(1) es la abreviatura de "encadene". Fue diseado originalmente para
fusionar archivos de texto en uno, pero puede usarse para muchos otros
propsitos.
Para fusionar dos o mas archivos en uno, usted lista los archivos despues del
comando cat y entonces redireccina la salida a un archivo. cat trabaja con
salida estndar (standard output) y entrada estndar (standard input), as que
usted tiene que usar los caracteres de redireccionamiento del shell. Por
ejemplo:
$ cat file1 file2 file3 > bigfile

Esta orden toma el contenido de file1, file2 y file3 y lo fusiona todos en uno. La
nueva salida ser una salida estndar llamada bigfile.
Tambin puede usarse cat para mostrar archivos. Muchas personas usan cat
en archivos de textos con el comando more o less, asi:
$ cat file1 | more

Esto mostrara el archivo file1 y lo conduce por tuberas a travs del comando
more para que solo le muestre una pantalla a la vez.
otro uso corriente para cat es copiar archivos. Usted puede copiar cualquier
archivo con cat, as:
$ cat /bin/bash > ~/mybash

El programa /bin/bash se copia a su directorio home con el nombre "mybash".


Cat tiene muchos usos aqu solo discutimos algunos. Ya que cat hace uso de
la entrada estndar y de la salida estndar , es ideal para usarlo en scripts del
sheel o como parte de otras ordenes complejas.

96

touch
touch(1) se usa para cambiar el timestamp en un archivo. Usted puede
cambiar el timestamps de acceso y el timestamp de modificacin con esta
orden. Si el archivo especificado no existe, touch creara un archivo de
longitud cero con el nombre especificado. Para marcar un archivo con el
tiempo actual del sistema, usted debe usar este comando:
$ touch file1

Hay varias opciones para el comando touch, incluyendo opciones para


especificar que timestamp modificar, que tiempo usar y muchas mas. La
pagina del manual explica esto con detalle.

echo
El comando echo despliega el texto especificado en la pantalla. Usted
especifica cual string desplegar despus del comando echo. Por defecto
echo desplegara el string y una lnea de caracteres nueva despus. Usted
puede usar la opcin -n para suprimir la impresin de una nueva lnea. La
opcin -e causara que echo busque los caracteres de escape en el string y los
ejecute.

mkdir
Mkdir crea un nuevo directorio. Usted simplemente especifica el directorio a
crear y luego ejecuta mkdir. Este ejemplo crea el directorio hejaz en el
directorio actual:
$ mkdir hejaz

Usted puede tambin especificar la ruta as:


$ mkdir /usr/local/hejaz

La opcin -p le indica la mkdir hacer cualquier directorio raz. El ejemplo


anterior fallara si /usr/local no existiera. La opcin p creara el directorio /usr/local
y despues el usr/local/hejaz.
$ mkdir -p /usr/local/hejaz

ln
El comando ln(1) se usa para crear enlaces(Links) entre los archivos. Estos
enlaces pueden se duros o suaves(simblicos). Se explicaron las diferencias
entre los dos tipos de enlaces en la seccin llamada Enlaces(Links) en el
Capitulo 9. Si usted quisiera hacer un link simblico al directorio /var/media/mp3
y poner en el enlace en su directorio home, tendria que hacer esto:
$ ln -s /var/media/mp3 ~/mp3
97

La opcion -s le dice al ln hacer un link simblico. La prxima opcin es el


objetivo del enlace , y por ultimo como se llamara el enlace. En este caso, solo
creara un archivo llamado mp3 en su directorio home que apunte hacia
/var/media/mp3. Usted puede llamar el link con cualquier nombre que usted
quiera simplemente cambiando la ultima opcin.
Hacer un link duro es tan fcil como esto. Todo lo que tiene que hacer es
eliminar la opcin -s. Hacer un enlace duro como el anterior, seria as:
$ ln /var/media/mp3 ~/mp3

cp
cp(1) copia los archivos. Los usuarios de DOS notaran su similitud con el
comando copy. Hay muchas opciones para el cp, por lo que usted puede
echar una mirada al manual antes de usarlo.
El uso mas comn de cp es para copiar un archivo de una ubicacin a otra.
Por ejemplo:
$ cp hejaz /tmp

Esto copiara el archivo hejaz de su actual directorio al directorio /tmp.


Muchos usuarios prefieren mantener los timestamps, como en este ejemplo:
$ cp -a hejaz /tmp

Esto asegura que los timestamps no son modificados en la copia.


Para que se copien todos los archivos de un directorio a otro, usted hara lo
siguiente:
$ cp -R adirectory /tmp

Esto copiara el directorio adirectory a el directorio /tmp.


El cp tiene muchas mas opciones que se discuten con detalle en las paginas
del manual.

mv
El comando mv(1) mueve los archivos de una ubicacin a otra. Los usuarios
de DOS notarn la similitud con la orden move. Usted nombra la fuente y el
destino cuando ejecuta mv. Este ejemplo muestra el uso normal de mv:
# mv myfile /usr/local/share/hejaz

el mv tiene algunas opciones que se documentan en la pagina del manual.

98

rm
rm(1) elimina los archivos y rboles de directorios. Los usuarios de DOS
notarn la similitud entre del y el comando deltree. los rm pueden ser muy
peligrosos si usted no se fija. Linux no proporciona una forma de recuperar los
archivos.
Para quitar un solo archivo especifique su nombre cuando ejecute el comando
rm:
$ rm file1

Si el archivo tiene los permisos de leer desactivados, usted conseguir un


mensaje de error. Para forzar la eliminacin del archivo sin importar lo que
pase, coloque la opcin -f:
$ rm -f file1

Para quitar un directorio entero usted utiliza las opciones -r y -f juntas. ste es
un buen ejemplo de cmo eliminar directorios enteros de su unidad de disco
duro. Usted realmente no quiere hacer esto. Pero aqu esta sin embargo el
comando:
# rm -rf /

Tenga cuidado con el rm; se le puede salir el tiro por la culata. Hay muchas
mas opciones que se discuten con detalle en la pagina del manual.

rmdir
rmdir(1) elimina directorios del filesystem. El directorio debe estar vaco antes
de que pueda quitarse. La sintaxis simplemente es:
$ rmdir <directory>

Este ejemplo quitar el subdirectorio hejaz del directorio de trabajo actual:


$ rmdir hejaz

Si ese directorio no existe ,el rmdir le dir. Usted tambin puede usar una ruta
completa para indicar un directorio a eliminar, como se muestra en este
ejemplo:
$ rmdir /tmp/hejaz

Este ejemplo trata de quitar el directorio hejaz que esta dentro del directorio
/tmp.
Usted tambin puede quitar un directorio y todos sus directorios raz usando la
opcin p.
$ rmdir -p /tmp/hejaz

Esto intentara quitar primero el directorio hejaz dentro de /tmp. Si lo logra,


intentara quitar despus el directorio /tmp. rmdir continuara haciendo esto
99

hasta que consiga un error o hasta que el rbol de directorios sea eliminado
por completo.

Resumen
Este captulo cubri muchos programas que manipulan archivos y directorios.
Usted debe saber crear, eliminar, y mover casi todo en el filesystem. Usted
tambin debe saber cmo listar y tocar los archivos si lo necesita. Finalmente,
usted debe saber por qu el comando rm -rf / es una muy mala idea.
Finalmente, usted debe saber por qu el rm - el rf / es una idea muy mala.

100

Capitulo 11. Control de Procesos


Contenido
Backgrounding
Foregrounding
ps
kill
top
Resumen
Cada programa que se ejecuta se llama proceso. Estos procesos van desde el
servidor X window a los programas de sistemas (daemons) que se ejecutan
cuando la computadora arranca. Cada proceso se ejecuta como un usuario
particular. Los procesos que comienza cuando arranca la maquina
generalmente son ejecutados por root o por nadie. Los procesos que usted
inicie corrern como usted. Los procesos ejecutados por otros usuarios
corrern como esos usuarios.
Usted tiene el control sobre todos los procesos que usted comienza.
Adicionalmente root, tiene todo el control de todos los procesos, incluyendo
aquellos iniciados por otros usuarios. Los procesos pueden controlarse y
supervisarse a travs de varios programas, y con algunos comandos del
sheel.

Backgrounding
Los programas que se inician en el primer plano de la lnea de comandos.
Esto le permite ver todo el output del programa e interactuar con el. Sin
embargo, hay varias opciones cuando usted necesite ejecutar un programa
sin tener que cambiarse a otro terminal. Esto se llama ejecutar el programa en
el fondo, y hay varias maneras de hacerlo
La primera forma para mandar a un proceso al fondo es agregando un
ampersand(&) al comando cuando usted inicia el programa. Por ejemplo,
suponga que usted quiere usar el comando mp3 player para escuchar un
directorio full de mp3s, pero usted necesita hacer otras cosas en el mismo
terminal. El siguiente comando pondra en marcha el reproductor de mp3s en
el fondo:
$ amp *.mp3 &

El programa se ejecutara de forma normal y usted ser devuelto al prompt.


La otra forma de mandar al fondo un proceso es hacerlo mientras se esta
ejecutando. Primero, ponga en marcha un programa. Mientras este corriendo
presione, ctrl+z. Esto suspende el proceso. Un proceso suspendido es
prcticamente un proceso en pausa. Detiene el funcionamiento
momentneamente, pero puede comenzar de nuevo cuando usted quiera.
Una vez que usted suspende un proceso, usted es devuelto al prompt. Usted
puede mandar al fondo al proceso escribiendo:
101

$ bg

Ahora, el proceso suspendido est corriendo en el fondo.

Foregrounding
Si usted necesita interactuar con un proceso que esta en el fondo, usted
puede devolverlo al primer plano. Si usted tiene solamente un proceso en el
fondo, usted puede regresarlo escribiendo:
$ fg

Si el programa todava esta corriendo, este tomara el control sobre su terminal


y usted no ser devuelto al prompt. A veces, un programa puede terminar su
tarea mientras esta en el fondo. En ese caso usted conseguir un mensaje
as:
[1]+ Done

/bin/ls $LS_OPTIONS

Esto le indica que los procesos que estaban en el fondo han terminado.
Es posible tener varios procesos en el fondo al mismo tiempo. Cuando esto
pasa usted necesita saber que proceso es el que usted quiere traer del fondo
al primer plano. Simplemente teclee fg y traer al primer plano el ultimo
proceso que usted envi al fondo. Qu ocurre si usted tiene una lista entera
de procesos en el fondo? Por suerte, bash incluye un comando para listar
todos los procesos. Se llama jobs y muestra algo como esto:
$ jobs
[1] Stopped
[2]- Stopped
[3]+ Stopped

vim
amp
man ps

Esto le muestra la lista de todos los procesos que estn en el fondo. Como
puede ver todos estn detenidos(Stopped). Esto significa que los procesos
estn suspendidos. El nmero es la identificacin para todos los procesos
del fondo. La identificacin con un signo de mas al lado (man ps) significa que
ese proceso ser enviado a el primer plano cuando usted escriba fg.
Si usted quisiera traer al primer plano a vim tendra que escribir:
$ fg 1

Y vim volvera de nuevo a la consola. Enviar los procesos al fondo puede ser
muy til si usted solo puede tener un terminal conectado a conexin
telefnica. Usted puede tener varios procesos en ese terminal, y cambiar
peridicamente entre ellos.

102

ps
Ahora que ya sabe cambiar de un lado a otro los procesos que usted a
iniciado en la lnea de comando. Y sabe tambin que hay muchos procesos
funcionando al mismo tiempo. Como usted lista todos estos programas?
Bien, usted necesita usar el comando ps(1). Este comando tiene muchas
opciones, nosotros solo cubriremos las mas importantes aqu. Para una
explicacin mas completa, vea la pagina del manual para ps.
Tecleando simplemente ps le dar una lista completa de los programas que
se ejecutan en su terminal. Muchas veces, ser una lista muy corta:
$ ps
PID TTY
7923 ttyp0
8059 ttyp0

TIME CMD
00:00:00 bash
00:00:00 ps

Aunque aqu no hay muchos procesos, la informacin es muy tpica. Usted


conseguir las mismas columnas que usa el ps regularmente no importa
cuantos procesos se estn ejecutando.
Bien , PID es la identificacin del proceso. A todos los procesos se les da un
identificador nico. En los kernels 2.2.x, el identificador de procesos puede
estar entre 1 y 32767. A cada proceso se le asigna el prximo PID que este
libre. Cuando se elimina un proceso(o se mata, como se explica en la prxima
seccin), este deja libre su PID. Los mas probable es que esto cambie con la
prximas series de kernels 2.4 y con la introduccin de los PID de 32-bit.
La columna TTY indica en que terminal se esta ejecutando el proceso.
Haciendo un ps simple se listan solo los programas que se estn ejecutando
en el terminal actual, por lo que todos los procesos dan la misma informacin
en la columna TTY. Como usted puede ver, ambos procesos listados estn
corriendo en el ttyp0. Esto indica que ellos estn ejecutndose de forma
remota o desde cualquier tipo de terminal X.
La columna TIME indica la cantidad de tiempo que el CPU ha estado
ejecutndolo. Esto es diferente a la cantidad de tiempo real que tarda en
ejecutarse un proceso. Recuerde que Linux es un sistema operativo
multitarea. Hay muchos procesos que corren todo el tiempo, y cada uno
consigue una pequea porcin del tiempo del procesador. As que, la columna
TIME debe mostrar mucho menos tiempo por cada proceso del que toma
realmente para ejecutarse. Si usted ve varios minutos de mas en la columna
TIME, esto podra significar que algo esta mal.
Finalmente, la columna CMD muestra realmente lo que es el programa en si.
Solo indica el nombre del programa, no indica cualquier opcin u otra
informacin similar. Para obtener esa informacin, usted necesita usar una de
las muchas opciones del ps.
Usted puede conseguir una lista completa de los procesos que corren en su
sistema usando la combinacin correcta de opciones. Esto probablemente
producir una larga lista de procesos, por lo que aqu reducimos el output:
$ ps -ax
PID TTY
1?
2?
3?
4?

STAT TIME COMMAND


S
0:03 init [3]
SW 0:13 [kflushd]
SW 0:14 [kupdate]
SW 0:00 [kpiod]
103

5?
SW 0:17 [kswapd]
11 ?
S
0:00 /sbin/kerneld
30 ?
SW 0:01 [cardmgr]
50 ?
S
0:00 /sbin/rpc.portmap
54 ?
S
0:00 /usr/sbin/syslogd
57 ?
S
0:00 /usr/sbin/klogd -c 3
59 ?
S
0:00 /usr/sbin/inetd
61 ?
S
0:04 /usr/local/sbin/sshd
63 ?
S
0:00 /usr/sbin/rpc.mountd
65 ?
S
0:00 /usr/sbin/rpc.nfsd
67 ?
S
0:00 /usr/sbin/crond -l10
69 ?
S
0:00 /usr/sbin/atd -b 15 -l 1
77 ?
S
0:00 /usr/sbin/apmd
79 ?
S
0:01 gpm -m /dev/mouse -t ps2
94 ?
S
0:00 /usr/sbin/automount /auto file /etc/auto.misc
106 tty1 S
0:08 -bash
108 tty3 SW 0:00 [agetty]
109 tty4 SW 0:00 [agetty]
110 tty5 SW 0:00 [agetty]
111 tty6 SW 0:00 [agetty]
[output cut]

La mayora de estos procesos se inician en el arranque de la mayora de los


sistemas. Yo he echo algunas modificaciones a mi sistema, por lo que su
contenido puede variar. Sin embargo, usted ver la mayora de estos
procesos tambin en su sistema. Como puede ver con estas opciones del
comando ps se pueden ver la diferentes opciones de cada proceso. Adems
muestra unas cuantas columnas mas e informacin mas interesante.
Primero, usted puede darse cuenta que la mayora de estos procesos se
estn ejecutando en tty ?. Esos procesos son aquellos que se iniciaron en un
terminal que ya no esta activo. Por consiguiente, ellos ya no estn asignados
a ningn terminal en particular. Segundo, hay una nueva columna: STAT. All
se muestra el estado de los procesos. S significa durmiendo(Sleeping): el
proceso esta esperando que algo ocurra. Z representa un proceso Zombie. Un
proceso zombie representa aquellos procesos cuyos padres han muerto,
dejando el proceso nio atrs. Esto no es una cosa buena.
Si usted quiere ver mas informacin sobre los procesos que se estan
ejecutando, pruebe con esto:
$ ps -aux
USER
PID %CPU %MEM VSZ RSS TTY
STAT START TIME COMMAND
root
1 0.0 0.0 344 80 ?
S Mar02 0:03 init [3]
root
2 0.0 0.0 0 0 ?
SW Mar02 0:13 [kflushd]
root
3 0.0 0.0 0 0 ?
SW Mar02 0:14 [kupdate]
root
4 0.0 0.0 0 0 ?
SW Mar02 0:00 [kpiod]
root
5 0.0 0.0 0 0 ?
SW Mar02 0:17 [kswapd]
root
11 0.0 0.0 1044 44 ?
S Mar02 0:00 /sbin/kerneld
root
30 0.0 0.0 1160 0 ?
SW Mar02 0:01 [cardmgr]
bin
50 0.0 0.0 1076 120 ?
S Mar02 0:00 /sbin/rpc.port
root
54 0.0 0.1 1360 192 ?
S Mar02 0:00 /usr/sbin/sysl
root
57 0.0 0.1 1276 152 ?
S Mar02 0:00 /usr/sbin/klog
root
59 0.0 0.0 1332 60 ?
S Mar02 0:00 /usr/sbin/inet
root
61 0.0 0.2 1540 312 ?
S Mar02 0:04 /usr/local/sbi
root
63 0.0 0.0 1796 72 ?
S Mar02 0:00 /usr/sbin/rpc.
root
65 0.0 0.0 1812 68 ?
S Mar02 0:00 /usr/sbin/rpc.
root
67 0.0 0.2 1172 260 ?
S Mar02 0:00 /usr/sbin/cron
root
77 0.0 0.2 1048 316 ?
S Mar02 0:00 /usr/sbin/apmd
root
79 0.0 0.1 1100 152 ?
S Mar02 0:01 gpm
104

root
94 0.0 0.2 1396 280 ?
chris
106 0.0 0.5 1820 680 tty1
root
108 0.0 0.0 1048 0 tty3
root
109 0.0 0.0 1048 0 tty4
root
110 0.0 0.0 1048 0 tty5
root
111 0.0 0.0 1048 0 tty6
[output cut]

S Mar02 0:00 /usr/sbin/auto


S Mar02 0:08 -bash
SW Mar02 0:00 [agetty]
SW Mar02 0:00 [agetty]
SW Mar02 0:00 [agetty]
SW Mar02 0:00 [agetty]

Esto es una informacin entera. Bsicamente, agrega informacin sobre que


usuario inicio el proceso, cuantos recursos de sistema esta usando(las
columnas %CPU , %MEM, VSZ, y RSS),y en que fecha se inicio el proceso.
Obviamente, mucha de esa informacin puede ser til para un administrador
de sistemas. Tambin plantea otra cosa: la informacin se va al borde de la
pantalla para que usted no pueda verla por completo. Bien, la opcin "-w" ,
arreglara eso.
No es muy bonito pero hace el trabajo. Usted tiene la informacin completa
para cada proceso. Aun Hay mas informacin que usted puede mostrar sobre
cada proceso. Revise la pagina del manual ps en profundidad. Sin embargo,
las opciones mostradas son las ms populares y son las que usted necesitara
mas a menudo.

kill
En ocasiones , los programas funcionan mal y usted necesita ejecutarlos de
nuevo. El programa para este tipo de administracin se llama el kill(1), y
puede usarse por manipular los procesos de varias maneras. El uso mas
obvio de Kill es matar los procesos. Usted necesita hacer esto cuando un
programa se ha ejecutado por largo tiempo y ha estado agotando los recursos
del sistema, o si usted simplemente esta enfermo por tenerlo ejecutndose.
Para matar un proceso, usted necesita conocer su nombre o su PID. Para
obtener el PID, use el comando ps como explicamos en la seccin anterior.
Por ejemplo, para matar el proceso 4747, usted debe escribir lo siguiente:
$ kill 4747

Note que usted tiene que ser el dueo del proceso para matarlo. Esto es una
funcin de seguridad. Si se le permitiera matar procesos iniciados por otros
usuarios, seria posible hacer todo tipo de cosas malvolas. Claro, root puede
matar cualquier proceso en el sistema.
Hay otra variedad del comando kill llamada killall(1). Este programa hace
exactamente lo que dice: mata todos los procesos que tienen un cierto
nombre. Si usted quisiera matar todos los procesos ejecutados por vim,
tendra que teclear el siguiente comando:
$ killall vim

Todos los procesos del vim estarn muertos ahora. Haciendo esto como root
matara todos los procesos del vim de todos los usuarios. Esto plantea una
forma interesante de patear a todos(incluyndose) fuera del sistema:
# killall bash

105

Algunas veces el comando kill no logra hacer el trabajo.. Ciertos procesos no


morirn con kill. Usted necesitara usar una forma mas potente. Si ese molesto
PID 4747 no estuviera respondiendo a la peticin de kill, usted podra hacer lo
siguiente:
$ kill -9 4747

Eso causara la muerte certera del proceso 4747. Usted puede hacer lo mismo
con killall. Lo que hace esto es enviar una seal diferente al proceso. El
comando kill normalmente enva una seal SIGTERM(termine) al proceso. kill
-9 enva una seal SIGKILL(muerte) al proceso. Hay una lista entera de
seales a su disposicin. Usted puede conseguir una lista de seales
tecleando lo siguiente:
$ kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD
18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN
22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO
30) SIGPWR

El numero debe usarse con el comando kill, mientras que el nombre menos el
prefijo "SIG" debe usarse con el killall. Aqu hay otro ejemplo:
$ killall -KILL vim

Un uso final para kill es reiniciar un proceso. Enviando un SIGHUP causara


que la mayoria de los proceson re-lean sus archivo de configuracion. Esto es
especialmente util despues de editar un archivo de configuracion de cualquier
proceso de sistema.

top
Finalmente, hay un comando que usted puede usar para listar la informacin
de actualizacin de los procesos que se ejecutan en el sistema. Esta orden se
llama top(1), y se arranca escribiendo esto:
$ top

Esto desplegara una pantalla completa llena de informacin sobre los


procesos que se ejecutan en el sistema, as como alguna informacin global
sobre el sistema. Esto incluye el promedio de carga(Load average), numero
de procesos, el estado del CPU, informacin sobre memoria libre, y detalles
sobre los procesos incluso el PID, usuario, prioridad, uso de memoria y CPU,
tiempo ejecutndose y nombre del programa,

106

Figura 11-1. Ejemplo del programa top.

Es llamado top porque los programas de uso mas intensivo de CPU se listan
el tope. Algo interesante de notar es que top listara primero lo procesos mas
inactivos(y algunos activos) debido a su uso de CPU. Sin embargo, top es
bastante til para determinar que programa esta portndose mal y qu
necesita ser matado.

Resumen
Este capitulo explico lo que es un proceso y como usted puede controlarlos.
Esto incluye backgounding y foregounding, as como el uso de ps, top y kill
para mantenerlo en lnea. Usted debe poder determinar qu procesos estn
corriendo en su sistema y saber librarse de ellos si estos dejan de
comportarse.

107

Capitulo 12. Administracion Esencial del


Sistema
Contenido
Usuarios y Grupos
Apagando correctamente
Resumen
Usted es el administrador de cualquier computadora en la que usted sea root.
Esta podria ser una computadora de escritorio con dos ususarios, o podria ser
un servidor grande con un centenar de ususarios. Indifirentemente, usted
necesita saber como manejar a los usuarios y como apagar correctamente el
sistema. Ambas operaciones lucen aparentemenete simples, pero tienen
algunos truquillos a los que hay que aconstumbrarse. Ademas, usted tendra
que lidiar con algunas ideas detras del funcionamineto del sistema de
contraseas.

Usuarios y Grupos
Scripts proporcionados
La manera mas fcil de manejar a los usuarios y grupos es con los programas
y scripts proporcionados. Slackware incluye los programas adduser,
userdel(8), chfn(1), cdsh(1) y passwd(1) para trabajar con los usuarios.
Slackware incluye el groupadd(8), groupdel(8) y groupmod(8) para
tarabajar con los grupos. Con excepcio de chfn, chsh y passwd, estos
programas solo pueden ser ejecutados por root y se localizan por consiguiente
en /usr/bin. chfn , chsh y passwd pueden ser ejecutados por cualquier usuario
y se localizan en /usr/bin.
Los usuarios se agregan con el programa adduser. Nosotros comenzaremos
haciendo un recorrido por el programa entero, mostrando todas las preguntas
que se hacen y una breve descripcin de lo que significan. En todas la
preguntas se incluye una respuesta predefinida, y usted puede escogerla para
todas las preguntas, a menos que usted quiera cambiar algo.
# adduser
Login name for new user (8 characters or less) []: jellyd

Este es el nombre que el usuario utilizara para iniciar sesin. Debe ser de
ocho caracteres o menos. Por lo general, se utilizan solo letras minsculas al
menos que usted quiera escribir letras en maysculas en momentos
inoportunos.
108

User id f or jellyd [ defaults to next available]:

La identificacin del usuario (UID) es como se determinan ciertas propiedades


en Linux. Cada usuario posee un numero nico, empezando por 1000 en
Slackware. Usted puede escoger un UID para el nuevo usuario, o puede
permitir al adduser asignar el prximo numero libre.
Initial group for jellyd [users]:

Todo los usuarios son colocados en el grupo "users" por defecto. Usted podra
colocar al nuevo usuario en grupo diferente, pero no es recomendable.
Additional groups for jellyd (seperated with commas

Esta pregunta le permite incluir al nuevo usuario en grupos adicionales. Es


posible poner a un usuario en varios grupos al mismo tiempo. Esto es til si
usted ha establecido grupos para algunas cosas como modificar archivos de
sitios web, jugar, y as sucesivamente.
jellyd's home directory [/home/jellyd]:

El directorio Home tiene por defecto el valor /home. Si usted ejecuta un sistema
muy grande, es posible que haya movido los archivo home a un directorio
diferente. Esto le permite cambiar donde estar el directorio /home del usuario.
Usted tambin puede desactivar una cuenta cambiando el directorio home de
algn usuario a algo como /bin/false, aunque este no es el mtodo
recomendado.
jellyd's shell [/bin/bash]:

bash es el shell por defecto de Slackware Linux, y estar bien para la mayora
de las personas. Si su nuevo usuario viene de trabajar en un sistema Unix, es
posible que esta familiarizado con un shell diferente. Usted puede cambia su
shell ahora, o ellos pueden hacerlo despues usando el comando chsh.
jellyd's account expiry date (YYYY-MM-DD) []:

Las cuentas pueden configurarse para expirar en una fecha especifica. Por
defecto no hay ninguna fecha de expiracin. Usted puede cambiar esto, si
usted quiere. Esta opcin podra ser til para las personas que manejan un
ISP(Proveedor de Servicios de Internet) que podran hacer que una cuenta
expire en una cierta fecha, a menos que ellos reciban el prximo pago.
OK, I'm about to make a new account. Here's
what you entered so far:
New login name: jellyd
New UID: [Next available]
Initial group: users
Additional groups: [none]
Home directory: /home/jellyd
Shell: /bin/bash
Expiry date: [no expiration]
This is it... if you want to bail out, hit Control-C.
Otherwise, press ENTER to go ahead and make the account.
109

Usted puede ver ahora toda la informacion que ha ingresado sobre la nueva
cuenta, y se le da la oportunidad de detenerse. Si usted coloca algo
incorrectamente, debe presionar Control+C y empezar de nuevo. Si no, usted
puede presionar enter y la cuenta se creara.
Making new account...
Changing the user information for jellyd
Enter the new value, or press return for the default
Full Name []: Jeremy
Room Number []: Smith 130
Work Phone []:
Home Phone []:
Other:

Toda esta informacin es opcional. Usted no tiene que colocar nada de esto si
usted no quiere, el usuario puede cambiar esta informacin usando el
comando chfn. Sin embargo, puede ser muy til ingresar el nombre completo
y los numero de telfono, en caso de que usted necesite ponerse en contacto
con esa persona.
Changing password for jellyd
Enter the new password (minimum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password:
Re-enter new password:
Password changed.
Done...

Usted tiene que ingresar una contrasea para el nuevo usuario.


Generalmente, si el nuevo usuario no este presente en este momento, usted
puede colocar una contrasea predeterminada simple y decirle al usuario que
lo cambie luego por alguna contrasea ms segura.
Escogiendo la contrasea
Tener una contrasea segura es la primera lnea de defensa para evitar
se crackeado. Usted no querr tener una contrasea fcil de suponer,
porque seria fcil para alguien entrar en su sistema. Una contrasea
segura seria una serie aleatoria de caracteres, incluyendo minsculas y
maysculas, nmeros y caracteres especiales.
En general, las normas de sentido comn dicen: no escoja una
contrasea que seal el cumpleaos de alguin, una frase comun, algo
escrito en su escritorio, o algo que es facilmente asociado con usted.
"secure1" tambin es una pena.
Quitar a los usuarios no es nada difcil. Solo ejecute userdel con el nombre de
la cuenta que desea eliminar. Usted tiene que asegurarse que el usuario no
esta dentro del sistema, y que ningn proceso este ejecutndose por ese
usuario. Tambin, recuerde que una vez que ha eliminado al usuario, estos
estarn fuera.
# userdel jellyd

110

Haciendo esto eliminara al tipo molesto "jellyd" de su sistema. Esto elimina el


usuario del directorio /etc/passwd y del /etc/group, pero no elimina la carpeta
home del usuario. Si usted desea eliminar el directorio home tambin, usted
debe hacer lo siguiente:
# userdel -r jellyd

El proceso para desactivar una cuenta ser tratado en la seccin llamada


Cambiando Contraseas ya que esto involucra modificar el password del
usuario. El mtodo para cambiar la informacin de la cuneta se cubre en la
seccin llamada Cambiando Contraseas en la seccin llamada Cambiar la
informacin del usuario.
Los programas para agregar y quitar los grupos son muy simples. gruopadd
agrega otra entrada al archivo /etc/group con una identificacin nica de grupo,
mientras que groupdel elimina el grupo especificado. Si usted quiere puede
editar el archivo /etc/group para agregar usuarios a un grupo especifico.
Usted crea un grupo haciendo lo siguiente:
# groupadd cvs

Y lo elimina haciendo esto:


# groupdel cvs

A Mano
Claro, es posible agregar, modificar, quitar usuarios y grupos a mano.
Despus de observar este procedimiento, usted lo encontrara mucho ms
conveniente que lo scripts.
Primero, nosotros agregamos un nuevo usuario a los archivos /etc/passwd(5),
etc/shadow(5). Y el /etc/group(5). El archivo passwd contiene alguna informacin
sobre el usuario, pero (aunque parezca extrao) no su contrasea. El archivo
passwd puede ser ledo por cualquiera, pero usted no quiere que las
contraseas encriptadas sean ledas por todo el mundo ya que esto otorga a
los crackers un buen sitio para empezar. As que las contraseas encriptadas
se guardan en el archivo shadow, que solo puede ser ledo por root y la
contraseas de todos estn escritas en el archivos passwd como "x". El archivo
group lista todos los grupos y quien esta dentro de cada uno.
Prosigamos, examine el archivo /etc/passwd y deduzca como agregar a
alguien. Una entrada tpica en el archivo passwd luce como esta:
chris:x:1000:100:Chris Lumens,Room 2,,:/home/chris:/bin/bash

Cada lnea es una entrada para cada persona, y los campos en cada lnea
estn separados por dos puntos ":". Los campos son: Login name, password
encriptada, user ID, group ID, la informacin de contacto separada por comas,
el directorio home y el shell. Lo que usted tiene que hacer es agregar una
lnea al final del archivo, rellenando la informacin apropiada.
Asegrese que la contrasea sea una x, que el user ID sea nico, que ellos
estn en el grupo 100(el grupo "users" en Slackware), y que ellos tengan una
shell valida.
Luego, nosotros necesitaremos agregar una entrada en el archivo /etc/shadow
que contiene las contraseas. Una entrada tpica es algo as:
111

chris:$1$w9bsw/N9$UWLr2bRER6YyBS.CAEp7R.:11055:0:99999:7:::

De nuevo, cada lnea es una entrada para una persona y cada campo esta
separado por ":". Los campos son: login name, contrasea encriptada, la
fecha (Enero 1, 1970) en que la contrasea fue cambiada por ultima vez, das
que pasaran antes de que la contrasea pueda ser cambiada, das despus
en que se debe cambiar la contrasea, das antes de la expiracin de la
contrasea del usuario para notificarle, el dia en que la cuenta ser anulada, y
un campo reservado.
Como usted puede ver. La mayora de esto es para la informacin de
expiracin de la cuenta. Si usted no esta usando la informacin de expiracin,
usted solo necesita rellenar unos campos con algunos valores especiales. Por
otro lado, usted necesitara hacer algunos clculos y decisiones antes de que
usted pueda rellenar estos campos. Para nuestro nuevo usuario, coloque
alguna basura aleatoria en el campo de la contrasea. No se preocupe por la
contrasea en este momento usted tendr que cambiarla dentro de algunos
minutos. El nico carcter que usted no puede agregar en el campo de la
contrasea es ":". Deje en blanco el campo "das desde que la contrasea
cambio". Escriba 0,999999 y 7 as como se ve en el ejemplo, y deje el espacio
en blanco en los otros campos.
Para aquellos de ustedes que estn viendo mi contrasea encriptada y
piensan que pueden entrar en mi sistema, sigan adelante. Si usted puede
crakear esa contrasea, usted obtendr la contrasea de un sistema de
prueba de firewalls. Ahora esto es til .
Ya que todos por defecto somos miembros del grupo "users", usted no
necesita agregar al nuevo usuario al. Si usted quiere crear un nuevo grupo o
agregar al nuevo usuario a otros grupos, usted necesita modificar el archivo
etc/group. Aqu esta una entrada tpica:
cvs::102:chris,logan,david,root

Los campos son nombre del grupo, contrasea del grupo, group ID y los
miembros del grupo. Crear un nuevo grupo es facil basta con agregar una
nueva lnea con una nica group ID y listar a todas las personas que usted
quiere agregar al grupo. Cualquier usuario que este en el nuevo grupo y este
dentro del sistema tendr que salir y volver a entrar para que estos cambio
surtan efecto.
Ahora, volvamos y utilicemos el comando passwd para crear una nueva
contrasea para el nuevo usuario. Despus, utilice el comando mkdir para
crear el directorio Home del nuevo usuario en la ubicacin que usted
especifico en el archivo /etc/passwd.
Si usted ha instalado el sendmail(8) en su sistema y activamente usa el
correo, usted necesita crear un nuevo archivo en /var/spool/mail con los
permisos apropiados y propiedades para este nuevo usuario. Aqu hay un
ejemplo:
# touch /var/spool/mail/jellyd
# chown jellyd.users /var/spool/mail/jellyd
# chmod 660 /var/spool/mail/jellyd

Estos comandos crearan un archivo de correo para el nuevo usuario "jellyd" y


configurara las propiedades y permisos correctos.
112

Para quitar un usuario simplemente elimine todo lo que usted creo. Quite la
entrada del usuario de los archivos /etc/passwd y /etc/group. Quite su nombre de
cualquiera de los grupos en el archivo etc/group, quite su archivo mail spool y
borre su directorio home si es necesario.
Quitar un grupo es fcil simplemente debe quitar la entrada del archivo
/etc/group.

Cambiando Contraseas
El programa passwd cambia las contraseas modificando el archivo
/etc/shadow. Este archivo contiene todas las contraseas del sistema en un
formato encriptado. Para cambiar su contrasea usted debe escribir:
$ passwd
Changing password for chris
Old password:
Enter the new password (minumum of 5, maximum of 127 characters)
Please use a combination of upper and lower case letters and numbers.
New password:

Como usted puede ver, se le pregunta por su contrasea vieja. No aparecer


en la pantalla nada de lo que usted escribe, justo igual como el inicio de
sesin. Entonces, se le indica que introduzca la nueva contrasea. passwd
realiza muchos chequeos a su nueva contrasea, y le indicara si su nueva
contrasea no pasa alguno de sus chequeos. Usted puede ignorar sus
advertencias. Se le pedir que coloque de nuevo su nueva contrasea para
confirmar.
Si usted es root, usted puede, adems, cambiar la contrasea de cualquier
otro usuario:
# passwd ted

Usted tendr que pasar por el mismo procedimiento anterior, solo que usted
no tendr que colocar la vieja contrasea. (Otro de los beneficios de ser
root...)
Si usted tiene algunos alborotadores en su sistema, usted puede desactivar
temporalmente sus cuentas. Mas adelante, usted puede habilitarlas de nuevo.
Ambas cosas pueden hacerse con el comando passwd. Para desactivar una
cuenta haga lo siguiente estando como root:
# passwd -l david

Esto cambiara la contrasea de David a algo que nunca podr adivinar.


Despus, usted puede devolverle su contrasea usando el siguiente
comando:
# passwd -u david

Ahora, la cuenta de David vuelve a su estado normal. Desactivar una cuenta


podra ser muy til cuando alguien no esta cumpliendo con las reglas que
usted a definido para su sistema o si ellos han exportado una copia muy
grande de xeyes(1) a su escritorio X.

113

Cambiando la informacion del ususario


Hay dos tipos de informacin que un usuario puede cambiar cuando quiera: su
shell y su informacion de contacto. Slackware Linux usa los comandos chsh
(change shell) y chfn (change finger) para modificar estos valores.
Un usuario puede escoger cualquier shell de la lista que se encuentra en el
archivo /etc/shells. Para la mayora de las personas bash estara bien. Otros
podran estar familiarizados con un shell tipo Unx y podrian querer usar uno
que ellos ya conozcan. El shell se cambia usando el comando chsh:
$ chsh
Password:
Changing the login shell for chris
Enter the new value, or press return for the default
Login Shell [/bin/bash]:

Despus de colocar su contrasea, introduzca la ruta completa al nuevo shell.


Asegrese de que aparezca en el archivo /etc/shell primero. root tambien puede
cambiar el shell de un usuario ejecutando el comando chsh usando el
nombre de usuario como complemento.
La informacin de contacto es informacin opcional como su nombre
completo, nmeros de telfono y direccin de habitacin por ejemplo. Esto
puede cambiarse usando el comando chfn siguiendo el mismo procedimiento
que utilizo para crear la cuenta. Como de costumbre, root puede cambiar la
informacin de contacto de cualquier usuario.

Apagando Correctamente
Es muy importante que el sistema sea cerrado correctamente. Si lo apaga
simplemente presionando el botn de power podra causar serios daos en el
filesystem. Cuando el sistema esta encendido, los archivos estn en uso aun
cuando usted no este haciendo nada. Recuerde que hay muchos procesos
ejecutndose en el fondo todo el tiempo. Estos procesos estn controlando el
sistema y mantiene muchos archivos abiertos. Cuando usted simplemente
apaga el sistema, estos archivos no se cierran adecuadamente y se daan.
Dependiendo de que archivos se daen, el sistema podra daarse
permanentemente. En cualquier caso, usted tendr que pasar por un largo
proceso de chequeo cuando inicie de nuevo su sistema.
As, que cuando usted va a reiniciar o apagar su sistema, es importante
hacerlo de la manera correcta. Hay varias manera de hacerlo; usted puede
escoger la que le parezca mas divertida. La mayora de los mtodos para
apagar el sistema pueden aplicarse para reiniciar.
El primer mtodo es con el programa shutdown(8), y probablemente este es
el ms popular. Shutdown puede usarse para reiniciar o apagar el sistema en
un momento dado, y puede desplegar un mensaje de aviso a todos los
usuarios del sistema.
El uso bsico de shutdown para apagar la computadora es:
# shutdown -h now

114

En este caso, nosotros no vamos a enviar ningn mensaje especial a los


usuarios; ellos veran el mensaje predeterminado de cierre. "now"(ahora) es el
tiempo que queremos esperar para apagar, y "-h" significa detener el sistema.
Esta no es una manera muy amistosa de proceder en un sistema multiusuario,
pero funciona bien en su computadora personal. Una buena manera de
apagar en un sistema multiusuario seria dar la advertencia y un poco de
tiempo a todos de antemano:
# shutdown -h +60

Esto apagara el sistema despus de una hora (60 minutos), lo cual esta bien
para un sistema multiusuario normal. Los sistemas importantes pueden fijar
sus momentos fuera de servicio por adelantado y advertencias acerca de l en
/etc/motd(5).
Para reiniciar el sistema puede usar el mismo comando pero seguido de "-r"
en vez de "-h":
# shutdown -r now

Usted puede hacer la misma indicacion sobre el tiempo de cierre. Hay muchas
otras cosas que usted puede hacer con shutdown para controlar cuando
detener o apagar la maquina. Vea las pagina del manual para mas detalle.
La segunda manera de apagar o reiniciar es usando los comandos halt(8) y
reboot(8). Como lo indican sus nombres, halt dentendra el sistema
inmediatamente y rebbot lo reinicara. reboot es simplemente un link simbolico
hacia halt. Ello se utilizan de esta manera:
# halt
# reboot

Una forma de bajo-nivel para reiniciar o apagar el sistema es hablar


directamente con el init. Todos los otros mtodos son maneras absolutamente
convenientes de hablar con init, pero usted puede decirle directamente que
hacer usando el comando telinit(8) (note que solamente tiene una "l").
Usando telinit usted le dice que runlevel ejecutar para apagar o reiniciar el
sistema, esto causara que se ejecute un script especial. Este script matara o
detendr los procesos necesarios para ese runlevel. Esto funciona para
reiniciar y apagar porque los dos son runlevels especiales.
# telinit 0

Runlevel 0 es el modo de apagar. Dicindole al init que entre en runlevel 0


causara que todos los procesos sean matados, el filesystem desmontando y la
maquina ser detenida. Esta es una manera absolutamente aceptable de
detener el sistema. En muchas computadoras porttiles, esto causar tambin
que la maquina sea apagada.
# telinit 6

Runlevel 6 es el modo de reinicio. Todos los procesos se mataran, los


filesystem sern desmontados, y la maquina se reiniciara. ste es un mtodo
absolutamente aceptable de reiniciar el sistema.
Hay un ltimo mtodo de reiniciar el sistema. Todos los otros mtodos exigen
que usted sea root. Sin embargo, es posible reiniciar la maquina sin ser root,
con tal de que usted tenga acceso fsico al teclado. Pulsando ctrl-alt-supr,
115

causara que la maquina sea reiniciada inmediatamente. Lo que esto hace


realmente es ejecutar el programa /usr/sbin/ctrlaltdel(8). As, que si ese programa
tiene los permisos extraos o no esta presente, no se lograra nada en
absoluto.

Resumen
Este capitulo explico los procedimientos para agregar y quitar usuarios y
grupos. Usted debe saber hacer estas tareas usando los scripts
proporcionados y a mano, si surge la necesidad. Adicionalmente, usted debe
conocer las partes del proceso de agregar un usuario, las tcnicas para
seleccionar una contrasea y como cambiar la informacin del usuario.
Finalmente, usted debe saber apagar su computadora adecuadamente y por
que es importante hacerlo. Estas son parte importante de la administracin de
un sistema as sea su computadora personal o un servidor de red grande.

116

Capitulo 13. Comandos Basicos de Red


Contenido
ping
finger
telnet
Clientes FTP
email
lynx
wget
traceroute
Hablando con otras personas
Resumen
Una red consiste en varias computadoras conectadas juntas. La red puede ser
tan simple como unas computadoras conectadas en su casa u oficina, o tan
complicada como una red universitaria grande o incluso la Internet entera.
Cuando su computadora es parte de una red, usted tiene acceso a esos
sistemas directamente o a travs de servicios como el correo y la web.
Hay una variedad de programas de red que usted puede usar. Algunos son
capaces de realizar diagnsticos para ver si todo esta funcionando
correctamente. Otros (como los lectores de correo y navegadores), son tiles
para entrar en contacto con otras personas.

ping
El comando ping(8) enva paquetes ICMP ECHO_REQUEST a un host
especificado. Si el host responde, usted obtiene de vuelta un paquete ICMP.
Suena extrao? Bien, usted puede hacer "ping" a una direccin IP para ver si
esa maquina esta viva. Si no hay ninguna respuesta, usted sabra que algo
anda mal. Aqui hay un ejemplo de una conversacion tipica entre dos ususarios
de Linux:
Usuario A: Loki esta fuera de nuevo.
Usuario B: Estas seguro?
Usuario A: Si, yo prob hacindole un ping, pero no hay ninguna
respuesta.

117

En estos casos hacer un ping es muy til en el dia a dia. Proporciona una
manera rapida de saber si un usuario esta conectado a la red. La sintaxis
basica es:
$ ping <ip address or hostname>

Hay, por supuesto, varias opciones que pueden agregarse. Verifique la pagina
del manual de ping(1) para mas informacin.

finger
finger(1) le mostrara la informacin sobre el usuario especificado. Usted da al
finger un nombre de usuario o una direccin de email y l tratara de contactar
el servidor necesario y le mostrara el nombre de usuario, oficina, numero de
telfono y otro tipo de informacin. Aqu tiene un ejemplo:
$ finger johnc@idsoftware.com

finger puede mostrar el nombre de usuario, estado del correo, nmeros de


telfonos, y archivos llamados "dot plan" y "dot project". Claro, la informacin
varia dependiendo de cada servidor. El incluido en Slackware por defecto
muestra la siguiente informacion:

Nombre de usuario (username).


El numero de Habitacion.
Numero telefonico de la casa.
Numero de telefono del trabajo.
Estado del inicio de sesion.
Estatus del correo electronico.
Contenido del archivo.plan del directorio Home del usuario.
Contenido del archivo.project en el directorio Home del ususario.

Los primeros cuatro artculos pueden configurarse con el comando chfn.


Estos valores se archivan en /etc/passwd. Para cambiar la informacin de los
archivos .plan y .project simplemente revselos con su editor de textos favorito.
Ellos deben encontrase en su directorio home con los nombres .plan .project.
Muchos usuarios hacen finger a su propia cuenta para saber rpidamente si
tienen correo nuevo. O , para conocer que contienen actualmente sus
archivos .plan y .project.John Carmack de id Software continuamente actualiza
su archivo plan para informar a la comunidad de usuarios en que esta
trabajando actualmente.
Como muchos otros comandos, finger posee opciones especiales. Revise la
pagina del manual para mas informacin sobre los comandos que puede
utilizar.

telnet
Alguien dijo alguna vez que telnet(1) era la cosa ms interesante que haba
visto en las computadoras. La habilidad de entrar en una maquina remota es
lo que separa a una maquina Unix de cualquier otra.
118

telnet le permite iniciar sesin en otra computadora, como si usted estuviera


sentado en su propio terminal. Una vez que se verifican su username y
contrasea, se le da a usted un prompt del shell. Desde all, usted puede
hacer todo lo que se puede hacer en una consola de texto. Escribir emails,
leer grupos de noticias, mover archivos, y as sucesivamente. Si usted esta
ejecutando X y hace telnet con una maquina a travs de un xterm, usted
puede ejecutar programas X en la computadora remota y puede desplegarlos
en la suya. Vea la seccin llamada Exportando Pantallas en el Capitulo 6 para
mas informacin.
Para iniciar sesin en una maquina remota, escriba lo siguiente:
$ telnet <hostname>

Si el host responde, usted se encontrara con un login prompt. Dele su


username y contrasea. Eso es todo. Usted esta ahora en el shell. Para salir
de una sesin de telnet, use el comando exit o el comando logout.

NOTA IMPORTANTE: telnet no encripta la informacin que se envia.


Todo se enva en texto plano, incluso las contraseas. No es aconsejable
utilizar telnet a travs de la Internet. En cambio. Puede utilizar Secure Shell.
Encriptara todo l trafico y es distribuido gratuitamente. Visite
http://www.ssh.org/ para mas informacin.

Clientes FTP:
FTP (File Transfer Protocol) significa Protocolo de Transferencia de Archivos.
Le permite enviar y recibir los archivos entre dos computadoras. Existe el
servidor FTP y el cliente FTP. Nosotros explicaremos el cliente en esta
seccin.
Para los curiosos, el "cliente" es usted. El "servidor" es la computadora que
contesta su peticin FTP y le permite entrar. Usted puede bajar y subir
archivos al servidor. El cliente no puede aceptar conexiones FTP, solo puede
conectarse a servidores.

ftp
Para conectarse a un servidor FTP, simplemte ejecute el comandp ftp(1) y
especifique el host:
$ ftp <hostname>

Si en el host esta ejecutando un servidor FTP, le pedir su username y


contrasea. Usted puede entrar como "annimo". Los sitios de FTP annimos
son muy populares para archivos de software. Por ejemplo para conseguir
Slackware Linux via FTP, usted debe usar un FTP anonimo.
Una vez conectado, usted estara en el prompt ftp>. Existen ordenes
especiales para FTP, pero son similares a otros comandos normales. A
continuacin se muestran algunos comandos bsicos y lo que hacen.
119

Table 13-1. ftp Commands


Comando
Proposito
ls
Lista los archivos
cd <dirname>
Cambia de directorio
put <filename>
Baja un archivo
put <filename>
Sube un archivo
hash
Cambia el indicador de hash mark
prom
Cambia al modo interactivo de Downloads
mget <mask>
Baja un archivo o un grupo de archivos, los comodines
estan permitidos
mput <mask>
Sube un archivo o un grupo de archivos, los comodines
estan permitidos
quit
Cierra session en el servidor FTP
FTP es un programa muy fcil de utilizar, pero le falta la interfaz de usuario
que muchos estamos acostumbrados a usar hoy en dia. Las paginas del
manual explican un poco mas acerca de las opciones del comando ftp(1).

Ncftp
ncftp(1) es una alternativa al cliente ftp tradicional incluida en Slackware. Es
un programa basado en texto, pero ofrece muchas ventajas mas que ftp,
incluyendo:
"
"
"
"
"

Completacion con TAB


Marcar Archivos
Modos de transferencia pasivos y no-pasivos.
Uso ms liberal de los comodines
Historial de comandos.

Por defecto, ncftp intenta entra como usuario annimo al servidor. Usted
puede obligar al ncftp a presentar un login prompt usando la opcin "-u". Una
vez adentro, usted puede usar los mismos comandos del ftp, solo que con una
interfaz mas parecida al bash.
Figure 13-1. Example NcFTP screen.

120

email
El correo electrnico es una de las cosas ms populares que se pueden hacer
a travs de la Internet. En 1998, se informo que fue enviado mas correo
electrnico que correo normal. Es de hecho comn y til.
En Slackware, proporcionamos un servidor de correo normal, y algunos
clientes de correo. Todos los clientes son basados en texto. Muchos usuario
de Windows pueden estar en contra de esto pero usted se dar cuenta de que
es ms conveniente un cliente basado en texto, especialmente cuando se
chequea el correo de forma remota.

pine
pine(1) (pine not is elm). O algo as significa. La Universidad de Washington
creo este programa para las noticias de Internet y mandar correo electrnico
de forma fcil para sus estudiantes. pine es uno de los clientes de correo
electrnico ms populares disponibles hoy en dia para Unix y Windows por
igual.

121

Figure 13-2. Menu Principal del pine

Usted vera un menu de comandos y una fila de teclas de comando abajo.


pine es de hecho un programa complejo, por lo que nosotros no explicaremso
todas las caracteristicas aqui.
Para ver lo que esta en su bandeja de entrada, presione i. Sus mensajes se
listan con su fecha, autor, y asunto. Resalte el mensaje que usted quiere leer
y presione enter para verlo. Presionado r puede escribir una respuesta al
mensaje. Una vez que halla escrito la respuesta, presione Ctrl+X para
enviarlo. Usted puede presionar i para volver a la lista de mensajes.
Si usted quiere eliminar un mensaje, presione d, para borrar el mensaje
resaltado. Pine borrara el correo cuando usted salga del programa . pine
tambien le permite guardar su correo en carpetas. Usted puede ver una lista
de las carpetas presionando l. En la lista de mensajes, presione s para
guardarlo en otra carpeta. pine le pedira el nombre de la carpeta donde se
guardara el mensaje.
pine ofrece muchas, muchas otras opciones; usted puede mirar la pagina del
manual para mas informacion.

elm
elm(1) es otro popular cliente de correo electronico basado en texto. Aunque
no tiene una interfaz de usuario amistosa como el pine, ha estado mucho mas
tiempo en el aire.

122

Figure 13-3. Pantalla Principal de elm.

Por defecto, usted se encuentra en su bandeja de entrada. Los mensajes se


listan con el numero del mensaje, fecha, remitente, y asunto. Use las flechas
para resaltar el mensaje que usted quiere. Presione enter para leer el
mensaje.
Para escribir un nuevo mensaje, presione m en la pantalla principal. La tecla d
marcara un mensaje para ser eliminado. Y la tecla r contestara el mensaje
que usted esta leyendo actualmente. Todas estas teclas se listan en el fondo
de la pantalla con un prompt.
La pagina del manual explica elm con mas detalle.

mailx
mailx(1) es un cliente de correo manejado desde la linea de correo. Es muy
primitivo y no ofrece absolutamente nada mas que las otras interfaces de
ususario. Sin embargo, mailx es util cuando usted necesita mandar un correo
rapidamente, mandar correo masivo o algo similar.
El comando basico es:
$ mailx -s <subject> <to-addr>

mailx lee el cuerpo del mensaje de la entrada normal. Asi que usted puede
usar el comando cat para mandar algo por correo, o simplemente puede
escribir el texto y presionar Ctrl+D cuando termine de escribir el mensaje.
Aqui hay un ejmplo de como mandar un archivo fuente de un programa a otra
persona:
$ cat randomfunc.c | mailx -s "Here's that function" \
asdf@example.net
123

Las paginas del manual explican mas a fondo lo que puede hacer con mailx,
por lo que probablemente tendra que leerlo antes de usarlo.

lynx
lynx es un navegador basado en texto. Es una manera rapida de buscar algo
en Internet. Muchas veces las imagenes estan en el mismo sitio que se
encontraban antes.
Para arrancar lynx, solamente escriba lynx en el prompt:
$ lynx

Figure 13-4. Pagina de inicio del lynx.

Usted puede especificar un sitio especifico para inicar lynx :


$ lynx http://www.slackware.com

lynx muestra las teclas de comandos y lo que hace cada una en la parte baja
de la pantalla. Las flechas de arriba y abajo permiten moverse dentro del
documento, con enter se abre el link resaltado, y la flecha izquierda regresa a
la pagina anterior. Pulsando d se bajara el archivo que se encuentre
seleccionado. La orden g funciona como la opcion Ir a, usted puede
especificar una URL para abrir.
Hay muchas otras ordenes para lynx. Usted puede consultar la pagina del
manual, o presionar h para obtener ayuda.
124

wget
wget(1) es una utilidad de la linea de comandos para bajar archivos
directamente de un URL especificado. Es util para bajar sitios web completos
y verlos al estar desconectado, o para descargar de forma mas segura
archivos de HTTP o de servidores FTP. La sintaxis bsica es:
$ wget <url>

Usted tambien puede utilizar opciones. Pro ejemplo, esto bajar elwebsite de
Slackware:
$ wget --recursive http://www.slackware.com

wget creara un directorio llamado www.slackware.com y gurdara los archivos alli.


wget tambien pude obtener archivos de un sitio FTP; solo especifique una
direccion FTP en lugar de una HTTP.
wget tiene muchas mas opciones que lo hacen util para scripts especificos
(como crear mirrors ,por ejemplo). Consulte la pagina del manual para mas
informacion.

Traceroute
Slackware incluye el comando traceroute(8) 4.4BSD. Es una herramienta de
diagnstico de red til. traceroute muestra todos los host por donde pasa un
paquete al tratar de alcanzar su destino. Usted puede ver a cuantos "hops" del
sitio de Slackware se encuentra usted con este comando:
$ traceroute www.slackware.com

Cada host sera listado, junto con el tiempo de respuesta de cada uno. Aqui
hay un ejemplo de su ouput:
$ traceroute www.slackware.com
traceroute to www.slackware.com (204.216.27.13), 30 hops max, 40 byte packets
1 zuul.tdn (192.168.1.1) 0.409 ms 1.032 ms 0.303 ms
2 207.171.227.254 (207.171.227.254) 18.218 ms 32.873 ms 32.433 ms
3 border-sf-2-0-4.sirius.com (205.134.230.254) 15.662 ms 15.731 ms 16.142 ms
4 pb-nap.crl.net (198.32.128.20) 20.741 ms 23.672 ms 21.378 ms
5 E0-CRL-SFO-03-E0X0.US.CRL.NET (165.113.55.3) 22.293 ms 21.532 ms 21.29 ms
6 T1-CDROM-00-EX.US.CRL.NET (165.113.118.2) 24.544 ms 42.955 ms 58.443 ms
7 www.slackware.com (204.216.27.13) 38.115 ms 53.033 ms 48.328 ms

traceroute es similar al comando ping ya que utiliza paquetes ICMP. Hay


varias opciones que usted puede especificar con el traceroute. El numero
maximo predefinido de "hops" es 30, pero eso puede cambiarse con la opcion
"-m". Se explican otras opciones en detalle en la pagina web.

125

Hablando con otras personas


talk
talk(1) permite a dos ususarios charlar. Se divide la pantalla,
horinzontalmente, por la mitad. Para solicitar un chat con otro usuario, se
utiliza esta orden:
$ talk <person> [ttyname]

Figura 13-5. Dos usuarios en una session de talk.

Si usted especifica solamente el nombre de usuario, se asume que ser una


charla local, as que solo se le preguntara a los usuarios locales. La
informacin requerida para charlar puede obtenerse con el comando w(1).
talk puede contactar tambin a usuarios remotos. Como username usted
simplemente especifica una direccin de correo. talk intentara buscar a ese
usuario en este host.
talk es algo limitado. Solo soporta a dos usuarios.

ytalk
ytalk(1) es un reemplazo compatible para talk. Viene con el Slackware con el
nombre de ytalk. La sintaxis es similar, pero tiene algunas diferencias:
$ ytalk <username>[#ttyname]

126

Figura 13-6. Tres usuarios en una session de ytalk.

El nombre de usuario y el terminal se especifican igual que en talk, excepto


que usted debe ponerlos juntos con el smbolo (#).
ytalk ofrece varias ventajas:

Soporta mas de dos usuarios.


Un men de opciones se puede utilizar cuando quiera presionando Esc.
Usted puede usar el shell mientras esta en la sesin de charla.
Mucho ms..

Si usted es un administrador de algn servidor, usted debe asegurarse de


habilitar el puerto ntalk en etc/inetd.conf. ytlak necesita ese puerto para trabajar
correctamente.

Resumen
Usted debe conocer ahora algunas ordenes de diagnostico bsico de redes.
Usndolas, usted puede determinar si hay problemas con alguna
computadora o la red entre su sistema y uno remoto. Tambin, usted debe
saber acerca de algunos clientes de correo, web browsers, clientes ftp y
programas de comunicacin.

127

Capitulo14. Guardando Archivos


Contenido
gzip
bzip2
tar
zip
Resumen
En Slackware Linux, hay varios programas que pueden usarse para comprimir
y guardar archivos. Estos programas son tiles para hacer respaldos y enviar
copias de archivos entre maquinas conectadas en red. Hay programas para
trabajar con los archivos tipo Unix, as como los de archivos tipo Windows.

gzip
gzip(1) es el programa de compresin del GNU. Toma solo un archivo y lo
comprime. El comando bsico es el siguiente:
$ gzip infile

El archivo resultante se llamara infile.gz y normalmente ser un poco ms


pequeo que el archivo inicial. Note que infile.gz reemplazara a inifile. Esto
significa que inifile ya no existir, aunque quede una copia de el gzipeada. Los
archivos de texto normales se comprimen muy bien, mientras que las
imgenes jpeg, mp3s, y otros tipos de archivos no se comprimen muy bien
debido a que ellos ya estn comprimidos. El uso bsico provee un equilibrio
entre el tamao final y el tiempo de compresin. La compresin mxima
puede lograrse usando el siguiente comando:
$ gzip -9 infile

Esto tomara mas tiempo para comprimir el archivo, pero el resultado ser un
archivo tan pequeo como el gzip pueda hacerlo. Usando los valores ms
bajos en la lnea de comandos causara que se realic la compresin ms
rpido, pero el archivo no tendr una buena compresin.
Para descomprimir archivos gzipeados pueden usarse dos comandos, que
son bsicamente el mismo programa. gzip descomprimir cualquier archivo
que tenga una extensin conocida. Una extensin conocida puede ser
cualquiera de las siguientes: .gz, -gz, .z, -z, .Z o -Z. El primer mtodo seria
usar el comando gunzip(1) en el archivo:
$ gunzip infile.gz

Esto dejara una versin descomprimida del archivo en el directorio actual, y la


extensin .gz sera eliminada del archivo.
128

La otra manera de descomprimir un archivo gzipeado es utilizar el comando


gzip:
$ gzip -d infile.gz

Con esto obtendr el mismo resultado del comando gunzip. La razn es


simple: gunzip simplemente es un link simbolico a /bin/gzip:
$ cd /usr/bin
$ ls -l gunzip
lrwxrwxrwx 1 root root 9 Feb 2 09:45 gunzip -> /bin/gzip

As que, gunzip es simplemente una forma de ejecutar el gzip con un nombre


diferente. El programa puede determinar como esta llamndose y ejecuta la
accin apropiada. En este caso, gzip sabr que esta siendo llamado por el
gunzip y descomprimir el archivo. Por lo tanto, usted puede usar gzip o
gunzip para descomprimir cualquier archivo gzipeado.

bzip2
bzip3(1) es un programa de compresin alternativo instalado en Slackware
Linux. Usa un algoritmo de compresin diferente al de gzip, lo que resulta en
algunas ventajas y desventajas. La ventaja principal del bzip2 es el tamao
final del archivo comprimido. bzip2 casi siempre comprime mejor que el gzip.
En algunos casos, esto puede producir archivos realmente pequeos. Esto
puede ser una gran ventaja para las personas con conexiones de modem
lentas.
La desventaja del bzip2 es que utiliza mas intensivamente el CPU que el
gzip. Esto significa que para comprimir un archivo con bzip necesitara de
muchos mas tiempo y uso del CPU del que necesitara si lo hiciera con el
gzip. Al considerar un programa de compresin, usted debe decidir entre
velocidad o compresin y determinar que es ms importante.
La forma de utilizar el bzip2 es muy similar a la del gzip, asi que no
gastaremos mucho tiempo para explicrselo. Simplemente ejecute bzip2 mas
el nombre del archivo a comprimir:
$ bzip2 infile

El resultado final ser un archivo de menor tamao y se llamara inifile.bz2. Al


igual que con el gzip, el archivo inicial ya no existir, ya que bzip2 reemplaza
el archivo inicial con una copia comprimida.
Usted puede utilizar un comando numrico para modificar la tasa de
compresin y hacerla ms rpida igual que en gzip. El siguiente ejemplo
muestra como alcanzar la compresin mxima con el bzip2:
$ bzip2 -9 infile

Existen dos comandos para descomprimir los archivos con extensin.bz2.


Usted puede utilizar bzip2 o bunzip2(1) para descomprimir los archivos
bzipeados. Para usar bzip2 necesitara agregar un argumento a la lnea de
comando:
129

$ bzip2 -d infile.bz2

Esto descomprimir el archivo y remplazara el existente con una copia


descomprimida. Este archivo tambin ser despojado de la extensin.bz2
De igual forma usted puede usar el bunzip2 para descomprimir el archivo:
$ bunzip2 infile.bz2

Usted obtendr el mismo resultado de cualquier forma, gracias a un link


simblico. Comprobemos que /bin/bunzip2 muestra un simple link simbolico a
/bin/bzip2. Esto se hace con el mismo truco que utilizaron con el gzip.
$ cd /bin
$ ls -l bunzip2
lrwxrwxrwx 1 root root

5 Feb 2 09:45 /bunzip2 -> bzip2

tar
tar(1) es el archivador de cintas del GNU. Toma varios archivos o directorios y
crea un archivo grande. Esto le permite comprimir un rbol de directorios
enteros lo cual simplemente no es posible utilizando gzip o bzip2. tar tiene
muchas opciones que se explican en la pagina del manual. Esta seccin
tratara apenas el uso bsico de tar.
El uso ms comn de tar es descomprimir y desarchivar paquetes que usted
halla obtenido de un sitio web o de un sitio ftp. La mayora de los archivos
vienen con la extensin.tar.gz. Esto es comunmente conocido como un
"tarball". Significa que se guardaron varios archivos usando tar y despus lo
comprimieron usando gzip. Usted tambin puede verlos con la extensin.tar.Z.
Significa la misma cosa.
Alternativamente, usted podra encontrar archivos.tar.bz2 en alguna parte. La
fuente del Kernel es distribuida de esa forma porque es ms pequeo para el
download. Esto es simplemente varios archivos guardados con tar y
comprimidos con bzip2.
Usted puede extraer todos los archivos utilizando tar y algunas otra
opciones.Para abrir un tarball se utiliza la opcion z que permite ejecutar
primero el programa gzip para descomprimirlo. La manera ms comn de
descomprimir un tarball es la siguiente:
$ tar -xvzf hejaz.tar.gz

Aqu vemos algunas opciones. Que significa cada una? La opcin -x quiere
decir extraer. Esto es importante, ya que le dice a tar que hacer con el archivo
exactamente. En este caso, nosotros estamos colocando los archivo tal y
como venan. -v quiere decir verboso. Esto mostrara una lista de todos los
archivos que estn siendo desarchivados. Es absolutamente aceptable dejar
fuera esta opcin, si le parece algo aburrido. Alternativamente, usted podra
usar la opcin -vv para que sea muy verboso y muestre mas informacin aun
sobre los archivos. La opcin -z le dice a tar que ejecute hejaz.tar.gz primero a
130

travs del gunzip. Y finalmente la opcin -f, le dice a tar que la siguiente lnea
es el archivo donde debe operar.
Hay otras maneras de escribir esta misma orden. En sistemas ms viejos que
no cuenten con una versin decente del GNU tar, usted podra verlo as:
$ gzip -dc hejaz.tar.gz | tar -xvf -

Esta lnea de comando descomprimir el archivo primero y enviara el


resultado a tar. Ya que gzip escribe sus resultados usando el standard output,
este comando descomprimir el archivo en standard output. La tubera lo
enva despus a tar para que lo desarchive. El smbolo "-" le indica que debe
trabajar en standard input. Desarchiva todos los datos que recibe del gzip y
escribe todo eso al disco.
Otra manera de escribir el primer comando es quitando el simbolo "-" de la
lnea de comando:
$ tar xvzf hejaz.tar.gz

Usted tambin podra encontrar archivos comprimidos con bzip2. La versin


de tar que viene con Slackware Linux puede manejar estos archivos al igual
que los comprimidos usando el gunzip. El lugar de la opcin -x en la lnea de
comando, tendra que usar la opcin -y:
$ tar -xvyf foo.tar.bz2

Es importante hacer notar que tar colocara todos los archivos en el directorio
actual. As, que si usted tiene un archivo en /tmp que usted quera
descomprimir en su directorio home, usted tiene dos opciones: Primera, podria
mover el archivo a su directorio home y despus extraerlos usando tar. O
podria especificar la ruta al archivo en la lnea de comandos:
$ tar -xvzf /tmp/bar.tar.gz

Se descargara el contenido del archivo a su directorio home, y el archivo


original se mantendr todava en el directorio /tmp.
La segunda operacin ms comn es la de hacer sus propios archivo tar.
Hacer un archivo no es mas complicado que desarchivarlo; Apenas se utiliza
un juego diferente de opciones en la lnea de comandos.
Para crear un archivo tar comprimido de todos los archivos en el directorio
actual ( incluyendo cualquier subdirectorio y sus archivos), usted usara el tar
de esta forma:
$ tar -cvzf archive.tar.gz .

En este comando, la opcin -c le dice a tar que cree un archivo, la opcin -z


enva el resultado a gzip para que lo comprima. archive.tar.gz es el nombre del
archivo que usted quiere crear. Usted puede colocarle el nombre que usted
quiera y si incluye una direccin completa, tar coloca el archivo en ese
directorio. Aqu hay un ejemplo de eso:
$ tar -cvzf /tmp/archive.tar.gz .

El archivo quedara entonces en /tmp. Usted tambin puede especificar todos


los archivos y directorios que sern incluidos en el archivo colocndolos al
final del comando. En este caso, el . es el directorio que se incluir en el
131

archivo. Esto puede reemplazarse con una lista de varios archivos, o cualquier
cosa que usted quiera archivar.

zip
Finalmente, hay dos utilidades que pueden usarse en los archivos zip. Estas
son muy comunes en el mundo de Windows, por lo que Linux tiene los
programas para trabajar con ellos. El programa de compresin se llama
zip(1), y el programa de descompresin se llama unzip(1).
Comprimir un archivo es fcil:
$ zip foo *

Esto creara el archivo foo.zip, que contendr todos los archivos que se
encuentran en el directorio actual. zip le agregara la extensin.zip
automticamente as que no hay necesidad de incluir eso en el nombre del
archivo. Usted tambin podra incluir todos los directorios que se encuentran
dentro del directorio actual usando la opcin recursiva:
$ zip -r foo *

Descomprimir los archivos es fcil, tambin.


$ unzip foo

Esto extraer todos los archivos que se encuentra en foo.zip, incluyendo


cualquier directorio.
Las utilidades zip tienen varias opciones avanzadas para crear archivos autoextrables(self-extracting), omitir archivos, controlar el tamao del archivo
comprimido, y mucho ms. Vea las paginas del manual de zip y de unzip para
averiguar como usar estas opciones.

Resumen
Este capitulo trato sobre los programas que se usan para comprimir y
descomprimir archivos. Usted debe saber como crear un tar usando sus
opciones y un programa de compresin, como descomprimir y como ocuparse
de los archivos basados en Windows. Casi todo los que se trasmite o se
transfiere esta involucrado de alguna forma con estos archivos, por lo que
estos conocimientos le sern muy tiles.

132

Capitulo 15. vi
Contenido
Inciando vi
Modos
Abriendo archivos
Guardando archivos
Cerrando vi
Configuracion de vi
Teclas del vi
Resumen

vi(1) es el programa de edicin standard en Unix, y dominarlo es esencial


para cualquier administrador de sistemas. Hay varias versiones (o copias) de
vi disponible, incluyendo el vi, elvis, vile, y el vim. Uno de ellos esta
disponible en casi cualquier versin de Unix, as como tambin en Linux.
Todas esta versiones incluyen las mismas caractersticas bsicas de
configuracin y de comandos, as que aprendiendo a usar un clon Ser fcil
manejar cualquier otro.
vi incluye varias caractersticas poderosas incluyendo resaltado de sintaxis,
formato de cdigo, y un poderoso sistema para buscar y remplazar, macros, y
ms. Estas caractersticas lo hacen especialmente atractivo a programadores,
diseadores web, etc. Los administradores del sistema aprecian la
automatizacin e integracin con el shell.
En Slackware Linux, la versin por defecto del vi es la elvis. Otras versiones incluyendo el vim y gvim - estn disponibles si se han instalados los paquetes
correspondientes. El gvim es una versin para X Window del vim que incluye
barra de herramientas, mens intercambiables y cuadros de dialogo.

Inciando vi
vi puede ser iniciado desde la lnea de comandos de muchas formas. La
forma ms simple es la siguiente:
$ vi

Esto pondr en marcha el vi con un buffer vaci. En este momento, usted vera
una pantalla principalmente en blanco. l esta ahora en "modo de comando",
esperando que usted haga algo. Para una explicacin de los distintos modos
del vi, vea la seccin llamada Modos. Para salir del vi, escriba lo siguiente:
:q

133

Figura 15-1. Una sesion de vi.

Asumiendo que no exista ningn cambio en el archivo, este comando cerrara


el vi. Si ha hecho algn cambio, l le advertir que han ocurrido cambios y le
dir como ignorarlos.
Usted puede iniciar el vi con un archivo existente. Por ejemplo, el archivo
/etc/resolv.conf ser abierto si hace lo siguiente:
$ vi /etc/resolv.conf

Finalmente, puede iniciar el vi en una lnea particular de un archivo. Por


ejemplo, usted puede iniciar vi en la lnea 47 del archivo /usr/src/linux/init/main.c
haciendo esto:
vi +47 /usr/src/linux/init/main.c

vi le mostrara el archivo y colocara el cursor en la lnea especificada. En caso


de que usted especifique una lnea que este despus del final del archivo, vi
colocara el cursor en la ultima lnea. Esto es especialmente til para
programadores, ya que ellos pueden saltar directamente a la ubicacin de
algn error en el archivo, sin tener que buscarla.

Modos
vi opera en varios modos que se usan para lograr distintas tareas. Cuando
usted inicia el vi, usted esta ubicado en el modo de comando. Desde este
punto, usted puede emitir varias ordenes para manipular el texto, moverse
dentro del archivo, guardar, salir y cambiar el modo. La edicin del texto se
134

realiza en el modo de insercin. Usted puede cambiar rpidamente entre los


modos pulsando una variedad de teclas que se explican mas adelante.

Modo Comando (Comand Mode)


Usted se encuentra primero en el modo comando. Desde este modo, usted no
puede escribir o editar texto directamente. Sin embargo, usted puede
manipular el texto, buscar, cerrar, grabar, abrir nuevos archivos, y ms. Esto
ser solo una introduccin al modo comando. Para una descripcin de todos
los comandos, revise la seccin llamada Teclas vi.
Probablemente el comando mas usado en el modo comando es el que se usa
para cambiar al modo de insercin(insert mode). Esto se logra pulsando la
tecla i. El cursor cambia de forma, y --INSERT-- se muestra al final de la
pantalla (note que esto no ocurre en todas las versiones de vi). Desde all,
todo lo que escriba ser introducido en el buffer actual y se mostraran en
pantalla. Para volver al modo comando, presione la tecla Esc.
En el modo comando usted puede moverse dentro del archivo. En algunos
sistemas, usted puede usar las teclas de navegacin para moverse alrededor.
En otros sistemas, usted tendr que usar teclas ms tradicionales como "hjkl".
Aqu esta una descripcin simple de como se usan estas teclas para moverse
alrededor.
h

Un carcter a la izquierda

Un carcter hacia abajo

Un carcter hacia arriba

Un carcter a la derecha

Simplemente presione una tecla para moverse. Como usted vera mas
adelante, estas teclas pueden combinarse con nmeros para moverse mas
eficazmente.
Muchos de los comandos que usted utilizara en el modo comando empiezan
con ":". Por ejemplo, salir es :q. Los dos puntos indican simplemente que es
un comando, mientras que "q" le dice al vi que cierre. Otros comandos son un
numero opcional, seguido de una letra. Estos comandos no llevan el smbolo
":" antes, y generalmente se usan para manipular el texto
Por ejemplo para borrar una lnea se usa el comando dd. Esto eliminara la
lnea donde se encuentra el cursor. Emitiendo la orden 4dd le dir al vi que
elimine la lnea donde se encuentra el cursor y las otras 3 lneas que siguen
despus. En general, l numero le dice al vi cuantas veces ejecutar el
comando.
Usted puede combinar un numero con las teclas de movimiento para moverse
a travs de varios caracteres al mismo tiempo. Pro ejemplo, 10k subir diez
lneas.
El modo comando tambin puede usarse para cortar y pegar, insertar texto, y
leer otros archivos en el buffer actual. Para copiar texto se utiliza la tecla "y".
Para copiar la lnea actual se utilizan las teclas "yy", estas pueden precederse
con un numero para alcanzar mas lneas. Despus, muvase a la ubicacin
donde se copiaran y presione p. El texto ser pegado en la lnea siguiente a
su ubicacin actual.
135

Para cortar texto se utiliza "dd", y puede usarse p para pegar el texto de
nuevo al archivo. Leer el texto de otro archivo es un procedimiento ms
simple. Solo presione :r, seguido de un espacio y el nombre del archivo que
contiene el texto que quiere que sea insertado. El contenido del archivo se
pegara en el buffer actual en la lnea despus del cursor. Los clones mas
sofisticados del vi contiene incluso la posibilidad de completacion similar a la
del shell.
El uso final que explicaremos es el de buscar. El modo comando permite
bsquedas simples, as como tambin comandos de bsqueda-y-reemplazo
que hacen uso de una poderosa versin de expresiones regulares. Una
explicacin detallada de las expresiones regulares se encuentra mas adelante
en este capitulo, por lo que esta seccin tratara solo lo medios de bsqueda
ms sencillos.
Una bsqueda simple se realiza utilizando la tecla /, seguida del texto que
usted esta buscando. vi buscara a partir de la ubicacin del cursor hasta el
final alguna coincidencia, detenindose al encontrar alguna. Note que las
coincidencias inexactas tambin harn detener al vi. Por ejemplo, una
bsqueda para "the" har que el vi se detenga tambin en "then", "therefore",
y as sucesivamente. Esto es porque todas esas palabras coinciden con "the",
pero slo al principio. Despus de que vi encuentra la primera coincidencia
usted pude seguir adelante presionando la tecla / seguida de enter. Usted
tambin puede buscar a travs del documento reemplazando la tecla / con la
tecla ?. Por ejemplo, una bsqueda hacia atrs de la palabra "the" se logra
escribiendo el comando ?the.

Modo de insercin (Insert Mode)


Insertar y cambiar texto se logra utilizando el modo de insercin. Como
explicamos anteriormente, usted puede entrar en el mode de insercin
pulsando i en el modo comando. Entonces, todo el texto que usted escriba
entrara en el buffer actual. Presionando la tecla Esc usted puede regresar al
modo comando.
Usted puede reemplazar texto de varias formas. Desde el modo comando,
presionando la tecla r le permite cambiar un carcter que se encuentre debajo
del cursor. Simplemente escriba el nuevo carcter y este remplazara al que se
encuentra debajo del cursor. Usted volver inmediatamente al modo comando
nuevamente. Presionado R le permita reemplazar todos los caracteres que
usted quiera. Para salir de este modo de reemplazo, solo presione Esc para
volver al modo comando.
Hay otra manera de cambiar entre insercin y reemplazo. Presionado la tecla
insert en el modo comando usted entrara en el modo de insercin. Una vez
que usted entra en el modo de insercin, La tecla Insert del teclado le permite
cambiar entre insertar y reemplazar. Presionndola una vez le permite
reemplazar. Presionndola una vez mas le permite insertar texto.

136

Abriendo Archivos
vi permite abrir archivos desde el modo comando as como tambin
especificar un archivo para abrir directamente desde la lnea de comando.
Para abrir el archivo /etc/lilo.conf:
:e /etc/lilo.conf

Si usted ha hecho cambios al buffer actual sin guardar, vi se lo advertir.


Usted todava puede abrir el archivo sin necesidad de guardar el actual
presionando :e!, seguido de un espacio y el nombre del archivo. En general,
las advertencias del vi pueden ignorarse utilizando la misma orden seguida de
un signo de admiracin.
Si usted quiere volver a abrir el archivo actual simplemente escriba e!. Esto es
til si usted a desordenado el archivo y desea volverlo a abrir.
Algunos clones del vi (por ejemplo, vim) permiten buffer simultneos que
permiten tener los dos archivos abiertos al mismo tiempo. Por ejemplo, para
abrir el archivo 09-vi.sgml en mi directorio home mientras otro archivo estaba
abierto, tecleara lo siguiente:
:split ~/09-vi.sgml

El nuevo archivo se mostrara en la mitad superior de la pantalla, y e archivo


viejo se mostrara en la mitad inferior. Hay muchas ordenes para manipular la
pantalla dividida, y muchas de estas ordenes empiezan a parecerse a algo
salido de EMACS. El mejor lugar para buscar estos comandos ser la pagina
del manual de su copia de vi. Nota: muchos clones no soportan la idea de la
pantalla divida, as que tal vez usted no podra utilizarlo en lo absoluto.

Guardando Archivos
There are several ways to save files in vi. If you want to save the current buffer
to the file randomness, you would type:
:w randomness

Once you've saved the file once, saving it again is as simple as typing :w. Any
changes will be written out to the file. After you've saved the file, you are
dumped back into command mode. If you want to save the file and quit vi (a
very common operation), you would type :wq. That tells vi to save the current
file and quit back to the shell.
On occasion, you want to save a file that is marked as read-only. You can do
this by adding an exclamation point after the write command, like so:
:w!
:wq!

However, there will still be instances where you cannot write the file (for
example, you are attempting to edit a file that is owned by another user). When
this happens, vi will tell you that it cannot save the file. If you really want to edit
the file, you'll have to come back and edit it as root.

137

Cerrando vi
Una manera de cerrar vi es utilizando:wq que guardara el buffer actual antes
de cerrar. Usted tambin puede salir sin guardar utilizando :q o:q!. Este ultimo
se utiliza cuando usted ha modificado el archivo pero no ha hecho ningn
cambio en l.
En ocasiones, su maquina o vi podran colgarse. Sin embargo, elvis y vim
tomaran medidas para minimizar el dao a cualquier buffer abierto. Ambos
editores guardan los buffer abiertos en archivos temporales en algunas
ocasiones. Este archivo normalmente se llama igual al archivo abierto, pero
con un punto al principio. Esto oculta el archivo.
Este archivo temporal se elimina una vez que el editor se cierra en
condiciones normales. Esto significa que la copia temporal todava estar por
ah si algo sale mal. Cuando usted regresa a editar el archivo de nuevo, vi le
preguntara que accin tomar. En la mayora de los casos, gran parte de su
trabajo no guardado puede recuperarse. elvis tambin le enviara un correo
(desde Graceland, bastante extrao :) Dicindole que existe una copia de
respaldo.

Configuracion de vi
Su clon del vi puede configurarse de varias maneras.
Una variedad de comandos pueden introducirse en el modo comando para
configurar el vi como a usted le guste. Dependiendo de su editor, usted puede
activar opciones para hacer ms fcil la programacin (como el resaltado de
sintaxis, auto-identidad, y ms), prepara los macros para auto-realizar tareas,
habilitar la sustitucin textual, y ms.
Casi todos estos comandos se pueden poner en un archivo de configuracin
en su directorio home. elvis necesita un archivo .exrc, mientras que el vim
necesita de un archivo .vimrc. La mayora de las configuraciones que pueden
hacerse en el modo comando pueden ser colocadas en el archivo de
configuracin. Esto incluye la informacin de configuracin, substituciones
textuales, macros y ms.
Explicar todas estas opciones y las diferencias entre los editores es un asunto
bastante complejo. Para mas informacin, revise la pagina del manual o el
sitio web de su editor vi preferido. Algunos editores (como el vim) tienen una
extensa ayuda dentro del editor que puede obtenerse utilizando el comando
:help, o algo similar. Usted tambin puede revisar el libro "Aprendiendo el
editor vi por Lamb y Robbins" de O'Reilly.
Muchos programas en Linux inician por defecto un archivo de texto en vi. Pro
ejemplo, al editar su crontabs (vea la seccin en cron) se ejecuta el vi por
defecto. Si no le gusta el vi y le gustara que otro editor sea iniciado por
defecto, todo lo que usted necesita hacer es cambiar la variable de ambiente
VISUAL con la del editor que usted prefiere. Para informacin sobre
configuracin de variables de entorno, vea la seccin llamada Variables de
Entorno en el Capitulo 8. Si usted quiere estar seguro de que su editor ser
iniciado cada vez que usted inicia sesin, agregue la configuracin VISUAL a
sus archivos .bash_profile o .bashrc.

138

Teclas del vi
Esta es una referencia rapida de muchas de las ordenes mas comunes del vi.
Tabla 15-1. Movimiento

Operacion

Tecla

Izquierda,abajo,arriba,derecha h, j, k, l
Hasta el final de la linea

Hasta el principio de la linea

Hasta el final del archivo

Hasta el principio del archivo

:1

Hasta la linea 47

:47

Tabla 15-2. Edicion

Operacion

Tecla

Eliminar una linea

dd

Eliminar cinco lineas

5dd

Reemplazar un caracter

Eliminar un caracter

Eliminar diez caracteres

10x

Deshacer la ultima accion

Unir la linea actual y la siguiente J


Tabla 15-3. Busqueda

Operacion

Tecla

Buscar asdf

/asdf

Buscar hacia atras asdf

?asdf

Repetir la busqueda hacia adelante

Repetir la ultima busqueda hacia atras ?


Tabla 15-4. Guardar y Cerrar

Operacin

Tecla

Cerrar

:q

Cerrar sin guardar

:q!

Guardar y cerrar

:wq

Guardar sin cerrar

:w

Reabrir el archivo actual

:e!

Guardar el buffer con el nombre asdf :w asdf


Abrir el archivo hejaz

:e hejaz

Leer el archivo asdf en el buffer

:r asdf

Leer el resultado de ls en el buffer

:r !ls
139

Resumen
Usted debe estar familiarizado con el vi-el editor de texto standard de Unix. El
vi es un programa bastante complejo con muchos comandos y opciones de
configuracin. Sin embargo, usted debe saber abrir un archivo, moverse
alrededor, editar el archivo, y salir. Esto es todo lo que usted tendr que hacer
para la mayora de las operaciones diarias. Cuando usted necesite mas poder,
usted puede usar la extensa ayuda que incluye le vi para aprender mas sobre
l.

140

Capitulo 16. Manejo de paquetes en Slackware


Contenido
Visn general del formato de los paquetes
Untilidades de paquetes
Creando paquetes
Creando Tags y Tagsfiles(para la instalacion)
Resumen
Un paquete de software es un grupo de programas relacionados que estn
listos para ser usados. Cuando usted baja un cdigo fuente, usted tiene que
configurarlo, compilarlo e instalarlo a mano. Con un paquete de software, esto
ya s hecho. Todo lo que usted tiene que hacer es instalar los paquetes. Otra
caracterstica til de los paquetes de software es que son muy fciles de quitar
y de actualizar, si usted lo desea. Slackware viene con todos los programas
que usted necesita para manejar los paquetes. Usted puede instalar, eliminar,
actualizar, hacer y examinar los paquetes muy fcilmente.

Vision general del formato de los paquetes


Antes de aprender a usar las utilidades, usted debe familiarizarse con el
formato de los paquetes de Slackware. Un paquete simplemente es un archivo
tar que ha sido comprimido con el gzip. Un paquete se crea para que pueda
extraerse en el root filesystem.
Estos son algunos programas ficticios y sus paquetes de ejemplo:
./
usr/
usr/bin/
usr/bin/makehejaz
usr/doc/
usr/doc/makehejaz-1.0/
usr/doc/makehejaz-1.0/COPYING
usr/doc/makehejaz-1.0/README
usr/man/
usr/man/man1
usr/man/man1/makehejaz.1.gz
install/
install/doinst.sh

El sistema de paquetes extraer este archivo al directorio raz para instalarlo.


Una entrada en la base de datos del paquete se creara con los datos del
contenido de este paquete para que pueda actualizarse o eliminarse despus.
Fjese en el subdirectorio /install. Este es un directorio especial que puede
contener un script de post-instalacin llamado doinst.sh. Si el sistema de
paquetes encuentra este archivo, lo ejecutara despus de la instalacin del
paquete.
141

Pueden incluirse otros scripts en el paquete, estos se explicaran mas adelante


en la seccin llamada makepkg.

Utilidades de paquetes
Hay cuatro utilidades principales para el manejo de paquetes. Ellos se
encargan de la instalacin, eliminacin y las actualizaciones de los paquetes

pkgtool
pkgtool(8) es un programa manejado por menus que permite instalar y
eliminar paquetes. El menu principal es algo asi:
Figura16-1. menu principal del pkgtool.

La instalacin se puede hacer desde el directorio actual (Current), otro


directorio (Other), o desde un disquete (Floppy). Simplemente seleccione el
mtodo de instalacin que usted quiere y pkgtool se encarga de buscar en
esa ubicacin paquetes valido para instalar.
Usted tambien puede ver una lista de paquetes instalados parecida a esta:
Figura 16-2. Modo view del pkgtool.

142

Si usted quiere eliminar paquetes, seleccione la opcin Remove y se


encontrara con una lista de seleccin de todos los paquetes instalados.
Simplemente marque el que desea eliminar y seleccione OK. pkgtool los
eliminara.
Algunos usuarios prefieren usar esta utilidad en vez de las utilidades de lnea
de comando. Sin embargo, fjese que las utilidades de lnea de comandos
ofrecen muchas ms opciones. Adems, la funcin de actualizar los paquetes
solo esta disponible a travs de la lnea de comando.

installpkg
installpkg(8) maneja la instalacion de nuevos paquetes en su sistema. La
sintaxis es la siguiente:
# [ROOT=<path>] installpkg [option] <package name>...

Installpkg ofrece tres opciones. Solo puede ser usada una opcion a la vez.
Tabla 16-1. Opciones del installpkg
Opcion
Efecto
-m
Ejecuta la operacin makepkg en el directorio actual.
-warn
Muestra lo que sucedera si se instala el paquete especificado.
Esto es muy util para productores de sistema ya que muestra lo
que sucedera despues de instalar el paquete.
-r
Instalacion Recursiva de todos los paquetes en el directorio
actual. El<package name> puede incluir comodines.
Si usted coloca la variable de entorno ROOT antes de installpkg este
directorio ser usado como directorio raz. Esto es til para configurar nuevas
unidades en su directorio raz. Estas tpicamente se montan en /mnt o algo
diferente a /.
La base de datos de paquetes instalados se guarda en /var/log/packages. Esto
es solo un archivo en texto plano, uno para cada paquete. Si el paquete tiene
un script de post-instalacin, se guarda en /var/log/scripts/<packagename>.
Usted puede especificar varios paquetes o puede usar comodines en el
nombre del paquete. Se le advierte que installpkg no le avisara si usted esta
borrando un paquete instalado. Instalara simplemente el nuevo archivo
encima del viejo. Si usted quiere asegurarse que esos archivos viejos del
paquete anterior sean eliminados, utilice el comando upgradepkg.

removepkg
removepkg(8) se utiliza para eliminar paquetes instalados en su sistema. La
sintaxis es la siguiente:
# [ROOT=<path>] removepkg [option] <package name>...

Removepkg trabaja con cuatro opciones diferentes. Solo una opcion a la vez
puede usarse.
143

Tabla 16-2. Opciones de removepkg


Opcion
Efecto
-copy
El paquete es copiado para ser conservado. Esto crea un arbol
de directorio del paquete actual y lo guarda.
-keep
Guarda los archvios temporales creados durante la eliminacion
actual.
-preserve
El paquet es eliminado, pero guarda una copia del paquete al
mismo tiempo.
-warn
Muestra lo que ocurrira si elimina el paquete.
Si usted coloca la variable de entorno ROOT antes de removepkg este
directorio ser usado como directorio raz. Esto es til para configurar nuevas
unidades en su directorio raz. Estas tpicamente se montan en /mnt o algo
diferente a /. removepkg observa todos los paquetes instalados pero solo
elimina aquellos que usted especifico. Adems revisa el script de postinstalacin del paquete especificado y quita cualquier link simblico creado por
l. Durante el proceso de eliminacin, se muestra un informe de estado.
Despus de la eliminacin, la base de datos del paquete se mueve al
directorio /var/log/removed_packages y el script de post-instalacin se mueve
hacia /var/log/removed_scripts. Al igual que en installpkg, usted puede usar
comodines para especificar varios paquetes.

upgradepkg
upgradepkg(8) actualiza cualquier paquete instalado en Slackware Linux. La
sintaxis es la siguiente:
# [ROOT=<path>] upgradepkg <package name>...

o
# [ROOT=<path>] upgradepkg \
<old package name>%<new package name>

upgradepkg trabaja primero instalando el nuevo paquete y despus


eliminando el paquete viejo para que los archivos viejos no existan mas en el
sistema. Si el nombre del paquete actualizado ha cambiado, use el smbolo de
porcentaje (%) para especificar el paquete viejo (el que se encuentra
instalado) y el nuevo paquete (el que se esta actualizando).
Si usted coloca la variable de entorno ROOT antes de removepkg este
directorio ser usado como directorio raz. Esto es til para configurar nuevas
unidades en su directorio raz. Estas tpicamente se montan en /mnt o algo
diferente a /.
upgradepkg no lo hace todo. Usted siempre debe guardar sus archivos de
configuracin. Si ellos se sobrescriben, usted conservara una copia de los
originales para cualquier trabajo de reparacin.
As como en el installpkg y removepkg, usted puede usar comodines para
especificar el nombre del archivo.
144

rpm2tgz/rpm2targz
El manejador de paquetes del Red Hat es un sistema de empaquetamiento
popular hoy en dia. Muchos distribuidores de software estan ofreciendo sus
prodcutos en formato RPM. Ya que este no es nuestro formato nativo, nostros
recomendamos a las personas que no se confien de ellos. Sin embargo,
algunas cosas solo estan disponibles en RPM(incluso la fuente).
Nosotros proporcionamos un programa que convierte los RPM a nuestro
formato .tgz nativo. Esto le permite extraer los paquetes (quizas con el
explodepkg) a un directorio temporal y examinar su contenido.
El programa rpm2tgz crea un paquete de Slackware con la extension .tgz,
mientra que el rpm2targz crea un archvio con la extension .tar.gz.

Creando paquetes
Crear paquetes para Slackware puede ser fcil y difcil a la vez. No hay un
mtodo especifico para crear un paquete. El nico requisito es que sea un
archivo tar comprimido con gzip y si existe algn script de post-instalacin,
debe estar en /install/doinst.sh.
Si usted esta interesado en hacer paquetes para su sistema o para una red
que usted administre, usted debe echarle un vistazo a los varios scripts
construidos en el rbol de directorios de la fuente de Slackware. Hay varios
mtodos que se utilizan para crear un paquete

explodepkg
explodepkg(8) hara lo mismo que hace installpkg para extaer los archivos,
pero no lo instalara ni los gurdara en la base de datos de archivos instalado.
El simplemente lo extrae al directorio actual.
Si usted se fieja en el arbol de la fuente de Slackware, usted vera como
nosotros usamos ese comando para los paquetes framework. Estos
paquetes contiene un esqueleto de como lucira despues el archivo final. Ellos
soportan todos los nombres de archivos(de longitud-cero) necesarios,
permisos y propietarios.

makepkg
makepkg(8) empaquetara todo el directorio actual dentro de un paquete
Slackware valido. Busca en el rbol los links simblicos y agrega un bloque de
creacin al script de post-instalacin para que se creen durante la instalacin.
Tambin advierte de cualquier archivo de cero-longitud en el rbol del
paquete.
Esta orden generalmente se ejecuta despus de que usted ha creado su rbol
del paquete.

145

Creando Tags y Tagfiles (para la instalacion)


El programa de instalacin de Slackware maneja la instalacin de paquetes de
software en su propio sistema. Hay archivos que le dicen al programa de
instalacin que paquetes deben instalarse, cual son los opcionales, y cuales
deben ser seleccionados por defecto.
Un tagfile se encuentra en el primer directorio de series de software y se llama
tagfile. Contiene una lista de todos los paquetes de esta serie y su estado. Los
estados pueden ser:
Tabla16-3. Opciones de estado de los tagfiles
Opcion
Significado
ADD

El paquete es requerido por el sistema

SKP

El paquete puede ser omitido automaticamente

REC

El paquete no es requerido, pero es recomendado

OPT
El paquete es opcinal
El formato es simple:
<package name>: <status>

Un paquete por la lnea. Se guardan los tagfiles originales para cada serie del
software como tagfile.org. As que si usted desordena el suyo, usted puede
restaurar el original.
Muchos administradores prefieren escribir su propio tagfile y empezar la
instalacin seleccionando "full". El programa de instalacin leer los tagfiles y
realizara la instalacin de acuerdo a su contenido. Si usted utiliza REC o OPT,
un cuadro de dialogo se le presentara para que usted tenga la posibilidad de
instalar o no los paquetes especificado. Por consiguiente, se recomienda que
usted solamente use ADD y SKP cuando crea sus tagfiles para una
instalacin automtica.
Solo asegrese que los tagfiles se encuentren en la misma ubicacin de los
originales.

Resumen
Usted debe estar ahora familiarizado con lo que es un paquete de software y
cmo stos se usan en Slackware. Usted debe estar familiarizado con las
varias utilidades de manejo de paquetes y cmo usarlos. Las partes ms
importantes de este captulo son cmo instalar, quitar, y actualizar paquetes.
Ese es el uso ms comn de las utilidades de paquetes. Sin embargo, usted
tambin debe tener un poco de conocimiento sobre como crear e inspeccionar
paquetes

146

Capitulo 17. ZipSlack y BigSlack


contenido
Qu es ZipSlack/BigSlack?
Consiguiendo ZipSlack/BigSlack
Instalacion
Arrancando ZipSlack/BigSlack
Agregando, Eliminando y actualizando Software
Problemas Comunes
Obteniendo Ayuda
Resumen

Que es ZipSlack/BigSlack?
"ZipSlack" es una versin especial de Slackware Linux. Es una copia ya
instalada de Slackware que esta lista para ejecutarse en DOS o en su
particion Windows. Es una instalacion basica, usted no econtrara todo lo que
viene en Slackware. Si usted quiere todo con ZipSlack, entonces usted debe
usar "BigSlack."
ZipSlack recibe su nombre debido a la forma en que es distribuido, un archivo
.ZIP grande. Los usuarios de DOS y Windows probablemente estarn
familiarizados con estos archivos. Ellos son archivos comprimidos. El archivo
ZipSlack contiene todo lo que usted necesita ponerse en marcha con
Slackware.
Es importante hacer notar que ZipSlack y BigSlack son significativamente
diferentes a una instalacin regular. Aunque funcionan de la misma forma y
contiene los mismo programas, estan dirigidos a un publico diferente con
funciones diferentes. Varias ventajas y desventajas de ZipSlack y BigSlack se
describen debajo.
Una ltima cosa, usted siempre debe repasar la documentacin incluida en el
ZipSlack actual o en el directorio BigSlack. Este contiene la ltima informacin
con respecto a la instalacin, arranque, y uso general del producto.

Ventajas

No requiere el reparticionamiento de su disco duro.


Es una buena manera de aprender Slackware Linux sin tropezarse con
el proceso de la instalacin.

Desventajas

Utiliza el sistemas de archivos de DOS, que es mas lento que una


particon de Linux nativa
No funciona bajo Windows NT.
147

Consiguiendo ZipSlack/BigSlack
Obtener ZipSlack o BigSlack es facil. Si usted ha comprado el set oficial
Slackware Linux CD, entonces usted ya tiene ZipSlack y BigSlack.
Simplemente encuentre el CD que contiene el que usted quiere y pngalo en
su unidad de CD-ROM. Normalmente es el tercer o cuarto disco, pero siempre
guiese por las etiquetas encima de esta documentacion.
Si usted quiere descargar ZipSlack o BigSlack, usted debe visitar primero
nuestra pagina "Get Slak" para la ltima informacin sobre la descarga:
http://www.slackware.com/getslack/
ZipSlack y BigSlack son parte de cada lanzamiento de Slackware. Localice la
version que usted quiere y valla a ese directorio en el sitio FTP: The latest
release directory can be found at this location:
ftp://ftp.slackware.com/pub/slackware/slackware/
Usted encontrara ZipSlack en el subdirectorio /zipslack y BigSlak en el
directorio /bigslak. ZipSlack se presenta como un archivo .ZIP grande o en
pequeos trozos del tamao de un disquete. Los pedazos se encuentran en el
directorio /split. BigSlack solo se ofrece en pedazos.
No solo descarge los archivos .ZIP. Usted tambin debe descargar los
archivos de documentacion y cualquier imagen de booteo que consiga en el
directorio.

Instalacion
Una vez que ha descargado los componentes necesarios, usted necsita
extraer el archivo .ZIP (o los archivos que usted descargo por pedazos).
Asegurese de usar un unzipper de 32-bit. El tamao y los nombres de los
archivos son demasiado grandes para un unzipper de 16-bit. Algunos
ejemplos de unzippers de 32-bit son el Winzip y el PKZIP para Windows.
ZipSlak y BigSlak estan diseados para ser extraidos al directorio raiz de su
unidad (como C: o D:) A \LINUX directory will be created that contains the
actual Slackware installation. Usted tambien encontrara los archivos
necesarios para el arranque en ese directorio.
Despues de que usted ha extraido los archivos, usted debe tener un
directorio\LINUX en la unidad de su eleccion (nosotros usaremso C: de aui en
adelante).

Arrancando ZipSlack/BigSlack
Hay varias maneras de arrancar ZipSlack y BigSlack. La mas comun es usar
el archvio LINUX.BAT incluido para arrancar el sistema desde DOS (o desde
el modo DOS en Windows 9x). Este archvio debe editarse antes de que
funcione para que coincida con su sistema.

148

Comienze abriendo el archivo C:\LINUX\LINUX.BAT en su editor de texto


favorito. Al comienzo del archivo usted encontrara un comentario grande.
Explica que es lo que usted debe editar en este archivo. No se procupe si
usted no entiende la configuracion de root. Hay varios ejemplos, para que
usted pueda escoger alguno y probarlo. Si no funciona, usted puede editar el
archivo de nuevo, comentar de nuevo la linea que descomento y probar con
otro.
Despues de que usted descomente la linea que quiere quitandole el "rem" al
comienzo de la linea guarde el archivo y cierre el editor. Arranque su maquina
en modo DOS.
Un prompt de DOS bajo Windows no le servira
Escriba C:\LINUX\LINUX.BAT para arrancar el sistema. Si todo sale bien,
usted debe encontrase con un prompt de inicio de sesion.
Entre como root, sin contrasea. Usted querra probablemente colocar una
contrasea para root, asi como agregar un usuario para usted. A estas alturas
usted debe referirse a otros capitulos en este libro para ayuda general.
Si usar el archvio LINUX.BAT para arrancar el sistema no le funciona, usted
debe consultar el archivo C:\LINUX\README.1ST que trata sobre otras
maneras de arrabcar el sistema.

Agregando, Eliminando y actualizando Software


ZipSlack y BigSlack utilizan los mismos paquetes que una instalacion normal
de Slackware. Eso significa que usted puede usar las utilidades de paquetes
normales para agregar, quitar y actualizar software. Usted puede incluso
agregar paquetes directamente del CD de instalacion.
Refirase a Captulo 16 para ms informacin.

Problemas Comunes
stos son los problemas ms comnes que encuentran los usuarios de
ZipSlack y BigSlack. Nosotros ofrecemos varios otros mtodos de ayuda si su
problema no se menciona aqu.

Unable to open initial console


Esto ocurre cuando se especifica la particion del dispositivo incorrecta para
root= en el archivo LINUX.BAT. Edite de nuevo el archivo LINUX.BAT y
escoga otra particion root=. Si usted no tiene absolutamente ninguna idea lo
que esto significa, usted puede probar cada uno hasta que alguno le funcione
correctamente.
149

Esto puede ocurri tambien cuando los archivos no son extraidos directamente
al directorio raiz de la unidad. Los archivos necesitan ser extrados
directamente a una unidad no a un subdirectorio.

Kernel panic: VFS : Unable to mount root fs


Esto significa que usted ha especificado un dispositivo equivocado para root=
en el archivo LINUX.BAT. Usted necesita editar ese archivo de nuevo y
escoger otro dispositivo para root=. Si usted no sabe cual de ellos es,
simplemente pruebe con todos hasta que alguno logre funcionar.

Obteniendo Ayuda
Antes de pedir ayuda, usted debeeria revisar la documentacion que se incluye
en el directorio C:\LINUX a ver si hay alguna respuesta a su pregunta.
Si usted ha leido la documentacion y todavia sigue teniendo problemas, los
metodos siguientes lograran resolver sus problemas.

ZipSlack FAQ
La lista de las preguntas y repuestas mas communes puede ser encontrada
en el directorio C:\LINUX al igual que en la pagina:
http://www.slackware.com/faq/

ZipSlack Foro de discusion


En el foro de discussion online usted puede hablar con otros usuarios de
ZipSlack. Usted puede colocar sus preguntas asi como tambien puede
responder las de otros. Es una gran manera de obtener ayuda directamente
de los usuarios.
http://www.slackware.com/forum/

Soporte Via Email


El equipo de soporte de Slackware tratara de ayudarlo si usted esta teniendo
problemas con ZipSlack o BigSlack. Asegurese de describir claramente el
problema e incluir toda la informacio que usted crea necesaria para resolver el
problema.
<support@slackware.com>

Resumen
Usted debe entender lo que es ZipSlack y BigSlack. Si usted decide usar
culquiera de ellos, usted debe saber instalar, arrancar, solucionar problemas y
conseguir ayuda. ZipSlack y BigSlack pueden ser muy convenientes si usted
solamente quiere probar Slackware, pero no quiere quitar sus particiones de
Windows existentes.
150

Glosario
Account (cuenta)
Toda la informacion sobre el usuario incluyendo el nombre de usuario ,
contrasea , informacion de contacto , UID y GID y el directorio home.
Crear una cuenta es agregar y definir a un usuario.
Background (Fondo o Segundo plano)
Se dice que cualquier proceso que se esta ejecutando sin el control del
terminal se esta ejecutando en el fondo.
Boot disk (Disco de Inicio)
Un disquete que contiene un sistema operativo (en nuestro caso, el
kernel de Linux) desde donde se puede arrancar la computadora.
Compile (Compilar)
Convertir codigo fuente a codigo de maquina binario.
Daemon (Demonio)
Un programa diseado para ejecutarse en el fondo, sin la intervencin
del usuario, y realizar una tarea especifica (usualmente proveer un
servicio).
Darkstar
El hostname por defecto en Slackware; su computadora sera llamada
darkstar si usted no especifica un nombre.
Una de las maquinas fabricadas por Patrick Volkerding's, fue llamada
Dark Star, una cancin de Grateful Dead.
Desktop Environment (Entorno de Escritorio)
Una interfaz grfica del usuario (el GUI) que se ejecuta en el X Window
System y proporciona integracin entre las aplicaciones, un look
parecido en todas las aplicaciones, componentes y archivos capacidad
de manejo de ventana, etc. Un paso ms all del gestor de ventanas
simple.
Device driver (Controlador de Dispositivos)
Es un pedaso de codigo en el kernel que se encarga de controlar
piezas del hardware.
Device node (Nodo del Dispositivo)
Un tipo especial de archivo en el /dev filesystem que representa un
componente del hardware en el sistema operativo.
DNS
Servicio de Nombres de Dominios. Un sistema con computadoras
conectadas en red se le asignan nombres que son convertidos a
direcciones numericas.
Domain name (Nombre del dominio)
El nombre DNS de una computadora, excluyendo el nombre del host.
Dot file (Archivo de punto)
En Linux, los archivos ocultas comienzan con un punto ..
Dotted quad (quad punteado)
El formato de las direcciones IP, se llaman asi por que constan de
cuatro numeros (de rango 0-255) separados por puntos.

151

Dynamic loader (Cargador Dinamico)


Cuando se compila un programa bajo Linux, usualmente ellos incluyen
pedasos de codigos (funciones) de librerias externas. Cuando se
ejecuta dicho programa, estas librerias deben encontrarse y las
funciones requeridas deben ser cargadas en memoria.Ese es el trabajo
de un cargador dinamico.
Environment variable (Variable de entorno)
Una variable colocada en el shell del ususario que puede ser usada por
ese usuario o por los programas que ejecuta ese ususario en ese shell.
Las variables de entorno generalmente almacenan preferencias del
ususario y valores por defecto.
Epoch (Epoca)
Un periodo en la historia; en Unix, The Epoch comenzo a las 00:00:00
UTC Enero 1, 1970. Esto es considerado el "principio del tiempo" en
Unix y en sistemas basados en Unix, y cualquier otros tiempo similar es
calculado en base a esta fecha.
Filesystem (Sistema de Archivos)
Una representacion de los datos guardados en donde los archivos de
datos se guardan organizadamente en directories. El filesystem es la
forma universal de representar datos guardados en discos (fijos y
removibles).
Foreground (Primer Plano)
Se dice que un programa que esta recibiendo o controlando la entrda
desde un terminal se esta ejecutando en primer plano.
Framebuffer
Un tipo de dispositivo grafico; en Linux, esto se refiere al software
framebuffer, que proporciona una interfaz standard de framebuffer a los
programas y oculta los drivers especificos del hardware a ellos. Esta
capa de abstraccion libera a los porgramas de la necesidad de hablar
con los diferentes controladores de Hardware.
FTP
Protocolo de Transferencia de Archivos. FTP es un mtodo muy
popular de transferir datos entre las computadoras.
Gateway (puerta de enlace)
Una computadora a traves de la cual se transmiten datos a otra red.
GID
Identificador de Grupo. El GID es un nmero nico asignado a un grupo
de usuarios.
Group (Grupo)
Los usuarios en el Unix pertenecen a" grupos" que pueden contener a
muchos otros usuarios.
GUI
Interfaz grafica de usuario. Una inerfaz de software que usas elementos
graficos como botones, barras de desplazamiento, ventanas, etc. en
lugar de una entrada y salida basada en texto.
Home directory (Directorio Home)
El home directory de un ususario es el directorio donde sera
colocado el ususario cada vez que inicie session. Los usuarios tienen
full permisos y un regimen mas libre dentro de su directorio home.

152

HOWTO (Como Hacer)


Un documento que describe cmo hacer algo, como configurar un
firewall o manejar usuarios y grupos. Hay una gran coleccin de estos
documentos disponible en Linux Documentation Project.
HTTP
Protocolo de transferencia de hipertexto. HTTP es el protocolo primario
en que el World Wide Web opera.
ICMP
Protocolo de Control de mensajes de internet. Un protocolo de red muy
basico, usado principalmente para los ping.
Kernel
El corazn de un sistema operativo. El kernel es la parte que
proporciona un control basico de procesos e interfaces del hardware de
la computadora
Kernel module (Modulo del Kernel)
Una pedazo de codigo Kernel, normalmente algun tipo de controlador,
que puede cargarse y descargarse separado del cuerpo principal del
kernel. Los modulos son utiles cuando se actualiza un controlador o
cuando se prueban las configuraciones del kernel, porque ellos pueden
cargarse y descargarse sin necesidad de reiniciar.
Library (Libreria)
Una coleccin de funciones que pueden compartirse entre los
programas.
LILO
El Cargador de Linux (LInux LOader. LILO es el gestor de arranque
mas usado en Linux.
LOADLIN
LOADLIN es un programa que corre bajo MS DOS o Windows y puede
iniciar un sistema Linux. Normalmente es usado en computadoras con
multiples sistemas operativos.(incluyendo Linux y DOS/Windows, por
suspuesto).
Man section (Seccion del Manual)
Las paginas del manual de Unix standard ("man") se agrupan en
secciones para hacer mas facil la referencia. Todas las paginas de
progrmacion C estan en la seccion 3, La administracion del sistema en
la seccion 5, etc.
MBR
El Registro de Arranque Principal. Un espacio reservado en una unidad
de disco duro dnde se guarda informacio sobre que hacer al
momento del arranque. Pueden escribirse LILO y otros gestores de
inicio aqu.
Motif
Un juego de herramientas de programacion usadas en muchos
programas X viejos.
MOTD
Mensaje del dia. El motd (Almacenado en Linux en: /etc/motd) es un
archivo de texto que se muestra a todos los ususarios que inicien
session ese dia.
Mount point (Punto de Montaje)
Un directorio vaco en un filesystem dnde otro filesystem ser
montado", o anexado.
153

Nameserver (Servidor de Nombres)


Un servidor de informacion DNS. Los Nameservers traducen los
nombres DNS a direcciones IP numricas.
Network interface (Interfaz de Red)
Una representacin virtual de un dispositivo de red proporcionada por
el Kernel. Las interfaz de red permite conectar usuarios y programas.
NFS
Sistema de Archivos deRed. NFS le permite montar filesystem remotos
como si ellos fueran locales en su computadora y asi proporcionar un
metodo transparente de compartir archivos.
Octal
Sistema numerico de base-8, con los numeros 0-7.
Pager
Un programa de X que le permite al usuario ver y cambiar entre los
multiples escritorios
Partition (Particion)
divisin de una unidad de disco duro. Los filesystem se montan encima
de las particiones.
PPP
El Protocolo de punto-a-punto. PPP se usa principalmente por conectar
va mdem a un Proveedor de servicios de Internet.
Process (Proceso)
Un programa ejecutandose.
Root directory (Directorio raiz)
Representado por un" /", el directorio raz esta en el tope del filesystem,
todos los otros directorios son ramas creadas desde el en el arbol de
directorios).
Root disk (Disco root)
El disco donde se guarda el directorio raiz.
Routing table (tabla de Routing)
La configuracion de la informacion que utilizara el kernel para el
routing de los datos que se manejan en una red. Contiene una
cantidad de tidbits que indican donde esta su gateway por defecto, que
interfaz de red esta conectada, etc.
Runlevel (Nivel de ejecucion)
El estado general del sistema es definido por el init. Runlevel 6 es
reiniciar, runlevel 1 es el modo de un solo usuario ("single user mode"),
runlevel 4 es un inicio de sesion en X, hay seis runleveles disponibles
en su sistema Slackware.
Secure shell (Shell seguro)
Un metodo encriptado de iniciar sesion en una computadora remota.
Muchos programas de shell seguro estan disponibles.
Service (Servicio)
Se utilizan cuando se comparte informacion y/o datos de un solo
"servidor" a multiples "clientes". HTTP,FTP,NFS,etc son servicios.
Shadow password suite (Paquete de contraseas Shadow)
El pauete de contraseas Shadow permite esconder las contraseas
encriptadas de los ususarios, mientras el resto de la informacion del
archivo /etc/passwd permanece visible a todos. Esto protege de los
intentos de fuerza-bruta.
154

Shell
Los Shells proporcionan una interfaz de linea de comando al ususario.
Cuando usted esta mirando un prompt de texto, usted esta en un shell.
Shell builtin
Un comando construido en el shell, es distinto de un comando
proporcionado por un programa externo. Por ejemplo, bash tiene un cd
builtin.
Signal (Signo)
Los programas Unix pueden comunicarse con otros usando signos
"simples", que estan enumerados y usualmente tienen un significado
especifico. el comando kill -l muestra una lista de los signos
disponibles.
SLIP
Protocolo de Interfaz de linea en serie. SLIP es un protocolo similar a
PPP, que se usa para conectar dos maquinas a traves del puerto serial.
Software package (Paquete de Software)
Un programa y sus archivos asociados, se archivan y comprimen en un
solo archivo junto a cualquier script necesario o informacion de ayuda
para manejar la instalacion, actualizacion y eliminacion de estos
archivos
Software series (Series de Software)
Una coleccin de paquetes de software relacionados en Slackware.
Todos los paquetes de KDE estn en la serie "kde", mientras que los
paquetes de red se encuentran en la serie "n", etc.
Source code (Codigo Fuente)
El codigo (mas o menos) entendible al humano en que se escriben la
mayoria de los programas. El cdigo fuente es compilado luego en
"cdigo binario."
Standard Error (stderr)
La salida normal Unix para los errores. Los Programas escriben
cualquier mensaje del error en el stderr, para que ellos puedan
separarse del rendimiento normal.
Standard Input (stdin)
La entrada Unix standard. Los datos pueden ser redireccionados o
manejados por tuberias en el programa stdin desde cualquier fuente.
Standard Output (stdout)
La salida Unix standard. El texto de salida normal de un programa se
escribe en stdout que est separado de los mensajes del error
reportados en stderr.
Subnet
Un rango de direccin IP que es parte de un rango ms grande. Por
ejemplo, 192.168.1.0 es una subred de 192.168.0.0 (donde 0 es una
mascara que significa "indefinido"); es, de hecho, el" .1" subred.
Superblock
En Linux, se habla de particiones en terminos de bloques. Un bloque
son 512 bytes. Superblock son los primeros 512 bytes de una particion.
Supplemental disk (Disco supplemental)
En Slackware, se utiliza un disquete que no contiene el kernel ni el root
filesystem pero cuenta con archivos adicionales necesarios como los
modulos de red o soprte para PCMCIA
155

Suspended process (Proceso suspendido)


Un proceso que ha sido matado, congelado o detenido.
Swap space (Espacio Swap)
Espacio en disco usado por el kernel como un "RAM virtual". Es ms
lento que la RAM, pero como el espacio en disco es ms barato, el
swap es normalmente ms abundante.
Symbolic link (Link simbolico)
Un archivo especial que simplemente conduce a la ubicacion de otro
archivo.
Tagfile
Un archivo usado durante la instalacion de Slackware que indica que
paquetes van a ser instalados.
Terminal
Una interfaz humano-computadora que consiste en por lo menos una
pantalla (o la pantalla virtual) y algn mtodo de entrada (casi siempre
por lo menos un teclado).
Toolkit, GUI
Un juego de herramientas del GUI es una coleccin de bibliotecas que
le proporcionan el cdigo a un programador para dibujar widgets"
como las barras de desplazamiento, casillas de verificacin, etc. y
construir una interfaz grfica. El juego de herramientas del GUI es
usado a menudo por un programa para definir como lucira.
UID
identificador de usuario. Un nico nmero que identifica a un usuario en
el sistema.
VESA
Asociasion de Normas de Video Electronico. El trmino VESA" se
usa a menudo para especificar una norma de la Asociacin. Casi todos
los adaptadores de video modernos son VESA-compatibles.
Virtual terminal (Terminal Virtual)
El uso de software para simular multiples terminales, utilizando un solo
juego de dispositivos de entrada y salida (teclado,monitor,mouse).
Window manager (Gestor de Ventanas)
Un progrma de X cuyo proposito es proporcionar una interfaz grafica
mas alla de un simple rectangulo dibujado en el X Window System. Los
gestores de ventanas por lo general proporcionan barras de titulo,
menus para los programas, etc.
Working directory (Directorio de Trabajo)
El directorio donde se esta ejecutando un programa.
Wrapper program
Un programa cuyo solo propsito es ejecutar otros programas, pero
cambiado su conducta de alguna manera alterando sus ambientes o
filtrando su entrada.
X server (Servidor X)
El programa en el X Window System que une el hardware grafico con
los programas que se ejecutan bajo X.
X Window System
El sistema de la interfaz grfica orientado a red usado en la mayora de
los sistemas basados en Unix , incluyendo Linux

156

Licencia Pblica GNU


Esta es la conocida GNU Public License (GPL), versin 2 (de junio de 1.991),
que cubre la mayor parte del software de la Free Software Foundation, y
muchos ms programas.
NOTA IMPORTANTE:
Esta es una traduccin no oficial al espaol de la GNU General Public
License. No ha sido publicada por la Free Software Foundation, y no
establece legalmente las condiciones de distribucin para el software que usa
la GNU GPL. Estas condiciones se establecen solamente por el texto original,
en ingls, de la GNU GPL. Sin embargo, esperamos que esta traduccin
ayude a los hispanohablantes a entender mejor la GNU GPL.
IMPORTANT NOTICE:
This is an unofficial translation of the GNU General Public License into
Spanish. It was not published by the Free Software Foundation, and does not
legally state the distribution terms for software that uses the GNU GPL--only
the original English text of the GNU GPL does that. However, we hope that this
translation will help Spanish speakers understand the GNU GPL better.
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave,
Cambridge, MA 02139, EEUU Se permite la copia y distribucin de copias
literales de este documento, pero no se permite su modificacin.

Prembulo
Las licencias que cubren la mayor parte del software estn diseadas para
quitarle a usted la libertad de compartirlo y modificarlo. Por el contrario, la
Licencia Pblica General de GNU pretende garantizarle la libertad de
compartir y modificar software libre, para asegurar que el software es libre
para todos sus usuarios. Esta Licencia Pblica General se aplica a la mayor
parte del software del la Free Software Foundation y a cualquier otro
programa si sus autores se comprometen a utilizarla. (Existe otro software de
la Free Software Foundation que est cubierto por la Licencia Pblica General
de GNU para Bibliotecas). Si quiere, tambin puede aplicarla a sus propios
programas.
Cuando hablamos de software libre, estamos refirindonos a libertad, no a
precio. Nuestras Licencias Pblicas Generales estn diseadas para
asegurarnos de que tenga la libertad de distribuir copias de software libre (y
cobrar por ese servicio si quiere), de que reciba el cdigo fuente o que pueda
conseguirlo si lo quiere, de que pueda modificar el software o usar fragmentos
de l en nuevos programas libres, y de que sepa que puede hacer todas estas
cosas.
157

Para proteger sus derechos necesitamos algunas restricciones que prohiban a


cualquiera negarle a usted estos derechos o pedirle que renuncie a ellos.
Estas restricciones se traducen en ciertas obligaciones que le afectan si
distribuye copias del software, o si lo modifica.
Por ejemplo, si distribuye copias de uno de estos programas, sea
gratuitamente, o a cambio de una contraprestacin, debe dar a los receptores
todos los derechos que tiene. Debe asegurarse de que ellos tambin reciben,
o pueden conseguir, el cdigo fuente. Y debe mostrarles estas condiciones de
forma que conozcan sus derechos.
Protegemos sus derechos con la combinacin de dos medidas:

1. Ponemos el software bajo copyright


2. le ofrecemos esta licencia, que le da permiso legal para copiar,
distribuir y/o modificar el software.

Tambin, para la proteccin de cada autor y la nuestra propia, queremos


asegurarnos de que todo el mundo comprende que no se proporciona ninguna
garanta para este software libre. Si el software se modifica por cualquiera y
ste a su vez lo distribuye, queremos que sus receptores sepan que lo que
tienen no es el original, de forma que cualquier problema introducido por otros
no afecte a la reputacin de los autores originales.
Por ltimo, cualquier programa libre est constantemente amenazado por
patentes sobre el software. Queremos evitar el peligro de que los
redistribuidores de un programa libre obtengan patentes por su cuenta,
convirtiendo de facto el programa en propietario. Para evitar esto, hemos
dejado claro que cualquier patente debe ser pedida para el uso libre de
cualquiera, o no ser pedida.
Los trminos exactos y las condiciones para la copia, distribucin y
modificacin se exponen a continuacin.

Trminos y condiciones para la copia, distribucin y


modificacin
1. Esta Licencia se aplica a cualquier programa u otro tipo de trabajo que
contenga una nota colocada por el tenedor del copyright diciendo que
puede ser distribuido bajo los trminos de esta Licencia Pblica
General. En adelante, Programa se referir a cualquier programa o
trabajo que cumpla esa condicin y trabajo basado en el Programa
se referir bien al Programa o a cualquier trabajo derivado de l segn
la ley de copyright. Esto es, un trabajo que contenga el programa o una
procin de l, bien en forma literal o con modificaciones y/o traducido
158

en otro lenguaje. Por lo tanto, la traduccin est incluida sin


limitaciones en el trmino modificacin. Cada concesionario
(licenciatario) ser denominado usted.
Cualquier otra actividad que no sea la copia, distribucin o modificacin
no est cubierta por esta Licencia, est fuera de su mbito. El acto de
ejecutar el Programa no est restringido, y los resultados del Programa
estn cubiertos nicamente si sus contenidos constituyen un trabajo
basado en el Programa, independientemente de haberlo producido
mediante la ejecucin del programa. El que esto se cumpla, depende
de lo que haga el programa.
2. Usted puede copiar y distribuir copias literales del cdigo fuente del
Programa, segn lo has recibido, en cualquier medio, supuesto que de
forma adecuada y bien visible publique en cada copia un anuncio de
copyright adecuado y un repudio de garanta, mantenga intactos todos
los anuncios que se refieran a esta Licencia y a la ausencia de
garanta, y proporcione a cualquier otro receptor del programa una
copia de esta Licencia junto con el Programa. Puede cobrar un precio
por el acto fsico de transferir una copia, y puede, segn su libre
albedro, ofrecer garanta a cambio de unos honorarios.
3. Puede modificar su copia o copias del Programa o de cualquier porcin
de l, formando de esta manera un trabajo basado en el Programa, y
copiar y distribuir esa modificacin o trabajo bajo los trminos del
apartado 1, antedicho, supuesto que adems cumpla las siguientes
condiciones:
1. Debe hacer que los ficheros modificados lleven anuncios
prominentes indicando que los ha cambiado y la fecha de
cualquier cambio.
2. Debe hacer que cualquier trabajo que distribuya o publique y que
en todo o en parte contenga o sea derivado del Programa o de
cualquier parte de l sea licenciada como un todo, sin carga
alguna, a todas las terceras partes y bajo los trminos de esta
Licencia.
3. Si el programa modificado lee normalmente rdenes
interactivamente cuando es ejecutado, debe hacer que, cuando
comience su ejecucin para ese uso interactivo de la forma ms
habitual, muestre o escriba un mensaje que incluya un anuncio
de copyright y un anuncio de que no se ofrece ninguna garanta
(o por el contrario que s se ofrece garanta) y que los usuarios
pueden redistribuir el programa bajo estas condiciones, e
indicando al usuario cmo ver una copia de esta licencia.
(Excepcin: si el propio programa es interactivo pero
normalmente no muestra ese anuncio, no se requiere que su
trabajo basado en el Programa muestre ningn anuncio).
Estos requisitos se aplican al trabajo modificado como un todo. Si
partes identificables de ese trabajo no son derivadas del Programa, y
pueden, razonablemente, ser consideradas trabajos independientes y
separados por ellos mismos, entonces esta Licencia y sus trminos no
159

se aplican a esas partes cuando sean distribuidas como trabajos


separados. Pero cuando distribuya esas mismas secciones como
partes de un todo que es un trabajo basado en el Programa, la
distribucin del todo debe ser segn los trminos de esta licencia,
cuyos permisos para otros licenciatarios se extienden al todo completo,
y por lo tanto a todas y cada una de sus partes, con independencia de
quin la escribi.
Por lo tanto, no es la intencin de este apartado reclamar derechos o
desafiar sus derechos sobre trabajos escritos totalmente por usted
mismo. El intento es ejercer el derecho a controlar la distribucin de
trabajos derivados o colectivos basados en el Programa.
Adems, el simple hecho de reunir un trabajo no basado en el
Programa con el Programa (o con un trabajo basado en el Programa)
en un volumen de almacenamiento o en un medio de distribucin no
hace que dicho trabajo entre dentro del mbito cubierto por esta
Licencia.
4. Puede copiar y distribuir el Programa (o un trabajo basado en l, segn
se especifica en el apartado 2, como cdigo objeto o en formato
ejecutable segn los trminos de los apartados 1 y 2, supuesto que
adems cumpla una de las siguientes condiciones:
1. Acompaarlo con el cdigo fuente completo correspondiente, en
formato electrnico, que debe ser distribuido segn se especifica
en los apartados 1 y 2 de esta Licencia en un medio
habitualmente utilizado para el intercambio de programas, o
2. Acompaarlo con una oferta por escrito, vlida durante al menos
tres aos, de proporcionar a cualquier tercera parte una copia
completa en formato electrnico del cdigo fuente
correspondiente, a un coste no mayor que el de realizar
fsicamente la distribucin del fuente, que ser distribuido bajo
las condiciones descritas en los apartados 1 y 2 anteriores, en
un medio habitualmente utilizado para el intercambio de
programas, o
3. Acompaarlo con la informacin que recibiste ofreciendo
distribuir el cdigo fuente correspondiente. (Esta opcin se
permite slo para distribucin no comercial y slo si usted recibi
el programa como cdigo objeto o en formato ejecutable con tal
oferta, de acuerdo con el apartado b anterior).
Por cdigo fuente de un trabajo se entiende la forma preferida del
trabajo cuando se le hacen modificaciones. Para un trabajo ejecutable,
se entiende por cdigo fuente completo todo el cdigo fuente para
todos los mdulos que contiene, ms cualquier fichero asociado de
definicin de interfaces, ms los guiones utilizados para controlar la
compilacin e instalacin del ejecutable. Como excepcin especial el
cdigo fuente distribuido no necesita incluir nada que sea distribuido
normalmente (bien como fuente, bien en forma binaria) con los
componentes principales (compilador, kernel y similares) del sistema
operativo en el cual funciona el ejecutable, a no ser que el propio
160

componente acompae al ejecutable. Si la distribucin del ejecutable o


del cdigo objeto se hace mediante la oferta acceso para copiarlo de un
cierto lugar, entonces se considera la oferta de acceso para copiar el
cdigo fuente del mismo lugar como distribucin del cdigo fuente,
incluso aunque terceras partes no estn forzadas a copiar el fuente
junto con el cdigo objeto. No puede copiar, modificar, sublicenciar o
distribuir el Programa excepto como prev expresamente esta Licencia.
Cualquier intento de copiar, modificar sublicenciar o distribuir el
Programa de otra forma es invlida, y har que cesen automticamente
los derechos que te proporciona esta Licencia. En cualquier caso, las
partes que hayan recibido copias o derechos de usted bajo esta
Licencia no cesarn en sus derechos mientras esas partes continen
cumplindola.
5. No est obligado a aceptar esta licencia, ya que no la ha firmado. Sin
embargo, no hay hada ms que le proporcione permiso para modificar
o distribuir el Programa o sus trabajos derivados. Estas acciones estn
prohibidas por la ley si no acepta esta Licencia. Por lo tanto, si modifica
o distribuye el Programa (o cualquier trabajo basado en el Programa),
est indicando que acepta esta Licencia para poder hacerlo, y todos
sus trminos y condiciones para copiar, distribuir o modificar el
Programa o trabajos basados en l.
6. Cada vez que redistribuya el Programa (o cualquier trabajo basado en
el Programa), el receptor recibe automticamente una licencia del
licenciatario original para copiar, distribuir o modificar el Programa, de
forma sujeta a estos trminos y condiciones. No puede imponer al
receptor ninguna restriccin ms sobre el ejercicio de los derechos aqu
garantizados. No es usted responsable de hacer cumplir esta licencia
por terceras partes.
7. Si como consecuencia de una resolucin judicial o de una alegacin de
infraccin de patente o por cualquier otra razn (no limitada a asuntos
relacionados con patentes) se le imponen condiciones (ya sea por
mandato judicial, por acuerdo o por cualquier otra causa) que
contradigan las condiciones de esta Licencia, ello no le exime de
cumplir las condiciones de esta Licencia. Si no puede realizar
distribuciones de forma que se satisfagan simultneamente sus
obligaciones bajo esta licencia y cualquier otra obligacin pertinente
entonces, como consecuencia, no puede distribuir el Programa de
ninguna forma. Por ejemplo, si una patente no permite la redistribucin
libre de derechos de autor del Programa por parte de todos aquellos
que reciban copias directa o indirectamente a travs de usted, entonces
la nica forma en que podra satisfacer tanto esa condicin como esta
Licencia sera evitar completamente la distribucin del Programa.
Si cualquier porcin de este apartado se considera invlida o imposible
de cumplir bajo cualquier circunstancia particular ha de cumplirse el
resto y la seccin por entero ha de cumplirse en cualquier otra
circunstancia. No es el propsito de este apartado inducirle a infringir
ninguna reivindicacin de patente ni de ningn otro derecho de
propiedad o impugnar la validez de ninguna de dichas reivindicaciones.
161

Este apartado tiene el nico propsito de proteger la integridad del

implcitas o a la conveniencia para un propsito particular. Cualquier


riesgo referente a la calidad y prestaciones del programa es asumido
por usted. Si se probase que el Programa es defectuoso, asume el
coste de cualquier servicio, reparacin o correccin.
13. En ningn caso, salvo que lo requiera la legislacin aplicable o haya
sido acordado por escrito, ningn tenedor del copyright ni ninguna otra
parte que modifique y/o redistribuya el Programa segn se permite en
esta Licencia ser responsable ante usted por daos, incluyendo
cualquier dao general, especial, incidental o resultante producido por
el uso o la imposibilidad de uso del Programa (con inclusin, pero sin
limitacin a la prdida de datos o a la generacin incorrecta de datos o
a prdidas sufridas por usted o por terceras partes o a un fallo del
Programa al funcionar en combinacin con cualquier otro programa),
incluso si dicho tenedor u otra parte ha sido advertido de la posibilidad
de dichos daos.

FIN DE TRMINOS Y CONDICIONES

Apndice: Cmo aplicar estos trminos a sus nuevos


programas.
para el pblico en general, la mejor forma de conseguirlo es convirtindolo en
software libre que cualquiera pueda redistribuir y cambiar bajo estos trminos.
Para hacerlo, aada los siguientes anuncios al programa. Lo ms seguro es
aadirlos al principio de cada fichero fuente para transmitir lo ms
efectivamente posible la ausencia de garanta. Adems cada fichero debera
tener al menos la lnea de copyright y un indicador a dnde puede
encontrarse el anuncio completo.
<una lnea para indicar el nombre del programa y una rpida idea de qu
hace.>
Copyright (C) 19aa <nombre del autor Este programa es software libre. Puede
redistribuirlo y/o modificarlo bajo los trminos de la Licencia Pblica General
de GNU segn es publicada por la Free Software Foundation, bien de la
versin 2 de dicha Licencia o bien (segn su eleccin) de cualquier versin
posterior.
&bnsp;

Este programa se distribuye con la esperanza de que sea til, pero SIN
NINGUNA GARANTA, incluso sin la garanta MERCANTIL implcita o sin
garantizar la CONVENIENCIA PARA UN PROPSITO PARTICULAR. Vase
la Licencia Pblica General de GNU para ms detalles.
163

Debera haber recibido una copia de la Licencia Pblica General junto con
este programa. Si no ha sido as, escriba a la Free Software Foundation, Inc.,
en 675 Mass Ave, Cambridge, MA 02139, EEUU.
Aada tambin informacin sobre cmo contactar con usted mediante correo
electrnico y postal.

Si el programa es interactivo, haga que muestre un pequeo anuncio como el


siguiente, cuando comienza a funcionar en modo interactivo:
Gnomovision versin 69, Copyright (C) 19aa nombre del autor

Gnomovision no ofrece ABSOLUTAMENTE NINGUNA GARANTA. Para ms


detalles escriba show w.
Los comandos hipotticos show w y show c deberan mostrar las partes
adecuadas de la Licencia Pblica General. Por supuesto, los comandos que
use pueden llamarse de cualquier otra manera. Podran incluso ser
pulsaciones del ratn o elementos de un men (lo que sea apropiado para su
programa).
Tambin deberas conseguir que su empleador (si trabaja como programador)
o tu Universidad (si es el caso) firme un renuncia de copyright para el
programa, si es necesario. A continuacin se ofrece un ejemplo, altere los
nombres segn sea conveniente:

Yoyodyne, Inc. mediante este documento renuncia a cualquier


inters de derechos de copyright con respecto al programa
Gnomovision (que hace pasadas a compiladores) escrito por
Pepe Programador.
<firma de Pepito Grillo>, 20 de diciembre de 1996
Pepito Grillo, Presidente de Asuntillos Varios.

Esta Licencia Pblica General no permite que incluya sus programas en


programas propietarios. Si su programa es una biblioteca de subrutinas,
puede considerar ms til el permitir el enlazado de aplicaciones propietarias
con la biblioteca. Si este es el caso, use la Licencia Pblica General de GNU
para Bibliotecas en lugar de esta Licencia.
164

You might also like