Está en la página 1de 49

Curso bsico de Linux

Alejandro Aguilar Sierra


asierra@servidor.unam.mx

SSA Julio 2002


Derechos de Autor c 2002 Alejandro Aguilar Sierra.
Se otorga permiso para copiar, distribuir y/o modificar este documento bajo
los trminos de la Licencia de Documentacin Libre GNU (FDL), Versin 1.1 o
cualquier otra versin posterior publicada por la Free Software Foundation.
Captulo 1

Introduccin

Siendo Linux una pieza importante de software libre, lo primero que debe saberse
es la filosofa del software libre.

1.1 Qu NO es el Software Libre?


Gratuito La confusin viene del ingls free, con las acepciones libre y gratuito.
En espaol no debera haber tal confusin.

Dominio pblico Para poder hacer uso de software libre es preciso aceptar los
trminos de una licencia que garantice que se mantendrn ciertas reglas y
principios.

Annimo Se reconoce a los autores y encargados de mantenimiento del software


libre por medio de un concepto de derechos de autor (copyright) compatible
con sus principios. A veces se le llama copyleft.

Qu S es el Software Libre?

No propietario no hay que tener autorizacin ni contrato para poder adquirirlo o


usarlo.

Distribuible puedes hacer tantas copias como quieras, incluso venderlas. Pero
no se puede impedir que alguien ms, a su vez, lo redistribuya.

Accesible el cdigo fuente est disponible. Se promueve la conveniencia de dis-


tribuir el cdigo fuente para el desarrollo de software.

2
Modificable puedes mejorar el programa, incluso redistribuir la modificacin. La
depuracin se paraleliza: rapidez en el desarrollo y calidad del resultado son
compatibles.

Reusable puedes aprovechar cdigo ya escrito, siempre y cuando tu nuevo cdi-


go mantenga las mismas libertades del software libre.

Sin garantas nadie te asegura que funcionar, nadie se hace cargo de ningn
dao. No ests desamparado: el soporte sigue otros cauces distintos a los
tradicionales.

Hereditario cualquier programa derivado de software libre es tambin libre. Se


prohibe prohibir.

1.2 Free Software Fundation (FSF)


Fundada en 1985 por Richard Stallman para promover el derecho a usar,
estudiar, copiar modificar y redistribuir programas.

La FSF se concentra en el desarrollo de software libre nuevo, y en hacerlo


coeherente de modo que se elimine la necesidad de usar software propieta-
rio.

Adems de desarrollar software, la FSF protege, promueve y preserva soft-


ware libre.

Los fondos de la FSF provienen de la distribucin de CDs y manuales de


software GNU, adems de donaciones deducibles de impuestos (en EU).

1.3 GNUs Not Unix


Proyecto iniciado en 1984 por Richard Stallman para obtener un sistema
operativo completo, totalmente libre, compatible con el sistema operativo
Unix.

La idea original del proyecto era preservar el espritu colaborativo que haba
existido antes de que se impusieran los obstculos del software propietario.

3
Un sistema operativo incluye ambientes de trabajo (shells) compiladores,
editores, formateadores de texto, correo, etc. Con el tiempo el proyecto
GNU tena una coleccin impresionante de estos programas. Solo faltaba el
ncleo.

1.4 Qu es Linux?
Estrictamente hablando, Linux es slo el ncleo (kernel) de un sistema ope-
rativo tipo Unix.
Fue desarrollado por el finlands Linus Torvalds en 1991 a partir de Minix,
un sistema Unix mnimo, desarrollado con fines didcticos por A. Tanen-
baum.
El anuncio se hizo en el grupo de noticias comp.os.minix y permiti la
participacin de numerosos usuarios y programadores de todo el mundo a
travs de Internet.
El kernel alcanz una estabilidad a nivel de usable en 1994. A partir de
entonces Linux se convierte en el complemento ideal del proyecto GNU, al
que solo le faltaba un ncleo estable.

1.5 Caractersticas y virtudes del GNU/Linux


GNU hereda todas las caractersticas vistas en la seccin sobre software libre.
Estable meses (inclusive aos) de funcionamiento ininterrumpido.
Seguro prcticamente sin virus, un proceso no puede acceder a reas de memoria
ajenas, etc.
Multitarea (de verdad).
Multiusuario (de verdad).
Compatible cumple el estndar POSIX como otros muchos UNIX, lo que facilita
la migracin entre plataformas.
Multi-arquitectura disponible para Intel y compatibles, PowerPC, Macintosh,
Amiga, Atari, DEC Alpha, Sun Sparc, ARM. . .

4
Rpido maneja eficientemente los recursos: memoria, disco duro, CPU, etc.

Capacidad en red excepcional; fue desarrollado desde un principio para la co-


nexin en red.

Elegante es un modelo de programacin: pequeo, extensible, modular.

1.6 Que falta?


Aparte del ncleo y los programas que conforman el sistema operativo, hacen falta
ms cosas para que el sistema sea til.

Estructura de directorios.

Archivos de configuracin.

Programas de instalacin y configuracin de partes del sistema.

Aplicaciones para el usuario final.

Sistemas de actualizacin de paquetes.

Todas estas cosas juntas y bien organizadas son las cosas que debe proporcionar
una distribucin.

1.7 Distribuciones
Para poder usar un programa GNU hay que localizarlo, descargarlo, desempa-
quetarlo, compilarlo (con todas las herramientas y libreras que pueda necesitar),
instalarlo y configurarlo...es un trabajo pesado y difcil.
Una distribucin es una recopilacin de software ya compilado y empaquetado
para facilitar su instalacin y configuracin.
El gestor de paquetes permite ver una breve descripcin, registra qu progra-
mas estn instalados, verifica las dependencias y conflictos (al instalar o al desins-
talar) para que todo funcione siempre. Incluso actualiza a las nuevas versiones a
travs de la red de manera transparente.
Estas distribuciones permiten instalar un sistema GNU/Linux completo.

5
Slackware Una de las primeras distribuciones organizadas. Muy sencilla y pri-
mitiva comparada con sus sucesoras.

Redhat Una de las distribuciones comerciales ms difundidas, de instalacin gr-


fica relativamente amigable. Sistema de paquetes RPM adoptado por otras
distribuciones.

Suse Distribucin comercial alemana de buena calidad. Usa el mismo sistema de


paquetes RPM.

Debian Distribucin libre desarrollada por un grupo muy numeroso de colabora-


dores a travs de Internet, de calidad extraordinaria. La seguridad y detec-
cin rpida de errores es uno de sus puntos fuertes. Su sistema de paquetes
es de lo mejor.

1.8 Fuentes de documentacin


GNU/Linux se distingue por la calidad y cantidad de documentacin que incluye.
Desde manuales, COMOs, guas, libros, el usuario tiene todo a su disposicin
para informarse de cada detalle del sistema.

Existe un manual por casi cada comando del sistema. La forma de consultar
esta documentacin (en una terminal de texto) es mediante el comando man
seguido del comando del que se quiere obtener informacin. Ejemplo: man
mount.

El comando info es similar, pero en general es ms completo y tiene un


formato hipertexto (ms sencillo que el html).

Los Howtos (COMOs) son una especie de recetas donde se explican paso
a paso diversas tareas del sistema.

1.9 Filosofa RTFM


RTFM: Read The Fucking Manual que en espaol se dira Lea el Jodido
Manual. Se espera que todo usuario de Linux se moleste en leer la do-
cumentacin que acompaa a las distribuciones, antes de hacer preguntas
tontas.

6
Al existir toda clase de informacin sobre el sistema, uno debe informarse
lo ms posible por su cuenta antes de pedir ayuda, esta es una forma de
cortesa ante los dems, y es la forma en que se comporta la gente de la
comunidad GNU/Linux.

1.10 Por qu Debian?


Es libre. Los paquetes aceptados en la distribucin oficial de son 100%
libres (bajo licencia GPL o similar) as como todas sus herramientas de
instalacin y administracin y toda la documentacin.

Es de gran calidad. Debian tiene la fase de pruebas ms prolongada de


todas. Miles de usuarios prueban el software y reportan defectos antes de
liberar una nueva versin.

Increble cantidad de software: ms de 4000 paquetes y cerca de 1000


desarrolladores en casi todo el mundo .

El mejor sistema de empaquetamiento de software en el mundo, con exce-


lente control de dependencias y conflictos. La actualizacin es muy fcil
por diferentes medios (CD, FTP, HTML, etc.).

7
Captulo 2

Tutorial de instalacin

2.1 Averigua tu hardware


Hacemos acopio de todos los manuales. Al menos deberemos identificar:

Tarjeta de red.

Tarjeta de vdeo.

Monitor: frecuencias de refresco y resolucin mxima.

Otras tarjetas: sonido, sintonizadora de TV, etc.

Puede ser til tomar esta informacin de otro sistema operativo.

2.1.1 Arrancar la instalacin


Disponemos de diferentes sabores para el kernel de arranque, que ser el que
quede instalado luego:

vainilla la que se arranca por defecto. Admite gran cantidad de hardware.

udma66 soporte para los discos duros UDMA66; puede dar problemas en equi-
pos antiguos.

compact sin algunos controladores.

idepci mnimo.

8
bf24 con el kernel ms reciente (recomendado).

Tres posibles medios de arranque:

1. CDROM: Es la forma ms cmoda y la que recomendamos.

2. Disquetes: si no podemos arrancar desde CDROM o si el equipo tiene pro-


blemas al arrancar: poca memoria, equipos porttiles, conflictos hardware,
etc. Segn el sabor del kernel podemos necesitar entre 3 y 16 discos. Es
una opcin engorrosa, lenta y los disquetes pueden dar problemas.

3. Desde MSDOS: arrancando con boot.bat o los diversos install.bat.


Necesita los archivos linux y drivers.tgz (en el CDROM o copia-
dos en el disco duro). Es una opcin ms cmoda y segura que emplean-
do los disquetes. Es necesario arrancar MSDOS con los controladores del
CDROM.

Una vez arrancado el programa de instalacin de GNU/Linux es posible copiar


los archivos necesarios de diversas fuentes:

cdrom si no se tiene acceso a la red.

disco duro si se tiene una copia de la distribucin en un disco duro local.

nfs accediendo al disco duro o cdrom de otro equipo a travs de la red.

ftp a travs de la red, con el protocolo FTP.

http a travs de la red, con el protocolo HTTP.

ppp a travs del mdem.

2.1.2 Particionar el disco


2.1.2.1 Por qu hacer particiones?
Para poder instalar diferentes sistemas operativos (con diferentes sistemas
de archivos) en un mismo disco duro.

Por seguridad: un defecto en el disco o en el sistema de archivos de una


particin no suele afectar a las otras.

9
Algunos archivos casi nunca se modifican y otros se modifican constante-
mente. Los segundos ocuparn zonas fsicas del disco dispersas, lo que
ralentiza su lectura. Por eso nos interesa que los primeros se mantengan
aparte.

Ciertos archivos pueden ser tiles para varios SO o distribuciones. No es


preciso tenerlos por duplicado.

Adems, la memoria virtual en disco necesita una particin especial.

2.1.2.2 Los dispositivos en GNU/Linux


En Unix los dispositivos se accesan por medio de una ruta en disco, como si fueran
archivos:

/dev/hda disco duro maestro del canal IDE primario, en MSDOS es C:

/dev/hdb disco duro esclavo del canal IDE primario, en MSDOS puede ser D:

/dev/hdc disco duro maestro del canal IDE secundario.

/dev/hdd disco duro esclavo del canal IDE secundario.

/dev/sda primer disco duro SCSI.

/dev/cdrom normalmente una liga a alguno de los anteriores.

/dev/fd0 disquetera A:

/dev/ttyS0 primer puerto serie, en MSDOS es COM1:

/dev/ttyS1 segundo puerto serie, en MSDOS es COM2:

/dev/lp0 puerto paralelo.

/dev/psaux ratn PS/2.

/dev/mouse liga al puerto del ratn.

En GNU/Linux las particiones se numeran:

10
hda1hda4 primarias.
Por limitaciones ajenas a GNU/Linux no se permitan ms particiones. La
solucin fue nombrar a una de ellas (tradicionalmente hda4) como extendi-
da. Esta particin contiene en realidad a todas las dems; de hecho algunos
programas (como el cfdisk que usaremos) no se molestan en mostrarla.

hda5hda63 lgicas. Contenidas en la particin extendida.

2.1.2.3 Arrinconemos Windows


Es habitual que, por falta de previsin, un equipo tenga todo su disco duro ocu-
pado con alguna mutacin de Windows, sin espacio para instalar otros SO. Para
redimensionar su particin, sin perder nada, se usa tradicionalmente el programa
para DOS fips. Est incluido en todas las distribuciones de GNU/Linux.
En Debian se encuentra en el directorio tools del disco de distribucin. Es re-
comendable leer la documentacin incluida, antes de intentar usar este programa.
Siempre hay el riesgo de que se pierdan los datos de la particin que se va a com-
pactar, as que se recomienda respaldar primero. Se recomienda defragmentar la
particin para ganar ms espacio, pero no es imprescindible.

2.1.2.4 Particiones en GNU/Linux


Puede consultarse el Linux Partition HOWTO1 . Actualmente se recomiendan par-
ticiones sencillas (una de swap y otra normal). Para decidir cuntas particiones ha-
remos y de qu tamao conviene conocer la estructura de archivos de GNU/Linux
2
:

swap particin especial cuyo tamao se aadir a nuestra RAM para formar la
memoria virtual. Conviene crearla por si hace falta. No ms de 128 MB.

/ directorio raz. Contendr los archivos esenciales para el arranque y configu-


racin de todo el sistema. Si el disco duro es grande y la BIOS antigua
es importante que su particin est entre los primeros 1024 cilindros (suele
corresponder con los primeros 8 GB ).
1
http://www.linuxdoc.org/HOWTO/mini/Partition/index.html
2
man hier

11
/var contiene las colas de impresin y de correo, el registro de mensajes y bases
de datos de varios programas, adems de los archivos temporales. Entre
100300 MB para uso personal.
/home todos los archivos personales de los usuarios. Del orden de 100 MB por
usuario, segn sus necesidades.
/usr todos los ejecutables, documentacin, etc. Podra ser suficiente con 100 MB,
y suele sobrar con 1 GB.
/usr/local deber contener todo lo que instalemos por nuestra cuenta, fuera de la
distribucin de Debian. Slo nos interesar hacer una particin aparte si
queremos usar ciertas aplicaciones entre distintos SO o distribuciones.

2.2 Instalacin paso a paso


Seguiremos Instalacin de Debian GNU/Linux 3.0 para Intel x863 . El resto del
captulo slo complementa esta gua. Algunas anotaciones:

Introducimos el medio elegido para arrancar. Puede ser necesario cambiar


la opcin de arranque en la BIOS.
Ojear la ayuda con Fn antes de arrancar la instalacin. Sugieren soluciones
en caso de problemas.
Una vez arrancada la instalacin pulsar alt+F2 para disponer de otro ter-
minal, alt+F3 y alt+F4 para ver errores y mensajes de instalacin, res-
pectivamente.
Reparticionamos el disco duro con la informacin de los puntos anteriores.
En un equipo con una sola particin ocupada y unos 2 GB libres podra
valer:

D IRECTORIO PARTICIN TAMAO


/ /dev/hda2 100 MB
/var /dev/hda3 300 MB
/home /dev/hda5 100 MB
(swap) /dev/hda6 64 MB
/usr /dev/hda7 >1500 MB
3
file:/cdrom/install/doc/es/install.es.html

12
Notar que la particin de /home es muy pequea porque estos equipos la
tendrn luego montada en un servidor. De no ser as, no escatimes: 500
MB/usuario es un tamao ms real.
Sin embargo, lo mnimo aceptable son dos particiones. Una para la memoria
virtual (swap) de no ms de 128MB, y el resto para la raiz del rbol de
directorios /.

Elejir preferiblemente un sistema de archivos transaciconal, como ext3 o


XFS. Eso evitar problemas cuando se apague la mquina accidentalmente
o por un apagn.

Al inicializar (formatear) conviene verificar la superficie, aunque tarda ms.


No es necesario mantener compatibilidad con los kerneles viejos.

En la configuracin de red DHCP es el mtodo que suelen usar los provee-


dores por cable. Usarlo si ese servicio est disponible en su red local.

Mdulos de drivers de dispositivos: si queremos que algn driver se cargue


al arrancar Linux. Todos los que hay en la lista estarn en el disco duro, y
se supone que se cargan en memoria cuando son requeridos.
Si se va ahacer la instalacin por medio de la red, es preciso instalar el
modulo de la tarjeta de red. Sin embargo, las versiones actuales muchas
veces son capaces de reconocer automticamente la tarjeta de red y cargar
el mdulo.
En cualquier caso, los modulos pueden instalarse ms tarde con el comando
modconf.

Consultar la configuracin de red: direccin IP (en caso de no usar DHCP),


nombre del equipo, nombre de dominio, mscara de red, gateway y DNS.

Zona horaria: America, Mexico_City. Si el equipo se va a compartir con


otro sistema operativo, se recomienda usar hora local, de otro modo usar
GMT.

Crear un disquete de arranque. Por el momento es la forma ms segura; en


breve haremos que Linux arranque desde el disco duro, instalando LILO en
el MBR.

Activar passwords md5 (permite claves sin lmite en el nmero de caracte-


res) y shadow (oculta el archivo de claves cifradas al usuario normal).

13
Eliminamos PCMCIA salvo si tenemos una porttil.

Elegimos el sistema de instalacin simple. Por el momento no elegimos


ninguna tarea. Lo haremos luego con el comando tasksel.

2.3 Sistema grfico


El sistema X Window4 es un sistema de ventanas transparente a la red (estructura
cliente-servidor). Viene a ser una parte auxiliar del sistema operativo que controla
la representacin grfica y el acceso al terminal.
Tradicionalmente es uno de los obstculos ms difciles de saltar para un prin-
cipiante al instalar GNU/Linux: informacin de los dispositivos difcil de conse-
guir, hardware no admitido, etc. . .

Ratn actualmente los ratones ms comunes usan el protocolo PS/2 IMPS/2.


El dispositivo es /dev/psaux.

Teclado de 105 teclas internacional, lenguaje spanish.

Tarjeta grfica necesitaremos saber qu servidor admite nuestra tarjeta. En ge-


neral, basta instalar el paquete xserver-xfree86 y seleccionar la tarjeta.

Monitor frecuencia de sincronizacin horizontal y frecuencia de refresco verti-


cal. Si le damos valores ms bajos de los que admite el monitor, la imagen
parpadear ms de lo necesario. Valores ms altos pueden averiar algunos
monitores! Tambin necesitamos la resolucin mxima.

Para reconfigurar X despus de la instalacin, ejecutar el comando


dpkg-reconfigure xserver-xfree86
No es necesario dar de nuevo los datos que se dieron en la configuracin.
Aparecern como parmetros por omisin.

2.3.1 Algo de nomenclatura


X-terminal mquina que usar los recursos de otra y contiene el servidor X.
4
man X

14
X display manager o xdm arranca el login grfico. Nosotros instalaremos el
gdm de GNOME. Hasta entonces entraremos en modo modo texto y arran-
caremos X con:

startx

Desktop environment o entorno de escritorio. Lo componen un conjunto de


aplicaciones y utilidades grficas con un aspecto comn. Nosotros usamos
GNOME. KDE tambin goza de gran popularidad.

Window manager es el programa que dibuja los marcos de las ventanas y nos
permite hacer diversas operaciones con ellas.

15
Captulo 3

Conceptos generales

3.1 El teclado
Algunas teclas imprescindibles en modo texto1 :

ctrl+alt+Fn pasa al terminal virtual n. X suele estar en el 7.


ctrl+alt+(num+) cambia la resolucin de X.
ctrl+alt+(retroceso) aborta la sesin X y todos los programas en
ella. Puede salvarnos de un congelamiento de X sin perder informacin.
ctrl+C interrumpe un programa (en terminal).
ctrl+S congela un programa. Se descongela con ctrl+Q.
ctrl+Z suspende un programa. Se reanuda su ejecucin con fg (fore-
ground) o con bg (background).
(flecha arriba) recuperas los comandos anteriormente escritos en la
lnea de comandos.
tab puede ayudarte a completar un comando o el nombre de un archivo.
shift+RePg permite hacer un scroll de la pantalla del terminal.
ctrl+R hace una bsqueda hacia atrs entre los comandos escritos en el
terminal.
1
man bash

16
ctrl+L limpia la pantalla.

alt+. repite el ltimo argumento del comando anterior.

ctrl+alt+supr reinicializa ordenadamente el ordenador.

AltGr+4 caracter , que no aparece en el teclado espaol (pero s en el


latinoamericano).

3.2 Reinicializar y parar


Como casi todos los SO en GNU/Linux necesita cierto tiempo para parar servi-
cios y descargar informacin en el disco duro. De no hacerlo as en el prximo
arranque har una lenta verificacin del sistema de archivos. Este es un problema
menor si se instal un sistema de archivos transacional, como XFS o ext3.

shutdown equivale a pulsar ctrl+alt+supr.

halt para el sistema. Lo apaga si tenemos APM activo en el kernel.

En la pantalla de arranque de GNOME o KDE tenemos las opciones equivalentes


a estos comandos.

3.3 Comandos del terminal


Un breve recordatorio de comandos bsicos y algunos ms no tan bsicos:
Ayuda:

man muestra el manual de un comando.


man -k printf
man 3 printf

info documentacin en hipertexto de algunos comandos.

help informacin de los comandos internos del shell.


help if

Manejo de archivos y directorios:

17
ls lista archivos.
ls -laF

cd cambia de directorio.
cd /usr/share/doc/lilo/
cd
cd -

pwd muestra el directorio actual.

mkdir crea un directorio.

rmdir borra un directorio vaco.

touch crea un archivo vaco, o actualiza su fecha si ya exista.

cp copia archivos.
cp -au /tmp/ /tmp/

mv mueve o renombra archivos y directorios.

rm borra archivos.
rm -Rf / # mejor no lo hagas

ln enlaza un archivo.
ln -s /var/tmp /tmp

Edicin de archivos:

file intenta adivinar el tipo de un archivo.

cat muestra un archivo.


cat hola adios

less muestra un archivo sin escurrirse.

grep lineas que contienen un patrn.


grep -i hola despedida.txt

wc cuenta palabras.

vi clsico editor de textos.

18
joe otro clsico editor de textos.

ae otro clsico y minsculo editor de textos.

cmp compara archivos.

diff diferencias entre archivos.


diff -c archivo.txt archivo2.txt

Sistema de archivos:

df o disk free, muestra la ocupacin de disco.

du o disk usage, muestra la ocupacin de archivos.


du -sc

mount monta un dispositivo o sistema de archivos.


mount -t vfat /dev/fd1 /mnt/floppy2

umount desmonta.

eject desmonta y expulsa.

Usuarios, grupos y permisos:

w muestra quienes estn conectados y qu estn haciendo.

su para ser otra persona.


su -

adduser crea un usuario o le aade a un grupo.

addgroup crea un nuevo grupo.

groups muestra los grupos a los que perteneces.

passwd cambia la clave de acceso.

chmod cambia los permisos de un archivo.


chmod o-r secreto.txt

umask cambia los permisos por defecto al crear un archivo.


umask 002

19
chown cambia el propietario
chown root:floppy /dev/fd0

Procesos, CPU y memoria:

free memoria libre.

top informacin de los recursos consumidos por los procesos.

ps muestra los procesos.


ps auxw

nice establece la prioridad de un programa.


nice -19 yes

kill mata un proceso.


kill -9 1 # mejor no lo hagas
killall -9 communicator

Multitarea en modo texto:

jobs muestra los procesos que estamos ejecutando en backgroud o segundo pla-
no. Un comando se arranca en segundo plano aadindole & al final. Si se
est ejecutando lo interrumpimos pulsando ctrl-Z.

fg pasa un proceso interrumpido a primer plano y toma el control del teclado.


fg %1

bg pasa un proceso interrumpido a segundo plano y pierde el control del teclado.


bg %2

Tiempo al tiempo:

at ejecuta comandos a cierta hora.


echo konqueror | at 13:40

crontab programa hora y frecuencia de ciertas tareas. Consultar sintaxis de la


tabla de tareas con man 5 crontab
crontab -e
crontab -l

20
time muestra el uso de CPU de un programa.
time ls -R /etc/

sleep duerme un rato.


sleep 2h ; knotes

Inclasificados:

reset reconfigura el terminal. til si se han corrompido el color o los caracte-


res.

history listado de los comandos escritos en el terminal. Puedes repetir el n-


simo si tecleas !n.

find busca archivos.

find /cdrom -noleaf -type f -name "*.deb" -exec dpkg -I {} \;

locate busca archivos en la base de datos local2 .


locate Ether

talk habla con otros usuarios.


talk josfer@robo4.cartif.es

Tuberas y redirecciones:

| tubera (o pipe).
history | less

> redireccionamiento.
echo mal > bien
echo fatal > > bien
ls -R /etc/ 2>/dev/null
2
se actualiza con updatedb, mejor instala anacron

21
3.4 Tipos de archivos
En GNU/Linux un archivo no se caracteriza por su extensin. Es un programa si
tiene activado el flag x de eXecutable. Los programas de script suelen empe-
zar por la lnea #! /bin/sh; otros lenguajes interpretados empiezan por algo
parecido.
El programa file suele adivinar de qu tipo es un archivo.
Algunos tipos de archivos inusuales fuera de GNU/Linux:

*.ps documento PostScript. Es un lenguaje de descripcin de pginas similar al


PDF. Podemos verlos con gnome-gv o kghostview.

*.pdf Portable Document Format. Adems de los anteriores podemos usar el


robusto xpdf o el pesado acroread.

*.dvi archivo device independent, similar al PostScript. Resultan de procesar


un texto LATEX; pueden verse con xdvi o traducirse con dvips.

*.gz archivo comprimido. Se descomprime con gunzip. Puedes verlos con


zless

*.bz2 similar con bunzip2.

*.tar archivo que aglutina varios. Usar tar xvf <archivo.tar>.

*.tar.gz *.tgz dem comprimidos. Usar tar xvzf <archivo.tgz>.

*.tar.bz2 *.tbz2 dem comprimidos. Usar tar xvIf <archivo.tgz>.

3.5 Los paquetes Debian


Herramientas para gestionar los paquetes Debian.

3.5.0.1 kpackage
Pertenece al escritorio de KDE. Es muy vistoso e intuitivo.
Identificar en cada paquete:

Estado.

22
Nombre.

Descripcin.

Versin instalada y versin disponible.

Seccin.

Prioridad.

Identificar las acciones:

Buscar paquete. Mantener o borrar.

Actualizar la lista de paquetes.

Elegir las fuentes de instalacin.

Tambin tenemos gnome-apt en el escritorio GNOME, pero an est en desa-


rrollo.

3.5.0.2 dselect
Versin en texto. Aunque tiene buen aspecto, la interfaz por teclado es muy poco
intuitivo. Su funcionamiento es impecable.

Identificar las opciones del men principal.

Repasar las teclas en la lista de seleccin de paquetes:

instalar +. Aparecer una pantalla con los paquetes adicionales que


necesite, recomiende o sugiera.
desinstalar -. Si otros paquetes dependen del que queremos desins-
talar, aparecern como candidatos a ser eliminados. An podemos
cambiar de opinin.
purgar _. Igual que el anterior pero adems elimina los archivos de
configuracin.
aceptar Enter
abortar X

23
buscar /
repetir bsqueda \
tipo de informacin i

Identificar la informacin en cada lnea.

3.5.0.3 apt-get
Interfaz en lnea de comandos para el manejo de paquetes. Se apoya en el archivo
/etc/apt/sources.list que contiene las fuentes de instalacin. Sintaxis
en 3 y en el CD de instalacin4 .
Prueba los comandos:

apt-get help
apt-get install jed
apt-cache search MP3
apt-get remove libc6
apt-get --purge remove emacs

A diferencia de dselect, cuando pedimos a apt-get que nos instale un


paquete, no nos propone los recomendados o sugeridos. Dado el sano minimalis-
mo de los mantenedores Debian, esto puede ser una desventaja. Recomiendo usar
dselect, pero apt-get es ms rpido y directo (por eso en este documento
casi todas las instalaciones se formulan con apt-get).
Aadamos al final de /etc/apt/sources.list las lneas:

# Ximian (antes Helix) Gnome


deb http://spidermonkey.ximian.com/distributions/debian stable main

# KDE 2
deb ftp://ftp.linux.ee/pub/kde.tdyc.com/debian/ potato main crypto

# Potato
deb ftp://ftp.uk.debian.org/debian stable contrib main non-free
deb ftp://ftp.uk.debian.org/debian stable/non-US contrib main non-free
deb http://security.debian.org stable/updates main contrib non-free
3
man sources.list
4
file:/cdrom/README.html

24
# kernel 2.4.x en potato
deb http://people.debian.org/~bunk/debian potato main
#deb-src http://people.debian.org/~bunk/debian potato main

Slo dos comandos pueden actualizar todos nuestros programas a la ltima


versin:

apt-get update
apt-get upgrade

Si los cambios entre versiones son muy profundos ser mejor:

apt-get update
apt-get dist-upgrade

Los paquetes descargados de la red se almacenan localmente. Los siguientes


comandos borran esa cach, o slo los archivos obsoletos:

apt-get clean
apt-get autoclean

Tambin existen sitios con paquetes no oficiales5 , si buscamos una versin


moderna de un programa apta para nuestra distribucin. Es muy probable que un
paquete en la distribucin inestable de Debian dependa a su vez de otros muchos
tambin en inestable, comprometiendo an ms la robustez de nuestro sistema.
Otra pequea diferencia con dselect es que cada uno tiene su propia base de
datos de paquetes. Por tanto, si usamos dselect es necesario hacer una segunda
actualizacin con [U]pdate.

3.5.0.4 dpkg
Acrnimo de Debian package. Es un comando a un nivel an ms bajo. Nos
permite obtener toda la informacin y las posibilidades de los anteriores mtodos.

dpkg --install </ruta/paquete>.deb


dpkg --purge <paquete>
dpkg --info </ruta/paquete>.deb
dpkg --list <paquete>*
5
http://www.internatif.org/bortzmeyer/debian/apt-sources/

25
dpkg --listfiles <paquete>
dpkg --status <paquete>
dpkg --get-selections
dpkg --set-selections
dpkg --search <archivo>

Aprovechamos para instalar los paquetes joe xemacs21-nomule doc-linux-html


ssltelnet

3.6 Buscar ayuda


Diferentes fuentes de informacin:

Si busco alguna aplicacin de cierto tipo, visito la pgina de Debian6 .

Si quiero saber qu paquete contiene cierto programa, o buscar una palabra


clave en su descripcin, de nuevo en la web de Debian7 .
Localmente puedes ejecutar:

apt-cache search matlab


dpkg --search xconsole

Y an ms artesanal: edita el archivo:

/var/lib/dpkg/available

o en los CD de instalacin:

/cdrom/dists/potato/Contents-i386.gz

Instalando el paquete dhelp obtenemos un ndice de toda la documenta-


cin HTML, info y man instalada. Lo veremos en detalle cuando instalemos
el servidor web Apache. Ahora puedes verlo en robo68 .
6
http://packages.debian.org/stable/
7
http://www.uk.debian.org/distrib/packages
8
http://robo6.cartif.es/doc/HTML/index.html

26
Si busco conocimientos varios leo algn HOWTO9 .

Si quiero saber cmo funciona un comando

man <comando>
info <comando>
<comando> --help

Tambin puedes usar el Sistema de Ayuda de GNOME, KDE, Emacs, etc.

Al instalar un paquete que nos interesa conviene saber qu archivos ha ins-


talado con

dpkg --listfiles <paquete>

Comprobar si existe un paquete-doc.

Siempre nos quedar Internet: pgina web del programa, un nuevo HOW-
TO, listas de correo, grupos de noticias, revistas on-line, etc.

3.7 GNOME y KDE


Son dos de los mejores ambientes de escritorio accesibles en linux.

1. Si quieres ver una demostracin en vivo en tu monitor, teclea:

xvncviewer robo6:1 -shared -viewonly

2. Para cortar y pegar en X no es necesario pulsar ninguna tecla. El problema


es que al marcar un texto perdemos la seleccin anterior. El texto marcado
no se almacena, as que si cierras la aplicacin con el texto marcado, lo
pierdes.

3. Pulsar el icono de la caja de herramientas y experimentar. . .

Esconder el panel.
Colocacin de las ventanas.
9
file:/usr/share/doc/HOWTO/

27
Comportamiento del foco.
Varios escritorios.

4. Jugar con el gestor de ventanas: botones de la barra de men con los dife-
rentes botones del ratn, tecla alt, etc.

5. Apliques interesantes y divertidos.

6. Aplicaciones varias. . .

7. Los mens Debian.

3.8 Mover archivos


Veamos una secuencia de instrucciones para empaquetar, comprimir y meter en
disquetes un conjunto de archivos. Recomiendo consultar la pgina de manual de
los comandos que aparecen, en especial los del paquete mtools.

superformat /dev/fd0
tar cf archivo.tar archivo1 archivo2 directorio/
tar tvf archivo.tar
cp archivo.tar archivo1.tar
cp archivo.tar archivo2.tar
gzip -9 archivo1.tar
bzip2 -9 archivo2.tar
du -sc archivo1 archivo2 directorio/
du archivo.tar archivo1.tar.gz archivo2.tar.bz2

split -b 1400k archivo2.tar.bz2 archivo2.tar.bz2_


mcopy archivo2.tar.bz2_aa a:

mcopy a:archivo2.tar.bz2_aa .
cat archivo2.tar.bz2_* >archivo2.tar.bz2
bunzip2 archivo2.tar.bz2
tar xvf archivo2.tar
rm archivo2.tar

28
3.8.1 Copias de seguridad
Hay docenas de programas que permiten hacer backups: tob, amanda, afbackup,
kbackup. . . Nosotros utilizaremos el simple y verstil afio. La principal ven-
taja frente al clsico tar es que si se corrompe la copia de seguridad perderemos
slo algunos archivos, no toda la copia.

1. Instalamos el paquete afio y leemos su manual (incluye ejemplos).

2. Digamos que queremos salvar los directorios /root/ /etc/ /home/.


Sera conveniente que nadie modificase ninguno de los archivos mientras se
realiza la copia: reinicie con la opcin single en el LILO, o pase a modo
monousuario con el comando init 1.

cd /tmp/
find /root/ /etc/ /home/ | afio -o -Z -P bzip2 -Q -9 20010506.afio

3. Verificamos inmediatamente la copia:

cd /
afio -r -Z -P bzip2 /tmp/20010506.afio

4. Ahora pon este archivo en un lugar seguro: otro disco duro, un CD, o tro-
calo para almacenarlo en ZIP o en los poco recomendables disquetes.
Es conveniente acompaarlo de la suma de comprobacin MD5, al estilo de
los CD de Debian:

md5sum 20010506.afio > md5sum.txt

Para verificar la integridad de la copia:

md5sum -c md5sum.txt

5. Cuando necesitemos recuperar los archivos, a partir del directorio actual:

afio -i -Z -P bzip2 20010506.afio

29
Captulo 4

Configuracin y optimizacin

Antes de continuar convendra familiarizarse con alguno de los editores de texto


ms sencillos que podemos usar, por ejemplo el clsico vi.

4.1 LInux LOader


LILO es el programa que nos configura el arranque si tememos ms de un sistema
operativo.
Los 512 primeros bytes de un disco duro contienen informacin sobre su geo-
metra, particiones y un pequeo programa que indica como cargar los sistemas
operativos que contiene. Se llama MBR o Master Boot Record, y su contenido es
vital para el funcionamiento del computador.
Con la pgina del manual 1 . Informacin ms completa en el Lilo mini-
Howto2 . Si lo quieres saber todo, instala el paquete lilo-doc.

1. Empezamos salvando la informacin del MBR con

dd if=/dev/hda of=mbr.antes bs=512 count=1

2. Editamos el archivo /etc/lilo.conf con:

ae /etc/lilo.conf

Deben aparecer como mnimo las lneas:


1
man lilo.conf
2
file:/usr/share/doc/HOWTO/en-html/mini/LILO.html

30
boot=/dev/hda
compact
vga=ext
prompt
timeout=300

image=/vmlinuz
root=/dev/hda2
label=linux
append="mem=64M ide0=dma apm=on"
read-only

other=/dev/hda1
label=win

Consulta tu hoja de hardware para saber qu particin tiene GNU/Linux


(etiqueta root=) y cual Windows (etiqueta other=). Si la particin raz
est por encima del cilindro 1024, que suele corresponder con 8 GB, es po-
sible que GNU/Linux no pueda arrancar. Es una limitacin de la BIOS; po-
demos seguir arrancando con el disquete de instalacin o usando loadlin
desde MSDOS.

3. Ejecutamos lilo.

4. Tecleamos halt para parar el sistema. Rearrancamos para verificar el fun-


cionamiento. Cuando salga LILO boot: escribir linux single; en-
traremos en modo monousuario.

mv /tmp/* /var/tmp/
ln -sf /var/tmp/ /tmp

. . . era el ltimo detalle sobre las particiones.

5. Salvamos la nueva informacin del MBR

dd if=/dev/hda of=mbr bs=512 count=1

31
4.2 Configuracin en cualquier momento
Por si cometimos algn error mientras instalbamos Debian, o dejamos la confi-
guracin de algn elemento para despus:

kbdconfig para elegir el teclado.

tasksel selecciona los meta-paquetes que se ajustan a las tareas para las que
vamos a usar nuestro ordenador.
Instalaremos ahora las tareas C Dev, Debug, Newbie Help, Spanish.

modconf para cargar manualmente mdulos controladores (drivers) de nues-


tro hardware. Si surgen problemas consultar los manuales de modprobe,
lsmod, update-modules y el archivo Documentation/modules.txt
de los fuentes del kernel.

apt-get el gestor de paquetes de la distribucin.

apt-setup para agregar o modificar repostorios de paquetes.

4.3 En espaol
A veces las traducciones al espaol usan un lenguaje tcnico que no es igual al que
usamos en Mxico, lo que hace ms dificil entender esta variante, que el original
en ingls. De cualquier modo, para tener un ambiente en espaol, basta instalar la
tarea Spanish (paquete task-spanish). Puedes ojear Debian en Espaol3 . Si
necesitas ampliar conocimientos consulta el extenso manual del shell4 .

1. Si se quiere castellanizar todo el sistema, ejecuta

castellanizar

Aunque alguno de los ajustes est demasiado orientado al usuario novato.


Pueden consultarse en los archivos /etc/language-es /etc/bash_aliases-es.

2. Descomentar en /etc/inputrc la lnea


3
http://www.debian.org/international/Spanish
4
man bash

32
set convert-meta off

Los siguientes cambios los puede hacer cada usuario en su directorio perso-
nal /home/<usuario>/, al que tambin podemos referirnos como ~/.

3. En /.bash_profile descomentar las lneas

umask 002
source ~/.bashrc

4. Aade al /.bashrc

export PS1="\w \$ "


export LANG=es_ES
export LC_CTYPE=iso-8859-1
export LC_ALL=es_ES
export LC_MESSAGES=es
export PAGER=less
export LESS="-Q -i"
export LESSCHARSET=latin1
export HISTFILESIZE=2000
export HISTSIZE=3000
export PROMPT_COMMAND=echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD

alias h=history
alias j="jobs -l"
alias l="locate"
alias v="ls -Al --color"

Todos estos archivos conviene copiarlos a /etc/skel/ para que sean colocados
en el directorio personal de cada nuevo usuario que creemos.

cp /home/<usuario>/.bash_profile \
/home/<usuario>/.bashrc \
/home/<usuario>/.inputrc /etc/skel/
adduser <nuevo-usuario>

33
4.4 La Red
Linux Network Administrators Guide5 es un libro muy completo. Otros documen-
tos interesantes: Linux Ethernet-Howto6 y Linux Networking-HOWTO7 .
archivos que definen el funcionamiento de la conexin en red:
/etc/hostname contiene el nombre de la mquina.
/etc/hosts las direcciones de otras mquinas locales. Si no funcionase el
nuestro DNS necesitaramos aadir, por ejemplo
192.168.12.1 robo1.cartif.es robo1
192.168.12.2 robo2.cartif.es robo2
/etc/resolv.conf direcciones (numricas) de los DNS.
/etc/network/interfaces contiene toda la informacin de red que intro-
ducimos en la instalacin.
/etc/init.d/networking el script que arranca todo lo referente a la cone-
xin de red.
Aplicaciones interesantes:
ifconfig
ping robo6
ping -f 192.168.12.6
nslookup 195.53.249.10
traceroute 195.53.249.10
host -l cartif.es

4.4.1 El mdem
Podemos leer The Linux Modem-HOWTO8 . Si tienes un cable-modem lee Cable-
Modem-mini-HOWTO9 y olvdate del resto de esta seccin. Otros afortunados
pueden enfrentarse al RDSI COMO10 o al ADSL HOWTO for Linux Systems11 .
5
http://www.linuxdoc.org/LDP/nag2/
6
file:/usr/share/doc/HOWTO/en-html/Ethernet-HOWTO.html
7
file:/usr/share/doc/HOWTO/en-html/NET3-4-HOWTO.html
8
file:/usr/share/doc/HOWTO/en-html/Modem-HOWTO.html
9
file:/usr/share/doc/HOWTO/en-html/mini/Cable-Modem.html
10
file:/usr/share/doc/HOWTO/es/HOWTO/RDSI-Como.html
11
file:/usr/share/doc/HOWTO/en-html/mini/ADSL.html

34
Lo ms cmodo es usar pppconfig, con los datos de tu proveedor de Inter-
net o ISP en la mano. Tanto GNOME como KDE tienen sus propias herramientas
de configuracin.

1. Ejecutamos gnome-ppp y seguimos las instrucciones. Si se prefiere la


utilidad Debian pppconfig funciona en modo texto:
2. Rellenamos los campos:

Providerame wol
Use static DNS . Luego introducimos sus direcciones IP.
Authentication Method suele ser PAP (Peer Authentication Protocol)
Userame pepito@wol.es
Password h4udh7uTg
Speed dejar 115200
Pulse or Tone probablemente la marcacin es por tonos.
Phoneumber el nmero local de acceso a Infova.

3. Ejecutamos pon wol para comenzar la comunicacin. GNOME tiene un


Discador PPP para realizar esta funcin.
4. plog para ver los mensajes.
5. poff cierra la conexin.

Parece ser que wvdial establece la conexin fcilmente. Incluso la recupera si


la lnea telefnica sufre algn accidente, como que alguien use el telfono para
hacer una llamada.

4.5 Impresoras
En GNU/Linux todo se imprime en formato PostScript. Si no disponemos de
una impresora que entienda ese lenguaje, ser necesario traducirlo al de nuestra
impresora. Amplia documentacin en The Linux Printing HOWTO12 . Magnfico
enlace en LinuxPrinting.org13 con el soporte de cada impresora del mercado.
12
file:/usr/share/doc/HOWTO/en-html/Printing-HOWTO.html
13
http://www.linuxprinting.org

35
Utilizaremos uno de los sistemas de impresin clsico: lprng. Un enfoque
ms moderno puede ser el Common UNIX Printing System o CUPS, incluido en
el paquete cupsys.

4.5.1 Impresora local


Supongamos que tenemos una HP Laserjet 1100 conectada al puerto paralelo de
nuestro ordenador.

1. Instalamos lprng magicfilter a2ps gs-aladdin y todos los pa-


quetes que stos sugieren.

2. Ejecutamos magicfilterconfig y respondemos sucesivamente

HP Laserjet 1100
hplj1100
/dev/lp0
ljet4

Si no ves a simple vista el filtro que se ajusta mejor a tu impresora, tendrs


que ojear los comentarios en el cdigo de cada filtro en /etc/magicfilter/.
Es muy probable que el filtro de una impresora similar a la tuya te funcione,
ya que hablarn el mismo lenguaje.

3. Al final sugiere algunas interesantes lecturas:

Youll probably want to finetune your newly created /etc/printcap


Read the printcap(5), lpr(1), lpq(1), lprm(1) and lpc(1) manual pa
and the PRINTING-HOWTO before doing this.

Comandos bsicos, similares a los descritos en The Linux Printing Usage HOW-
TO14 :

lpr imprime un archivo.

lpq estado de la cola de impresin.

lprm borra un trabajo de impresin.


14
file:/usr/share/doc/HOWTO/en-html/Printing-Usage-HOWTO.html

36
Algo ms interesante: imprimir un libro. Con el paquete psutils

psbook libro.ps | psnup -2 -pa4 | psselect -er | lpr


psbook libro.ps | psnup -2 -pa4 | psselect -o | lpr

O crear un poster con hojas A4:

cp /usr/doc/gs-aladdin/examples/tiger.ps.gz .
gunzip tiger.ps.gz
poster -v -s4 tiger.ps | lpr

4.5.2 Impresora remota bajo GNU/Linux


Ahora queremos imprimir desde GNU/Linux en una impresora conectada a otro
equipo que corre GNU/Linux. Seguimos el proceso del punto anterior excepto
para la pregunta Full device path (or remote machine name):

HP Laserjet 1100
hplj1100
robo4.cartif.es
ljet4

La conversin de PostScript y la cola de impresin se mantienen en nuestro


equipo.

4.5.3 Impresora remota en red


Disponemos de dos impresoras conectadas a la red local: una HP DeskJet 1120C
con direccin IP 192.168.1.51, y una HP LaserJet 4000 en 192.168.1.50
que puede procesar PostScript directamente.

1. Si es necesario instala los paquetes lprng magicfilter gs-aladdin.

2. Creamos con ayuda de magicfilter un archivo de configuracin:

magicfilterconfig printcap.red

3. Respondemos para cada impresora:

37
HP DeskJet 1120C HP LaserJet 4000
hpdj1120 hplj4000
192.168.1.51 192.168.1.50
dj690c-best psonly600
El filtro psonly600 convierte todo a PostScript: archivos grficos, texto
simple, HTML, etc.

4. Retocamos printcap.red para aadir unos alias:

color|hpdj1120|HP DeskJet 1120C:\


:lp=:sd=/var/spool/lpd/hpdj1120:rm=192.168.1.51:\
:rp=hpdj1120:lpr_bounce:
:sh:pw#80:pl#72:px#1440:mx#0:\
:if=/etc/magicfilter/dj690c-best-filter:\
:af=/var/log/lp-acct:lf=/var/log/lp-errs:
laser|hplj4000|HP LaserJet 4000:\
:lp=:sd=/var/spool/lpd/hplj4000:rm=192.168.1.50:\
:rp=hplj4000:lpr_bounce:
:sh:pw#80:pl#72:px#1440:mx#0:\
:if=/etc/magicfilter/ps600-filter:\
:af=/var/log/lp-acct:lf=/var/log/lp-errs:

La impresora por defecto es la que aparece primero (el alias lp debera


valer. . . pero no).

5. Aadimos la configuracin de estas dos impresoras al archivo global.

cat printcap.red >> /etc/printcap

6. Reiniciamos el demonio impresor:

/etc/init.d/lprng restart

7. Podemos probarlas con:

lpr -P color /usr/doc/gs-aladdin/examples/tiger.ps.gz


lpr -P laser /usr/doc/gs-aladdin/examples/tiger.ps.gz

38
4.5.4 Impresora remota bajo Windows
Queremos imprimir desde GNU/Linux en una impresora conectada a otro equipo
que corre alguna mutacin de Windows. Necesitaremos el cliente de Samba.

1. Instalamos los paquetes lprng samba-doc smbclient gs-aladdin


magicfilter.
Puede ser interesante leer ciertos apartados del SMB Howto15 y del libro
Using Samba16 .

2. Nos aseguramos que la mquina Windows tiene la impresora compartida:

smbclient -L vison1.cartif.es

No introducimos ninguna contrasea. Vemos el recurso HP1100_VISIO,


entre otros.

3. Creamos el archivo /etc/magicfilter/smb-filter con

#!/bin/sh
LOGFILE=/tmp/smb-print.log
SERVER=vision1
SERVICE="HP1100_VISIO"
PASSWORD=""
FILTRO=/etc/magicfilter/ljet4-filter

date >> $LOGFILE


echo "server $SERVER, service $SERVICE" >> $LOGFILE
(
echo "print -"
$FILTRO
) | /usr/bin/smbclient "\\\\$SERVER\\$SERVICE" $PASSWORD -N -P >>

y le damos permisos de ejecucin:

chmod +x /etc/magicfilter/smb-filter
15
file:/usr/share/doc/HOWTO/en-html/SMB-HOWTO-9.html
16
file:/usr/share/doc/samba-doc/htmldocs/using_{s}amba/ch07_{0}2.html

39
4. Editamos /etc/printcap para aadir

vision:laserjet1100|hplj1100:\
:lp=/dev/null:\
:sd=/var/spool/lpd/lp:\
:mx#0:sh:\
:if=/etc/magicfilter/smb-filter:

De nuevo, ser la impresora por defecto si colocamos estas lneas al princi-


pio del archivo.
5. Reiniciamos el demonio impresor:

/etc/init.d/lprng restart

6. Probamos:

lpr -P vision /usr/doc/gs-aladdin/examples/tiger.ps.gz

4.5.5 Imprimir desde Windows en GNU/Linux


Pese a nuestra determinacin de trabajar en GNU/Linux, es posible que otros
usuarios sigan usando Windows y quieran usar nuestra impresora. Convertiremos
nuestro ordenador en un servidor de impresora para mquinas Windows.

1. Instalamos el metapaquete task-samba, adems de los vistos lprng


samba-doc gs-aladdin magicfilter.
2. De acuerdo con las instrucciones del SMB Howto17 aadimos una impresora
que mande en bruto lo que recibe. Dejaremos que sea el driver de Windows
el que procese todos los datos que se enviarn a la impresora.
Al final del /etc/printcap

raw:\
:rw:sh:
:lp=/dev/lp0
:sd=/var/spool/lpd/raw
:fx=flp
17
file:/usr/share/doc/HOWTO/en-html/SMB-HOWTO-8.html

40
3. Editamos /etc/samba/smb.conf para que aparezcan las lneas

[global]
printing = LPRNG
printcap name = /etc/printcap
load printers = no ; as le doy yo el nombre, no me lista
; todas las que hay en /etc/printcap
guest account = nobody
invalid users = root
security = share ; permite usuarios sin cuenta
workgroup = ROBOTICA ; no afecta a los grupos en CARTIF

[printers]
security = share ; bis
comment = All Printers
browseable = no
path = /tmp
printable = yes
public = yes
writable = no
create mode = 0700

[HP LaserJet] ; es el nobre que ven las mquinas Windows


security = share ; tris
path = /tmp ; el directorio de spool no permite nobody
printer name = raw ; mi impresora en /etc/printcap
writable = yes
public = yes
printable = yes
; print command = lpr -r -h -P %p %s
print command = lpr -b -Praw %s ; lo manda en bruto

En las mquinas Windows aadimos una impresora de red. Localizamos la HP


LaserJet que tiene ROBO3 y se le instala el driver del CD que distribuye el propio
fabricante. Cuando imprimimos usamos el software de HP, aunque la impresora
est conectada a una mquina GNU/Linux.

41
Captulo 5

Aplicaciones

Haremos un repaso de las principales aplicaciones que pueden sernos tiles. Prc-
ticamente todas estn empaquetadas para Debian, pero puede ser til darse un paso
por los Software Directories1 de Google.

5.1 Procesadores de textos


5.1.1 Editores
vi Es un editor antiguo con una interfaz muy poco intuitiva. Tarde o temprano
nos encontraremos con l, porque es un estandart en cualquier mquina Unix.
Manejo bsico en Vim-HOWTO2 :

i inserta texto. Podemos escribir pero el menor movimiento pasa a modo


comando.

a aade texto. Similar al anterior salvo que coloca el cursor en el carcter


siguiente.

x borra un carcter.

dd borra una lnea.

ESC pasa a modo comando.


1
http://directory.google.com/Top/Computers/Software/Operating_{S}ystems/Linux/Soft
2
file:/usr/share/doc/HOWTO/en-html/Vim-HOWTO.html

42
:q! salimos desestimando los cambios.

:wq salva y sale.

5.1.2 OpenOffice
Paquete ofimtico completsimo, similar al Office de Microsoft. Est disponible
en 11 idiomas para Linux, Solaris y Windows. Actualmente esta en desarrollo su
empaquetacin bajo debian, en la direccin http://www.linux-debian.de/openoffice/.

5.1.3 LATEX
Se trata de un lenguaje de descripcin de documentos cientficos de gran cali-
dad tipogrfica. Puede establecerse la analoga con un lenguaje de programacin:
el texto se escribe con un simple editor, luego se compila (si no tiene ningn
error sintctico), y el resultado tiene un formato especial (dvi, PostScript, PDF,
HTML. . . ). Hay paquetes que aaden funcionalidades muy diversas.

1. Instala el metapaquete task-tex.


La documentacin completa instalada a partir de teTEX A Documentation
Guide3 . Cuatro guas y un enlace muy interesantes:

La pgina del Grupo de Usuarios de TEX Hispanohablantes4 es un buen


comienzo, en especial si no hablas ingls. Incluye enlaces a manuales en
castellano.

Breve LATEX for Secretaries5 .


Introductorio The teTeX HOWTO: The Linux-teTeX Local Guide6 .
Magnfico manual The Not So Short Introduction to LATEX27 .
Esplndido manual A Simplified Introduction to LATEX 8 (en robo69 ).
3
file:/usr/share/doc/texmf/index.html
4
http://apolo.us.es/CervanTeX/CervanTeX.html
5
http://www2.linuxjournal.com/lj-issues/issue70/3387.html
6
file:/usr/share/doc/HOWTO/en-html/TeTeX-HOWTO.html
7
file:/usr/share/doc/texmf/latex/general/lshort.dvi.gz
8
http://carbon.cudenver.edu/~hgreenbe/courses/texinfo/simplified-
intro.zip
9
http://robo6.cartif.es/~josfer/downloads/latex.ps

43
1. Configuramos el guionado en castellano:

texconfig

en la seccin hyphenation elegimos latex y nos movemos hasta desco-


mentar la lnea:

spanish sphyph.tex

(recuerda que por defecto arranca vi: un carcter se borra con x, salvas y
sales con ESC :wq, y sales sin salvar con ESC :q!)
2. Escribe un documento de prueba: ejemplo.tex
3. Puedes verificar la ortografa obviando la sintaxis de LATEX desde editores
como xemacs o directamente con:

ispell -T latin1 ejemplo.tex

4. Los comandos que construyen el documento en formato DVI, PS, PDF y


HTML son respectivamente:

latex ejemplo
dvips ejemplo -o
pdflatex ejemplo
latex2html -split 0 -show_section_numbers ejemplo

Si te ves en la triste obligacin de usar un formato menos libre:

latex2rtf -o ejemplo.doc ejemplo.tex

El procesador de documentos lyx combina la robustez y versatilidad de LATEX


con la facilidad de uso de un procesador de palabras.

5.2 Emuladores de Windows


5.2.1 WINE
WINEs not a emulator. Emulador de Windows razonablemente estable. Paquete
wine.

44
5.2.2 VMware
Se trata de un software comercial que permite instalar en GNU/Linux varios sis-
temas operativos virtuales. Sus requerimientos hardware son importantes, pero
tiene fama de crear virtual machines muy completas y estables. Puede descargar-
se una demo operativa durante 30 das en vmware10

wget ftp://vmware.wespe.de/pub/software/VMware-2.0.4-1142.tar.gz

5.3 Grficos
gimp El photoshop de linux.

gnuplot A command-line driven interactive plotting program. (completsimo)

5.4 Web
GNU/Linux dispone de infinidad navegadores y servidores web, de correo, noti-
cias, etc. Cualquier protocolo y utilidad que busques, seguro que est disponible
en GNU/Linux. . . un sistema operativo nacido con Internet.

5.4.1 Apache: el mejor servidor web


Instalar un servidor web puede exponer nuestros datos y comprometer la seguridad
de nuestro sistema, en especial si no se configura cuidadosamente.

apt-get install apache-common apache-doc apache-ssl apache

Respondemos con los datos que queramos que aparezcan en el navegador para
aceptar nuestro certificado. El directorio del que colgar toda nuestra web es
/var/www/. Las pginas personales de /public_html/

mkdir ~/public_html
cd ~/public_html
echo hola > saludo.txt
ln -s ~/cursoLinux2/guion/guion/ guion_html
10
http://www.vmware.com

45
Ahora conctate con tu navegador favorito, si quieres desde otra mquina:

http://localhost
https://robo6.cartif.es/~josfer/

El protocolo HTTPS cifra toda la informacin entre el navegador y el servidor


web.

Documentacin incluida en Debian


Vamos a permitir que cualquiera pueda leer con su navegador la documentacin
que incluye nuestra copia de Debian11 . Empezaremos por instalar el paquete
dhelp, que crea un ndice con toda la documentacin en HTML. Sin que sir-
va de precedente instalaremos un paquete que no est en la distribucin estable, y
que adems es non-free.

wget ftp://ftp.uk.debian.org/debian/dists/woody/non-free/binary-i386/u
dpkg --install glimpse_4.1-2.deb
apt-get install dhelp info2www man2html

Ahora tenemos un ndice local12 . Si queremos que est accesible a todo el mundo,
editamos /etc/apache/access.conf:

# Debian Policy assumes /usr/doc is "/doc/", at least from the localho


<Directory /usr/doc>
Options Indexes FollowSymLinks
AllowOverride None
order deny,allow
#deny from all
#allow from localhost
allow from all
</Directory>

y reiniciamos el servidor web

/etc/init.d/apache restart

Podis verlo funcionando en robo613 .


11
file:/usr/share/doc/
12
http://localhost/doc/HTML/index.html
13
http://robo6.cartif.es/doc/HTML/

46
5.4.2 Utilidades varias
La aspiradora de correo fetchmail
Es una pequea y eficaz herramienta que se encarga de traernos todo nuestro co-
rreo al buzn local. Entiende muchos protocolos y se complementa muy bien con
clientes de correo muy pesados.
1. Instala los paquetes fetchmail fetchmailconf. Puedes ojear la p-
gina del manual.
2. La configuracin es fcil y breve con ayuda de:

fetchmailconf

Elegimos la Expert Configuration. En Poll interval ponemos 1800 para


que nos compruebe el correo cada media hora. Aadimos nuestro servidor
de correo, el protocolo, y nuestra identidad. Fetch old messages as well as
new.
Si quieres puedes editar tu configuracin en /.fetchmailrc
3. Programamos el arranque cada vez que se inicia la mquina:

crontab -e

aadimos la lnea:

@reboot fetchmail

El procesador de correo procmail


Es un procesador de correo muy usado en servidores, listas de correo, o para
enviar respuestas automticas.
Una de sus herramientas nos puede ser til para trasladar todo un buzn de
correo a otra cuenta. Por ejemplo, si quieres olvidarte de Netscape y pasarte a
Kmail, para recuperar todos los mensajes antiguos en tu buzn local y que Kmail
los relea:
cat ~/nsmail/* | formail -s /usr/sbin/sendmail usuario@localhost
Aunque probablemente prefieras utilizar el Importador de KMail de KDE para
hacer lo mismo.

47
Captulo 6

Referencias en lnea

http://www.linux.org Aqu se encuentran diversas ligas interesantes relativas a


linux.

http://www.gnu.org Sitio oficial del proyecto GNU y de la FSF. Software GNU,


filosofa y politicas. Incluye traducciones a varios idiomas.

http://www.kernel.org Sitio oficial del kernel de linux (lo que es propiamente


linux). Las versiones ms recientes del ncleo.

http://www.debian.org Sitio oficial de Debian, la distribucin que se usar en


este curso. Se puede encontrar documentacin en varios idiomas, ligas con
informacin sobre los repositorios de paquetes, noticias, etc.

http://www.laespiral.org Sitio dedicado especialmente a reunir documentacin


en espaol para usuarios de Debian. Algunas notas de este curso fueron
tomadas de material disponible en este sitio.

48

También podría gustarte