Você está na página 1de 384

Linux

Version imprimible
Este documento deber servir exclusivamente como material de apoyo
al contenido del curso interactivo accesible a travs de internet.

Indice
Evaluacin inicial...................................................................... 7
Introduccin............................................................................ 8
MDULO 1. LINUX?.............................................................. 11
Introduccin........................................................................ 11
U.D.1. Conceptos fundamentales..............................................12
1.1. Sistema Operativo....................................................... 12
1.2. Definicin de Linux...................................................... 13
1.3. Qu son las distribuciones?.......................................... 14
1.4. Entorno de trabajo: Shell y X-Window................................16
1.5. Usuarios y grupos........................................................17
U.D.2. Instalacin temporal de Linux......................................... 19
2.1. UBUNTU................................................................... 19
2.2. LIVECD o CDVIVO...................................................... 23
2.3. Arranque con UBUNTU................................................. 24
2.4. Por qu temporal?..................................................... 26
2.5. Instalacin permanente en el disco duro............................ 26
U.D.3. Entrada y salida del sistema...........................................29
3.1. Antes de nada............................................................ 29
3.2. Que sucede al arrancar el ordenador?............................. 29
3.3. Entrada y salida en UBUNTU..........................................33
Recuerda........................................................................... 36
Clasificacin de los sistemas operativos .................................... 36

Plataforma de Teleformacin de IFES

Pgina 1 de 384

Distribuciones Linux.............................................................. 36
Manifiesto UBUNTU.............................................................. 36
Autoevaluacin: Linux?........................................................ 36
Prctica: Consola................................................................. 37
Evaluacin primera.................................................................. 38
MDULO 2. INTERFAZ GRFICA DE USUARIO............................ 39
Introduccin........................................................................ 39
U.D.1. X-Window................................................................. 40
Introduccin..................................................................... 40
1.1. Ejecucin y salida del sistema de ventanas X...................... 40
1.2. Para qu sirve el sistema de ventanas X?......................... 41
1.3. Qu es esto que hay en mi pantalla?.............................. 42
1.4. Gestores de ventanas................................................... 44
1.5. Atributos X................................................................. 48
1.6. Caractersticas comunes................................................ 49
Autoevaluacin: X-Window................................................... 50
U.D.2. El entorno de escritorio................................................. 52
2.1. GNOME.................................................................... 53
Introduccin.................................................................. 53
2.1.1. Aplicaciones con G de GTK+..................................... 55
2.1.2. Explorando el espacio..............................................56
2.1.3. Del rbol con races al espacio con lugares................... 57
2.1.4. El panel superior.................................................... 58
2.1.5. El panel inferior..................................................... 60
2.1.6. Bsqueda de archivos............................................. 61
2.1.7. Llega la generacin Beagle: del rbol a la pradera........... 63
2.1.8. Dispositivos de memoria, del disquete a la cmara
digital.....................................................................64
2.1.9. Creacin y gestin de archivos................................... 65
Introduccin............................................................... 65
La maravillosa tecla derecha del ratn............................... 65
Pgina 2 de 384

Linux

Organizando nuestra Carpeta personal.............................. 68


El Administrador de archivos.......................................... 69
Administracin de propiedades........................................ 71
2.1.10. Personalizar el escritorio......................................... 74
Introduccin............................................................... 74
Fondos de pantalla...................................................... 74
Fondos de carpetas..................................................... 76
Paneles.....................................................................78
Temas...................................................................... 80
Salvapantallas............................................................ 81
Tipografas................................................................. 82
Sesiones................................................................... 84
2.1.11. Gestin de usuarios............................................... 87
Introduccin............................................................... 87
Un tema de permisos................................................... 87
Quin y cmo obtiene los mximos permisos...................... 89
Crear nuevos usuarios.................................................. 90
Grupos de usuarios...................................................... 91
Repartir accesos......................................................... 94
2.2. KDE......................................................................... 99
Autoevaluacin: El entrono de escritorio.................................. 99
U.D.3. Ofimtica: OPENOFFICE............................................. 102
3.1. Qu es OPENOFFICE?............................................. 102
3.2. Instalacin................................................................ 104
3.3. Compatibilidad con MS WORD...................................... 109
3.4. Novedades de la versin OPENOFFICE.ORG 2.0 con respecto a
las anteriores............................................................ 110
3.5. Resumen de caractersticas comunes en todos los elementos de
OPENOFFICE.ORG.................................................... 112
3.6. Resumen de caractersticas particulares de los elementos de
OPENOFFICE.ORG.................................................... 112

Plataforma de Teleformacin de IFES

Pgina 3 de 384

Recuerda......................................................................... 116
Geometra de una ventana.................................................... 116
Personalizacin de salvapantallas........................................... 116
Ofimtica.......................................................................... 116
Ventajas Openoffice .org....................................................... 116
Evaluacin segunda............................................................... 117
MDULO 3. ADMINISTRACIN BSICA.....................................118
Introduccin...................................................................... 118
U.D.1. El sistema de archivos................................................ 119
Introduccin....................................................................119
1.1. Directorios................................................................ 120
Introduccin................................................................. 120
1.1.1. Analizando el contenido de los directorios.................... 127
1.1.2. El directorio actual y cd.......................................... 129
1.1.3. Creacin y borrado de directorios.............................. 131
1.2. Archivos.................................................................. 133
Introduccin................................................................. 133
1.2.1 Copiando............................................................. 133
1.2.2. Borrando............................................................ 135
1.2.3. Moviendo............................................................ 135
Autoevaluacin: Sistema de arhivos...................................... 138
U.D.2. SHELL.................................................................... 139
Introduccin....................................................................139
2.1. Comodines............................................................... 139
2.2. Ganar tiempo con BASH.............................................. 141
2.3. La entrada estndar y la salida estndar...........................142
2.4. Multitarea................................................................. 146
2.4.1. Usando el control de trabajos................................... 146
2.4.2. Teora del control de trabajos................................... 150
2.5. Consolas virtuales o cmo estar en varios lugares a la vez..... 152
Modulo 3: Shell............................................................... 152
Pgina 4 de 384

Linux

U.D.3. Redes.................................................................... 154


Introduccin....................................................................154
3.1. Conexin sin hilos...................................................... 156
Introduccin................................................................. 156
3.1.1. Instalar una tarjeta inalmbrica................................. 156
3.1.2. Tarjetas con drivers para GNU/Linux.......................... 158
3.1.3 El envoltorio NDIS................................................. 159
3.1.4. Configuraciones adicionales..................................... 160
3.2. Cable de red............................................................ 166
3.3. Mdem.................................................................... 168
Introduccin................................................................. 168
3.3.1 Los mdems de toda la vida..................................... 168
3.3.2. El Mdem ADSL................................................... 171
3.4. Combinar diferentes ubicaciones.................................... 173
Resumen de comandos y teclas............................................. 175
Recuerda......................................................................... 175
Autoevaluacin: Comandos................................................... 175
Prctica: Redes..................................................................176
Prctica: Comandos............................................................ 176
Prctica: Ficheros............................................................... 176
Evaluacin tercera................................................................. 177
Evaluacin final del curso........................................................ 178
Enlaces de inters................................................................. 179
Bibliografa.......................................................................... 181
Glosario.............................................................................. 182
F.A.Q.................................................................................. 193
Introduccin e informacin general.......................................... 193
Antes de la instalacin......................................................... 196
Durante la instalacin.......................................................... 203
Sobre LILO....................................................................... 207
Kernel / Ncleo.................................................................. 213
Plataforma de Teleformacin de IFES

Pgina 5 de 384

X-windows / Entornos grficos................................................217


Administracin................................................................... 223
Internet / Redes / Modems.................................................... 232
Comandos bsicos..............................................................245
Apndices (Conceptos bsicos)................................................. 248
Qu es un sistema operativo?.............................................. 248
Qu es el software libre?.................................................... 249
Por qu usar software libre?................................................ 252
Licencias de software libre.................................................... 253
Internet y herramientas de red............................................... 309
Introduccin a MySQL......................................................... 339
Grabacin de cds.............................................................. 372
Programacin en Bash......................................................... 376

Pgina 6 de 384

Linux

Linux

Evaluacin inicial
Este recurso es de tipo Evaluacin.
Debe conectarse a la plataforma para realizar la evaluacin. Recuerde que las
evaluaciones son obligatorias ya que determinan la nota final.

Plataforma de Teleformacin de IFES

Pgina 7 de 384

Linux

Introduccin

No es una buena idea andar infringiendo continuamente las leyes, el orden establecido,
ese tipo de cosas. Y parece que nos hayamos acostumbrando a tener que vivir en esa
incmoda ilegalidad. Porque desde la primera casette de msica que grabamos nos
convertimos en piratas, desde el primer programa informtico con copyright que nos
instalamos sin haber comprado: piratas.
Pudiera resultar emocionante, s. Comprometido (en el mal sentido), tambin y cada
vez ms. Pero resulta que, aunque no tengamos mala conciencia e incluso nos
sintamos satisfechos por nuestra rebelda al ignorar las advertencias de la/s gran/des
multinacional/es del software que nos prohibe/n la copia, el uso, la distribucin de
su dem sin las correspondientes licencias; aunque no tengamos mala conciencia,
decamos por qu tenemos que vivir en la ilegalidad o pagar por lo que debera ser/ya
es accesible libremente a todxs?
Quiz te preguntes a estas alturas a qu viene este rollo? No era acaso ste un
curso de introduccin a Linux? Lo es. Esa es la respuesta. La respuesta es, se llama
GNU/Linux, aunque de momento y para empezar, Linux, a secas. Porque Linux ofrece
la posibilidad de vivir dentro de la legalidad en lo que a uso, copia y distribucin de
software se refiere: es un blsamo para las conciencias inquietas por el fraude. Y no
se pierde, ni mucho menos la emocin de la rebelda porque es precisamente eso en
lo que consiste: rebelda ante la imposicin de un sistema operativo que pretende ser
inevitable y omnipresente como el Windows de Microsoft y que cada da, por cierto, lo
es menos.

Pgina 8 de 384

Linux

Planteada alguna que otra pregunta y ofrecidas pocas pero prometedoras respuestas,
puede ser interesante recordar tambin que la Comisin Europea desde el proyecto
IDA recomienda el uso del software libre en la administracin pblica europea.
En ese sentido y desde hace ya algn tiempo algunas administraciones pblicas
autonmicas como Extremadura, Andaluca, Valencia, Aragn, Baleares, Canarias,
entre otras administraciones provinciales y locales han apostado por el software libre,
desarrollando, en algunos casos, sus propias distribuciones de Linux como es el caso
de Linex o Guadalinex, por ejemplo. Es decir, que Linux se extiende porque convence,
y convence no por su filosofa libre (que tambin) sino principalmente porque es un
sistema operativo muy estable y muy eficiente. Pero no iremos ms all en las virtudes
del software libre: mejor que las descubras por t mismo, las digieras lentamente y
decidas al final. Tambin tiene inconvenientes, por supuesto: mejor que los descubras
por ti mismo y si no son demasiado indigestos, decidas tambin felizmente.
Este es un curso de introduccin a Linux, por eso hay un pingino observando estas
lneas, se llama Tux y es el icono de Linux. A lo largo del curso se introducirn una
serie de conceptos ms o menos fundamentales y se plantear la instalacin temporal
de una distribucin de Linux arrancable desde el CD (ya veremos qu significa). Incluso
se facilitar la informacin bsica necesaria para su instalacin permanente. La
primera opcin -la instalacin temporal- es muy recomendable para el aprovechamiento
del curso, si bien no es obligatoria. La segunda -la instalacin permanente- es
arriesgada para los apenas iniciados por lo cual no es recomendable, pero ah est.
Ms adelante, entraremos a conocer el entorno grfico y algunas herramientas para la
administracin del sistema operativo.
Entorno grfico, pero tambin comandos o programas no grficos, porque Linux es
todo ello y si decides hacerle un hueco al pingino en tu ordenador con el tiempo
comprenders la necesidad de ambos modos de operacin.
Finalmente conocers algo sobre la configuracin para la conexin a Internet y
la descarga e instalacin automtica de software libre, en general, y de ciertas
aplicaciones especialmente seleccionadas para estimular tu apetito, en particular.
Este es un curso de introduccin a Linux, por ello, y si no lo has hecho ya empezars
ahora a descubrir el espritu que rene a la comunidad de desarrolladores y usuarios
de software libre. Conocers recursos de informacin y tendrs acceso a soporte
tcnico abierto, participativo, libre gratuito? tambin pero sobre todo libre. Qu
queremos decir con eso de libre? puedes consultar los Anexos.
Y este es, en definitiva, un curso de introduccin a Linux. As que hemos pretendido
practicar la filosofa del software libre y de buena parte de la documentacin libre.

Plataforma de Teleformacin de IFES

Pgina 9 de 384

Por ello, conforme a la Licencia de Documentacin Libre de GNU, la GFDL, se cede


este curso al dominio pblico garantizando el permiso para realizar y distribuir copias
literales o modificadas de l, siempre que se preserve este permiso en todas las
copias y se citen las fuentes bibliogrficas y siempre que no se altere el contenido ni se
vulneren los derechos particulares de los Anexos.
Dicho esto, slo queda esperar que disfrutes e incluso aprendas algo a lo largo de ste,
uno de los cursos posibles de introduccin a Linux. Buen viaje!

Pgina 10 de 384

Linux

Linux

MDULO 1. LINUX?
Introduccin
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Plataforma de Teleformacin de IFES

Pgina 11 de 384

Linux / MDULO 1. LINUX?

U.D.1. Conceptos fundamentales


1.1. Sistema Operativo
Antes de entrar en la definicin de Linux, es necesario conocer el concepto de Sistema
Operativo (tambin nos vamos a referir a l como SO). As llamamos al conjunto de
programas o software destinado a permitir la comunicacin del usuario con el
ordenador y a gestionar los recursos de ste de manera cmoda y eficiente.
Comienza a trabajar cuando se enciende el ordenador, y gestiona el hardware de la
mquina desde los niveles ms bsicos.
Hoy en da un sistema operativo se puede encontrar normalmente en todos los
aparatos electrnicos complejos que podamos utilizar y que utilicen microprocesadores
para funcionar (sin necesidad de estar instalados en un Ordenador Personal PC).
Gracias a ellos podemos entender la mquina y sta nos entender a nosotros para
poder cumplir con sus funciones; ste es el caso de: telfonos mviles, reproductores
de CD, minicadenas, auto-radios, entre otros; incluyendo ms visiblemente a los PC y
a otros ordenadores.
Otra definicin, ms coloquial, denomina sistema operativo a todo el software que
viene con el ordenador antes de que se instale ninguna aplicacin. Segn esta
definicin, orientada al usuario final, las herramientas de desarrollo de software no
seran necesarias y, sin embargo, s se consideran elementos imprescindibles un
amplio nmero de programas orientados a diferentes tareas, como editores de texto,
administradores de archivos, navegadores, etc. Adems se incluyen en esta definicin
-como en la anterior- una gran cantidad de programas bsicos y de archivos de datos,
cuya actividad es invisible o transparente para el usuario, pero que permiten que la
comunicacin con la mquina sea posible.
En definitiva, el Sistema Operativo realiza la interpretacin, codificacin y emisin de
rdenes al procesador central de nuestro ordenador, para que ste realice la tareas
necesarias con el propsito de ejecutar la orden que el usuario ha lanzado de una
manera mas fcil, sencilla y amigable, a travs de una interfaz de usuario como puede
ser un sistema grfico de ventanas.
Se pueden clasificar los sistemas operativos desde varias perspectivas:

Administracin de tareas:

Pgina 12 de 384

Linux

Monotarea: Si solamente puede ejecutar un programa (a parte de los


procesos del propio SO) en un momento dado. Una vez que empieza
a funcionar un programa, continuar hacindolo hasta su finalizacin o
interrupcin.
Multitarea: Si es capaz de ejecutar varios programas al mismo tiempo. Este
tipo de SO normalmente asigna los recursos disponibles (CPU, memoria,
perifricos) de forma alternativa a los programas que los solicitan, de manera
que el usuario percibe que todos funcionan a la vez.
Administracin de usuarios:
Monousuario: Si slo permite ejecutar los programas de un usuario al
mismo tiempo.
Multiusuario: Si permite que varios usuarios ejecuten simultneamente sus
programas, accediendo a la vez a los recursos del ordenador. Normalmente
estos SO utilizan mtodos de proteccin de datos, de manera que un
programa no pueda usar o cambiar los datos de otro usuario.
Manejo de recursos:
Centralizado: Si permite utilizar los recursos (memoria, CPU, disco,
perifricos... ) de un solo ordenador.
Distribuido: Si permite utilizar los recursos de ms de un ordenador al
mismo tiempo.

En el disco duro de un ordenador pueden coexistir varios sistemas operativos


sin que existan entre ellos conflictos (por ejemplo, Windows y Linux). Esta
alternativa, desconocida o ignorada por algunos, nos ofrece enormes posibilidades.
Nos permite hacer un uso inteligente y controlado de los recursos de nuestra mquina,
eligiendo el arranque de un sistema operativo u otro segn las tareas que vamos a
desempear.
Ademas disponer de una segunda opcin supone la garanta de poder arrancar nuestro
ordenador en el caso de que uno de los SO se corrompa y recuperar los datos que
todava quedan almacenados en el disco duro.
Para instalar un nuevo sistema operativo en nuestro disco duro, es fundamental,
particionarlo, es decir, dividir lgicamente (sin el uso de la fuerza bruta) el espacio
disponible en subespacios o particiones, tantas particiones como nuevos SO (y alguna
ms). Es esta una tarea que requiere conocimiento y precaucin.

1.2. Definicin de Linux


Linux es la denominacin de un sistema operativo distribuido, multiusuario y
multitarea y adems el nombre de un ncleo.

Plataforma de Teleformacin de IFES

Pgina 13 de 384

Pero... y qu es el ncleo? sin nimo de complicar demasiado la descripcin de


Linux, se hace inevitable, sin embargo, definir ncleo (tambin llamado kernel) que
resulta ser la parte fundamental de un sistema operativo. Es decir, es el software
responsable de facilitar a los distintos programas del sistema operativo acceso seguro
al hardware del ordenador o en forma mas bsica, es el encargado de gestionar
recursos, a travs de servicios de llamada al sistema. Como hay muchos programas
y el acceso al hardware es limitado, el ncleo tambin se encarga de decidir qu
programa podr hacer uso de un dispositivo de hardware y durante cunto tiempo, lo
que se conoce como multiplexado.
Acceder al hardware directamente puede ser realmente complejo, por lo que los
ncleos suelen implementar una serie de abstracciones del hardware. Esto permite
esconder la complejidad, y proporciona una interfaz con el usuario limpia y uniforme al
hardware subyacente, lo que facilita adems su uso para el programador.
Pero volviendo a Linux, hay que decir que es uno de los paradigmas del desarrollo de
software libre (y de cdigo abierto), donde el cdigo fuente (el lenguaje informtico en
el que est escrito el ncleo) se encuentra disponible pblicamente y cualquier persona
puede libremente usarlo, modificarlo y redistribuirlo.
El trmino Linux estrictamente se refiere al ncleo Linux, pero es ms comnmente
utilizado para describir al sistema operativo con un ncleo Linux, que utiliza
primordialmente filosofa y metodologas libres (tambin conocido como GNU/Linux)
y que est formado mediante la combinacin del ncleo Linux con las bibliotecas y
herramientas del proyecto GNU y de muchos otros proyectos/grupos de software (libre
o no libre). El ncleo no es parte oficial del proyecto GNU (el cual posee su propio
ncleo en desarrollo), pero es distribuido bajo los trminos de la licencia GPL (GNU
General Public License).
Por ltimo, la expresin Linux tambin es utilizada para referirse a las distribuciones
Linux, colecciones de software que suelen contener grandes cantidades de paquetes
adems del ncleo y esto nos lleva al siguiente apartado.

1.3. Qu son las distribuciones?


Como decamos, una distribucin es un conjunto de aplicaciones reunidas por
un grupo, empresa o persona para permitir instalar fcilmente un sistema Linux
completo. Es lo que se llama un 'sabor' de Linux ('flavour' en ingls). En general se
diferencian por las herramientas para la configuracin del entorno y los paquetes de
software a instalar (las aplicaciones incluidas).

Pgina 14 de 384

Linux

Existen numerosas distribuciones Linux (conocidas popularmente como "distros"),


ensambladas, como hemos mencionado ya, por individuos, empresas y otros
organismos.
Cada distribucin puede incluir cualquier nmero de software adicional, incluyendo
software que facilite la instalacin del sistema. La base del software incluido con cada
distribucin incluye el ncleo Linux, al que suelen adicionarse tambin varios paquetes
de software, como hemos dicho.
Las herramientas que suelen incluirse en las distribucin de este sistema operativo se
obtienen de diversas fuentes, incluyendo de manera importante proyectos de cdigo
abierto o libre, como el GNU y el BSD. Debido a que las herramientas que en primera
instancia volvieron funcional al ncleo de Linux provienen de un proyecto anterior a
Linux llamado GNU, Richard Stallman (fundador del proyecto GNU) pide a los usuarios
que se refieran a dicho sistema como GNU/Linux. A pesar de esto, la mayora de los
usuarios continan llamando al sistema simplemente "Linux" y las razones expuestas
por Richard Stallman son eterno motivo de discusin. La mayora de los sistemas Linux
incluyen tambin herramientas procedentes de BSD.

Algunas se ofrecen junto a un soporte tcnico y una serie de garantas de uso a travs
de una relacin comercial ms o menos tradicional y a un determinado precio. Mientras
que otras se ofrecen gratuitamente. y como soporte el que proporciona altruistamente
Plataforma de Teleformacin de IFES

Pgina 15 de 384

la comunidad de Internet. Tambin existe la opcin de obtener gratuitamente el SO y el


soporte tcnico y las garantas se pueden contratar aparte.

1.4. Entorno de trabajo: Shell y X-Window


Linux ofrece la posibilidad de trabajar en un entorno de trabajo tipo texto o bien en un
entorno grfico de ventanas como podra ser el de Windows. Y del mismo modo que
dentro de Windows podemos ejecutar el SO modo texto que desarroll Microsoft con
el nombre DOS, desde el administrador de ventanas de Linux podemos ejecutar lo
que se denomina un terminal o un "shell" (caparazn o concha en ingls) que es
un intrprete de comandos de texto como ocurra en MSDOS, con el que ejecutar
diferentes tareas ms o menos simples enviando rdenes (los comandos) al ordenador
para que se ejecuten y finalmente obtengamos una reaccin, una respuesta.
En muchas distribuciones Linux al iniciar el ordenador nos encontraremos en modo
texto, de forma que el arranque del ordenador es ms rpido y opcional el paso al
modo grfico de ventanas. De todas formas, siempre es algo configurable por el
usuario que el arranque del ordenador nos lleve directamente al modo grfico como
sucede en Windows.
El intrprete de comandos o shell acepta los comandos que escribe el usuario y los
ejecuta. Los comandos pueden formar programas en el lenguaje del intrprete de
comandos, y a dichos programas se los denomina "guiones de shell".
Linux viene con un shell denominado bash, escrito por la organizacin Free Software
Foundation. El nombre bash proviene de Bourne Again SHell, uno de los tantos juegos
de palabras en Linux (su creador fue Steven Bourne). Bash es el shell predeterminado
cuando uno usa Linux. Apenas entres por primera vez, el "prompt" o solicitud de orden
que vers, k es producto de la accin de bash, en otras palabras: ests corriendo tu
primer programa Linux, el shell bash.
Por otro lado, y al igual que otros sistemas operativos, Linux cuenta con un sistema
de ventanas que, a diferencia de otros sistemas operativos, es independiente de Linux,
es decir puede ponerse, quitarse o cambiarse: actualizarse (e incluso desactualizarse,
si esa es nuestra intencin). Tal sistema de ventanas se llama X-Window y la versin
particular que se emplea en Linux se llama XFree86 (http://www.xfree86.org).
Para facilitar la adopcin de Linux por parte de usuarios sin experiencia con este
sistema, hay varios proyectos de X-Window en marcha, los dos ms conocidos son
GNOME (http://www.gnome.org) y KDE (http://www.kde.org), que funcionan como
decamos sobre Linux y X-Window. Cada uno brinda un escritorio grfico y aplicaciones
de oficina como aquellas a las que estn acostumbrados los usuarios de otros sistemas
Pgina 16 de 384

Linux

operativos (procesadores de texto, hojas de clculo, reproductores/editores de audio,


vdeo y fotografa, y un largo etctera).
En definitiva, el usuario encontrar en la distribucin Linux que ha adquirido el entorno
de ventanas KDE GNOME, pero podr ms adelante cambiarlo por el que ms se
adapte a sus gustos o necesidades. Adems podr decidir no instalar ningn entorno
grfico y dejar un Linux bsico en modo texto para optimizar el rendimiento de la
mquina, o tambin para reciclar un ordenador antiguo que no soporte las ltimas
versiones de Windows, o en el que las aplicaciones grficas corran demasiado lentas
(aunque incluso instalando un entorno grfico Linux, la velocidad y el rendimiento de la
mquina se veran mejoradas).
Ms adelante, entraremos en el anlisis de una serie de programas y comandos
que nos permitirn realizar operaciones desde el modo texto. Si bien esto puede
parecer en principio algo intil o prescindible para los nuevos usuarios, si decides
adentrarte en el universo Linux, comprenders rpidamente que es ms rpido e
incluso inevitable (en ciertas ocasiones) trabajar de forma textual y no grfica. Para
ello, como ya anunciamos, se introducirn los ms significativos de aquellos programas
y comandos ejecutables desde la consola shell. Y con el tiempo el usuario de Linux
tendr la necesidad de ir conociendo herramientas ms avanzadas, que le permitan
explotar el potencial del SO Linux.

1.5. Usuarios y grupos


Hemos mencionado ya, que multiusuario significa que el sistema puede ser empleado
por ms de un usuario al mismo tiempo. Por ser multiusuario, Linux debe diferenciar a
los usuarios, para lograrlo a cada usuario se le asignan:

una identificacin nica (en ingls login),


un grupo,
una clave de acceso (en ingls password),
un espacio independiente del espacio de los dems usuarios (ese espacio
se llama directorio personal y permite organizar informacin del usuario en
archivos).

Linux ofrece tambin un esquema de permisos, con el que un usuario puede


conceder o quitar permisos para ver o modificar sus archivos a otros usuarios
o a usuarios de su mismo grupo. Gracias al sistema de usuarios y al esquema de
permisos, no es posible que un usuario normal desconfigure el sistema completo o lo
infecte con virus. La configuracin general del sistema slo puede cambiarla el
administrador del sistema, cuyo login recibe el nombre de root (raz en ingls).

Plataforma de Teleformacin de IFES

Pgina 17 de 384

Es decir, que como usuario de Linux tendrs un login, un grupo principal, un espacio
y una clave. Para evitar una mala utilizacin de los recursos por parte de otra persona
a nombre tuyo, tu clave de acceso debe ser secreta. Adems por seguridad, es
recomendable que cada usuario cambie su clave de acceso cada cierto tiempo, si es
que perteneces a una red o tu PC lo usan varias personas. Podrs hacerlo empleando
el comando passwd desde un intrprete de comandos (pero este comando y otros los
veremos con ms detalle ms adelante).
Puedes entonces entrar a una sesin con tu login y clave, bien desde un entorno
grfico o bien desde una interfaz tipo texto.
Con respecto al administrador(es) del sistema, cuando Linux es el Sistema Operativo
de una red de ordenadores habr una persona o un grupo de ellas que con el permiso
de root administren la configuracin y los aspectos ms tcnicos de la red y luego los
usuarios realizarn el resto de operaciones para las que tengan permiso segn las
tareas propias de su puesto/funcin. Pero si Linux se instala en un slo ordenador
utilizado por una persona o varias personas de confianza, el usuario decidir en cada
momento si las tareas que va a realizar requieren de todos los permisos privilegiados
a root o no. Si de esa forma prefiere operar de un modo menos comprometido y ms
seguro eligir un perfil de usuario convencional, de esta forma no correr el riesgo
de modificar parmetros vitales para el funcionamiento de su ordenador por error o
imprudencia.

Pgina 18 de 384

Linux

Linux / MDULO 1. LINUX?

U.D.2. Instalacin temporal de Linux


2.1. UBUNTU

2.1.1. Qu es Ubuntu?
Ubuntu es un sistema operativo GNU/Linux completo, est disponible
gratuitamente y cuenta con el apoyo de una importante comunidad de usuarios.
Basada en Debian GNU/Linux, Ubuntu concentra su objetivo en la facilidad de uso,
la libertad en la restriccin de uso, los lanzamientos regulares y la facilidad en la
instalacin.
Ubuntu es patrocinado por Canonical Ltd., una empresa privada fundada y financiada
por el empresario sudafricano Mark Shuttleworth.
La distribucin debe su nombre al movimiento homnimo encabezado por el obispo
Desmond Tutu, quien gan el Premio Nobel de la Paz en 1984 por sus luchas en contra
del Apartheid en Sudfrica. Mark Shuttleworth, el mecenas del proyecto, es sudafricano
y por lo tanto se encontraba muy familiarizado con la corriente. Tras ver similitudes
entre los ideales de los proyectos GNU, Debian y en general con el movimiento del
software libre, decidi aprovechar la ocasin para difundir los ideales de Ubuntu.

Plataforma de Teleformacin de IFES

Pgina 19 de 384

2.1.2. Quin lidera Ubuntu?


Ubuntu es un proyecto comunitario que involucra a muchos voluntarios y cuenta
adems con el patrocinio de Canonical Ltd. Canonical no cobrar licencias por
Ubuntu, ni ahora ni en el futuro. Canonical s cobrar a las personas o instituciones
que necesiten apoyo tcnico u otros servicios profesionales. Canonical no tiene el
monopolio del servicio tcnico sino que es libre el servicio.

Pgina 20 de 384

Linux

2.1.3. Caractersticas
Una serie de caractersticas tcnicas, algunas quiz no le dirn mucho a un usuario
apenas iniciado pero aqu quedan para cuando el/la iniciado/a vayan dando sus
primeros pasitos:

Basada en la distribucin Debian.

Disponible en 4 arquitecturas: Intel x86, AMD64, PowerPC, SPARC (slo en


versin de servidor).

Los desarrolladores de Ubuntu se basan en gran medida en el trabajo de las


comunidades de Debian y GNOME.

Las versiones estables se liberan cada 6 meses y se mantienen actualizadas


en materia de seguridad hasta 18 meses despus de su lanzamiento.

La nomenclatura de las versiones no obedece principalmente a un orden


de desarrollo, se compone del dgito del ao de emisin y del mes en que
esto ocurre. La versin 4.10 es de octubre de 2004, la 5.04 es de abril de
2005, la 5.10 de octubre de 2005, la 6.06 es de junio de 2006 y la 6.10 es
de octubre de 2006.

El escritorio oficial es Gnome y se sincronizan con sus liberaciones.

Para centrarse en solucionar raudamente los bugs, conflictos de paquetes,


etc. se decidi eliminar ciertos paquetes del componente main, ya que no
son populares o simplemente se escogieron de forma arbitraria por gusto o
sus bases de apoyo al software libre. Por tales motivos inicialmente KDE no
se encontraba con ms soporte de lo que entregaban los mantenedores de
Debian en sus repositorios, razn por la que se sum la comunidad de KDE
distribuyendo una distribucin llamada Kubuntu.

De forma sincronizada a la versin 6.06 de Ubuntu, apareci por primera vez


la distribucin Xubuntu, basada en el entorno de escritorio XFce.

El navegador web oficial es Mozilla Firefox.


El sistema incluye funciones avanzadas de seguridad y entre sus polticas
se encuentra el no activar, de forma predeterminada, procesos latentes al
momento de instalarse. Por eso mismo, no hay un firewall predeterminado,
ya que no existen servicios que puedan atentar a la seguridad del sistema.

Plataforma de Teleformacin de IFES

Pgina 21 de 384

Para labores/tareas administrativas incluye una herramienta llamada sudo


(similar al Mac OS X), con la que se evita el uso del usuario root.

Mejorar la accesibilidad y la internacionalizacin, de modo que el software


est disponible para tanta gente como sea posible. En la versin 5.04, el
UTF-8 es la codificacin de caracteres en forma predeterminada.

No slo tiene como lazo a Debian el uso del mismo formato de paquetes
deb, Ubuntu tiene uniones muy fuertes con esa comunidad, contribuyendo
cualquier cambio directamente e inmediatamente, ms que anuncindolos.
Esto sucede en los tiempos de lanzamiento. Muchos de los desarrolladores
de Ubuntu son tambin responsables de los paquetes importantes dentro de
la distribucin de Debian.

Todos los lanzamientos de Ubuntu se proporcionan sin coste alguno. Los


CDs de la distribucin se envan de forma gratuita a cualquier persona que
los solicite (la versin 6.10 ya no se distribuye en cd's, la versin anterior
se sigue distribuyendo sin coste alguno). Tambin es posible descargar las
imgenes ISO de los discos por transferencia directa o bajo la tecnologa
Bittorrent.

Ubuntu no cobra honorarios por la suscripcin de las mejoras de la "Edicin


Enterprise".

2.1.4. Organizacin de paquetes


Ubuntu divide todo el software en cuatro secciones, llamadas los "componentes", para
mostrar diferencias en licencias y la prioridad con la que se atienden los problemas
que informen los usuarios. Por defecto, se instala una seleccin de paquetes que
cubre las necesidades bsicas de la mayora de los usuarios de computadoras. Los
paquetes de Ubuntu generalmente se basan en los paquetes de la rama inestable
(Sid) de Debian.

Main: El componente main contiene solamente los paquetes que cumplen


los requisitos de la licencia de Ubuntu, y para los que hay soporte disponible
por parte de su equipo. ste est pensado para que incluya todo lo
necesario para la mayora de los sistemas Linux de uso general. Los
paquetes de este componente poseen ayuda tcnica garantizada y mejoras
de seguridad oportunas.

Pgina 22 de 384

Linux

Restricted: El componente restricted contiene el software que est


soportado por los desarrolladores de Ubuntu debido a su importancia, pero
que no est disponible bajo ningn tipo de licencia libre para incluir en
main. En este lugar se incluyen los paquetes tales como los controladores
propietarios de algunas tarjetas grficas, como por ejemplo, los de nVIDIA.
El nivel de la ayuda es ms limitado que para main, puesto que los
desarrolladores pueden no tener acceso al cdigo fuente.

Universe: El componente universe contiene una amplia gama del software,


que puede o no tener una licencia restrictiva, pero que no recibe apoyo
por parte del equipo de Ubuntu. Esto permite que los usuarios instalen toda
clase de programas en el sistema, pero los guarda en un lugar aparte de los
paquetes soportados: main y restricted.

Multiverse: Finalmente, se encuentra el componente multiverse, que


contiene los paquetes sin soporte debido a que no cumplen los requisitos del
Software Libre.

2.2. LIVECD o CDVIVO


A diferencia de otros sistemas operativos y algunas otras distribuciones Linux, un
primer acercamiento a Ubuntu no requiere una instalacin en el disco duro; el
sistema puede iniciarse desde un simple CD.
Hablaremos entonces de una "Instalacin Temporal de Linux" puesto que se utilizarn
una serie de recursos hardware de nuestro ordenador para simular una Instalacin
real y al final de la sesin se liberarn. De todos modos se puede tambin realizar una
instalacin permanente de Ubuntu pero se escapa de los objetivos de este temario
abordar la instalacin con tal profundidad.
Ubuntu reconoce automticamente la mayora del hardware del ordenador
soportado por Linux cuando se inicia y es ste un detalle de enorme importancia
pues como comprobarn aquellos que se vayan introduciendo en el mundo de Linux,
Microsoft ha conseguido que un nmero importante de empresas fabricantes de
hardware le reserven a ellos la posibilidad de comunicarse con sus chips; siendo
en algunos casos una aventura conseguir la compatibilidad con Linux. Sin embargo,
suele resultar tambin que esta aventura nos permite descubrir y asimilar mejor el
funcionamiento de los sistemas que utilizamos, as que no hay mal que por bien no
venga (incluso cuando finalmente no haya resultados materiales).

Plataforma de Teleformacin de IFES

Pgina 23 de 384

Siguiendo con Ubuntu, sealar que se caracteriza por ser totalmente libre y que cuenta
con programas tambin libremente distribuibles, interesantes y alguno ya muy popular
como:

el navegador Firefox
la suite ofimtica OpenOffice.org
el Photoshop del software libre: The Gimp,

2.3. Arranque con UBUNTU


Para arrancar Ubuntu debemos apretar el botn de encendido de nuestro ordenador ya
con el LiveCD de Ubuntu en la unidad de CD. Si todo va bien apareceremos en una
pantalla que nos plantea varias opciones.

Pgina 24 de 384

Linux

Abajo tenemos un men al que podemos acceder pulsando las teclas de funcin de
nuestro teclado F1, F2, ..., por ejemplo F2 nos permite seleccionar Language y F4 nos
permite modificar la resolucin de la pantalla: podemos elegir 640x400x16 en aquellos
ordenadores que la opcin por defecto VGA nos d problemas (en algunos porttiles y
monitores, dependiendo de la tarjeta grfica, la pantalla puede quedarse en blanco).
Una vez modificado F2 y F4 si nos ha parecido necesario (tambin podemos probar a
dejarlo tal cual la primera vez), arrancamos la primera de las opciones:

Start o Install Ubuntu


(si no pulsamos nada ser esta opcin la que se ejecute cuando finalize la cuenta
atrs)
Y comenzar a arrancarse Ubuntu de forma que iremos viendo una secuencia
de procesos y el reconocimiento del hardware de nuestro ordenador hasta que
apareceremos finalmente en un escritorio.
Si por el contrario no hemos llegado siquiera a la pantalla que nos plantea las opciones
y el men de las teclas de funcin de Ubuntu porque se nos ha arrancado Windows
en lugar de Linux, tendremos que hacer un ligero cambio de configuracin en la BIOS,
aggh!! ...la BIOS pero qu es eso?
De momento y brevemente, diremos que la BIOS es un programa que se encarga
entre otras cosas de gestionar el arranque de nuestro ordenador. En ella se configura
que durante el proceso de arranque se busque el cdigo de arranque primero en, por
ejemplo, la unidad de CD, a continuacin en la unidad de diskette y finalmente, si no se
encontrar ese cdigo en ninguna de estas unidades, se buscara en el Disco Duro. Si
no es as como est configurada nuestra BIOS, no arrancar Ubuntu sino Windows una
y otra vez.
Para cambiar la configuracin de la BIOS deberamos buscar en internet un manual de
nuestra versin y marca de BIOS que conoceremos si durante los primeros segundos
del arranque antes de que se inicie WIndows nos fijamos en el mensaje que aparece
fugazmente y que est relacionado con el Setup o Configuracin de nuestra mquina.
Tambin puede no arrancar Ubuntu por otras causas. La ms habitual es haber
superado la pantalla inicial pero que el proceso de arranque se detenga en un
punto determinado porque el hardware de nuestra mquina no es soportado por la
distribucin que tenemos de Ubuntu. En ese caso, hay algunas vas que se pueden

Plataforma de Teleformacin de IFES

Pgina 25 de 384

explorar, si en lugar de pulsar Intro eliges las diferentes opciones habilitadas a travs
de las teclas de funcin F1, F2, F3, ...
Sera imposible detallar todas las dificultades asociadas a los mltiples escenarios
posibles y en este curso no lo podemos garantizar. Ubuntu es una distribucin que ha
demostrado una alta compatibilidad en aquellos mltiples escenarios, pero desde luego
que siempre hay excepciones.

2.4. Por qu temporal?


Una versin ejecutable desde CD y que no est instalada en nuestro disco duro tiene
algunos inconvenientes en comparacin con otra distribucin que ya est instalada
en nuestro disco duro: el arranque es ms lento, los datos que no se almacenan en
dispositivos externos o en otras particiones del disco duro no son recuperables,
siempre se arranca un entorno estndar y poco personalizado. Pero dejmonos ya
de defectos y dificultades, porque al fin y al cabo un LiveCD tiene otros propsitos
diferentes que convierten en insignificantes los defectos de la comparacin anterior (ay,
las comparaciones...).
El formato LiveCD existe por diversos motivos:

Ensear y demostrar de manera sencilla el funcionamiento del sistema


operativo bsico Linux y de un buen nmero de software libre para Linux
(que en algunos casos tambin encontraremos para Windows).

Probar rpidamente la compatibilidad de hardware bajo Linux antes de


adquirir cualquier distribucin/ordenador, especialmente para tarjetas de
vdeo.

Utilizar las herramientas incluidas en l con el objeto de restaurar un


sistema operativo corrupto o sus datos perdidos.

Descubrir los prametros de los archivos de configuracin que


automticamente ha generado Ubuntu en el arranque y utilizarlos en la
configuracin no tan automtica de otras distribuciones Linux.

Si a los motivos anteriores se aade que Ubuntu tiene la licencia GPL de GNU es decir
que puedes copiar, modificar y redistribuir el CD sin restriccin alguna, siempre que el
destinatario reciba la misma licencia, se entender que se convierta en un gran aliado
para la introduccin a Linux.

Pgina 26 de 384

Linux

2.5. Instalacin permanente en el disco duro


Como hemos ya comentado, la instalacin de Ubuntu en el Disco Duro de forma
permanente es una opcin.. interesante y algo temeraria en los apenas iniciados.
Por ello -si ya la configuracin de la BIOS era algo opcional- la instalacin de Ubuntu en
el Disco Duro es ms que voluntaria en este curso. Y lo es, porque supone revolver en
las entraas de nuestro ordenador y eso es algo que puede tener sus consecuencias;
la ms terrible: perder la posibilidad de arrancar cualquier sistema operativo en l
instalado previamente (lase windows, por ejemplo) y de esa forma el acceso a todos
los datos que contiene. Por eso, podras probar en un viejo ordenador o en un nuevo y
reluciente ordenador que an no tenga nada valioso dentro.
Aunque bien es verdad que el CD de instalacin de windows permite arrancar el
ordenador en un modo recuperacin (o recovery), lo cual nos puede facilitar la tarea.
Tambin Ubuntu al ser un sistema arrancable desde CD, se iniciar siempre
y permitira as la recuperacin de los datos de Windows. Pero nos estamos
situando por prudencia en el peor de los casos. Adems, antes de nada para que
el mal -en caso de producirse- sea menor y evitemos fatigosas recuperaciones de
datos, es recomendable hacer una copia de seguridad (o back-up) en un CD o una
memoria USB, con los datos fundamentales de nuestro entorno de trabajo a travs de
herramientas como las que proporciona Windows XP en:
Todos los programas>Accesorios>Herramientas del Sistema>Copia de Seguridad
y hacerlo, claro, antes de siquiera pensar en iniciar la instalacin de otro sistema
operativo (lase Ubuntu o cualquier distribucin Linux).
Dicho lo cual y sin nimo de crear alarma social (slo de plantear los riesgos para que
el lector/a decida) facilitamos a continuacin un enlace que nos introduce la instalacin
permanente de Ubuntu.
http://www.fentlinux.com/web/?q=node/1550
Pero recuerda: para descubrir Linux e iniciarte en
l es suficiente con el arranque de Ubuntu desde el
CDROM y es lo que desde aqu aconsejamos a los
apenas iniciados.

Plataforma de Teleformacin de IFES

Pgina 27 de 384

Pero si algn da decides que Linux es tu sistema operativo alternativo puedes empezar
instalando Ubuntu en tu disco duro. Esta fuera de los objetivos de este curso pero
es muy emocionante.

Pgina 28 de 384

Linux

Linux / MDULO 1. LINUX?

U.D.3. Entrada y salida del sistema


3.1. Antes de nada
En algunos sistemas operativos, como por ejemplo MS-DOS, no tienes que identificarte
frente al ordenador antes de poder utilizarlo; siempre se supone que eres el nico
usuario en el sistema y que puedes acceder a todo lo que quieras. Por el contrario,
Linux (al igual que las ltimas versiones de Windows) es un sistema operativo
multiusuario; es decir que no slo puede utilizarlo ms de una persona a la vez,
sino que las distintas personas tendrn distintas posibilidades de operacin. Para
poder identificar a las personas, Linux necesita un usuario de forma que durante
el proceso denominado arranque sepa quin esta frente a l, qu permisos debe
asignarle y cul es la configuracin personal de su entorno de trabajo. De todas formas
es una consideracin sta que nos afectar en mayor medida si deseamos instalar
permanentemente Linux en nuestro ordenador. En caso contrario las distribuciones
LiveCD utilizan por defecto y automticamente un determinado usuario sin necesidad
de que quien est sentado frente a la mquina tenga que identificarse.

3.2. Que sucede al arrancar el ordenador?


Apenas se enciende un ordenador, tiene lugar un complejo proceso antes de que est
listo para ser usado.
Lo primero que sucede cuando se conecta la alimentacin a su ordenador -sea cual
sea el SO instalado en l- es la ejecucin de un programa denominado BIOS te
suena, verdad? Su nombre proviene de las iniciales de Basic Input/Output System,
que significa Sistema de Entrada/Salida Bsico. Este programa est almacenado de
manera permanente dentro del ordenador en chips que normalmente son del tipo de
lectura solamente. Para nuestros propsitos, el BIOS es un programa que nunca se
puede cambiar. Al funcionar, realiza ciertas comprobaciones mnimas y luego se fija
si hay un disquete en la disquetera o un CD en la unidad de CD. Si encuentra alguno,
mira en su "sector de arranque" y comienza a ejecutar su cdigo. Si hay un disquete o
un CD pero no contiene un sector de arranque, el BIOS mostrara el siguiente mensaje:
Non-system disk or disk error

Plataforma de Teleformacin de IFES

Pgina 29 de 384

(y notaramos a continuacin que nos falta el aire o lo que se llama tambin un vuelco
al corazn) pero... N O HAY QUE ALARMARSE: si quitamos el disquete/CD y
apretamos una tecla, el proceso de arranque continuar normalmente.
Si directamente no existe un disquete/CD en las unidades correspondientes, el BIOS
se fija si existe un registro maestro de arranque (MBR: master boot record) en el
disco duro. Si es as -como debera ser natural- comienza a ejecutar el cdigo que all
encuentra y que se ocupa de cargar el sistema operativo.
En este momento el control lo tomara una aplicacin que puede o no estar instalada
en el MBR y que recibe el nombre de "gestor de arranque". En los sistemas Linux,
podemos encontrar el cargador o gestor de arranque LILO (por LInux LOader) o
tambin el GRUB (en Ubuntu encontraremos GRUB), ambos pueden ocupar el MBR
y en ese caso daran al usuario la opcin de cargar bien Linux o cualquier otro sistema
operativo que podamos tener instalado en nuestro disco duro (lase, por ejemplo,
Windows) seleccionando cualquiera de esas opciones con las flechas del teclado y
pulsando a continuacin la tecla Intro.
Luego que el BIOS le pasa el control al gestor de arranque, ste a su vez le pasa el
control al ncleo de Linux (si fue sta la opcin elegida). El ncleo es el programa
central del sistema operativo, que controla a todos los dems. A continuacin, Linux
mira qu clase de hardware tiene debajo. Necesita saber que clase de discos duros
tiene, si hay o no un ratn, si est conectado a una red y otras circunstancias de ese
tipo. Linux no puede recordar ciertas cosas despus de apagado, de manera que
las pregunta cada vez que arranca. Afortunadamente, no te las pregunta a ti: se las
pregunta al hardware (uf!) y en la mayora de los casos, la respuesta que ste le da
es comprendida por el ncleo, si no es as, Linux ir informando durante el proceso
de arranque de qu respuestas no ha conseguido obtener de la mquina. Por ello,
durante el arranque, el ncleo de Linux muestra unos cuantos mensajes. No debemos
tampoco alarmarnos si alguno de ellos es un Error (o un No OK, o un Failed) -mientras
Linux siga cargndose- porque se puede tratar de hardware no reconocido y que
no usaremos, entre otras cosas. Desde luego que en ocasiones la informacin que
nos proporciona Linux en el arranque s es relevante pero su estudio requiere de
conocimientos avanzados.
El ncleo tambin se ocupa de administrar los otros programas digamos ms prcticos,
entonces cuando est satisfecho con que todo anda bien hasta el momento debe
arrancar otro programa para que inicie la gestin de esos trabajos ms prcticos.
El programa que el ncleo arranca se llama "init". Una vez que el ncleo arranca
"init", no lanza ningn otro programa. El ncleo se transforma as en un administrador
y proveedor, no en un programa activo. Por lo tanto, para saber qu es lo que
hace el ordenador luego que el ncleo arranca, deberemos examinar "init". La
Pgina 30 de 384

Linux

complicada secuencia de arranque por la que atraviesa "init" no es idntica en todas los
ordenadores. Para Linux existen varias versiones de "init", y cada una hace las cosas a
su manera. Algunas de las cosas que pueden suceder cuando "init" arranca son:

El control de integridad del sistema de archivos. Pero qu es un


sistema de archivos...? un sistema de archivos es la disposicin de los
archivos en el disco duro. Adems permite que Linux sepa qu partes
del disco duro estn ocupadas y cules no. Desafortunadamente, ciertos
factores como los cortes en el suministro de energa hacen que la
informacin que el sistema de archivos tiene sobre la disposicin en el disco
de los archivos no coincida con la disposicin real. En estos casos se ve
la utilidad de un programa llamado "fsck", que es capaz de encontrar estas
situaciones y en ocasiones corregirlas.

Se lanzan programas especiales de encaminamiento para las redes.


Estos programas informan a su ordenador de cmo puede comunicarse con
otros.

Se borran los archivos temporales que crean ciertos programas.

Se actualiza correctamente el reloj del sistema. Esto es ms complicado


de lo que puede parecer, pues Linux de manera predeterminada, necesita la
hora en UCT (Universal Coordinated Time), tambin conocido como hora de
Greenwich o GMT, y el reloj interno que es alimentado por una batera dentro
del ordenador muy probablemente estar configurado con la hora local. Esto
significa que debe existir algn programa que lea la hora del reloj interno y la
corrija transformndola en hora UCT.

Plataforma de Teleformacin de IFES

Pgina 31 de 384

Despus de que "init" termina con sus actividades de arranque, comienza con sus
tareas planificadas. "init" se convierte as en el padre de todos los procesos del sistema
Linux.
Un proceso es simplemente un programa que est corriendo; como cualquier programa
puede correr ms de una vez, entonces puede haber ms de un proceso para un
programa dado en particular.
En su sistema Linux con toda seguridad "init" corre varias instancias de un programa
llamado getty. Getty es el programa que le permitir iniciar el ingreso al usuario, y que a
continuacin lanzar el programa login.
Todas estas aclaraciones te pueden parecer demasiado tcnicas y farragosas para una
Iniciacin a Linux pero no viene mal que comiences a leer algo de forma que te vayan
sonando. Aun as, de momento y para los objetivos de este Mdulo no son de ninguna
manera imprescindibles. Puedes intentar olvidarlas (pero si has ledo hasta aqu, algo
habr quedado ya..) y si en algn momento sientes la inquietud de revisarlas, por lo
menos puedes contar con esta informacin.

Pgina 32 de 384

Linux

3.3. Entrada y salida en UBUNTU


Una vez arrancado Ubuntu desde nuestro LiveCD accedemos a un Entorno de
Escritorio.

Plataforma de Teleformacin de IFES

Pgina 33 de 384

Eso quiere decir que hemos arrancado satisfactoriamente y que el proceso que hemos
conocido en el punto anterior se ha ejecutado sin problemas. La entrada al sistema ha
finalizado y al ser una instalacin temporal Ubuntu no ha requerido la identificacin con
ningn nombre de usuario y automticamente se nos ha asignado el usuario ubuntu
que no tiene los privilegios de administrador. De esta forma no podremos realizar
cambios graves en la configuracin del sistema ni sobre el disco duro que puedan
afectar a su funcionamiento. Si queremos ejecutar algn comando o aplicacin como
administrador tambin podramos hacerlo, si bien de momento no nos interesa saber
cmo.
En la imagen del escritorio tenemos en este caso, adems del propio escritorio, una
aplicacin que hemos utilizado para hacer la captura de la imagen, ya hemos hablado
de ella, se trata de Gimp, un editor de imagnes. Y arriba a la derecha hay un icono
con un botn rojo de encendido y apagado que nos da las siguientes opciones:

Pgina 34 de 384

Linux

Log Out (Cierra sesin y nos lleva a la pgina de ingreso de usuario o login)

Bloquear pantalla (Lanza el protector de pantalla y protege la sesin con


una contrasea)

Cambiar Usuario (Conserva la sesin abierta y protegida por contrasea


pero deja a otros usuarios hacer login, esto es, iniciar una sesin diferente)

Reiniciar (Apaga y arranca el ordenador de nuevo)

Apagar

Plataforma de Teleformacin de IFES

Pgina 35 de 384

Linux / MDULO 1. LINUX?

Recuerda
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Clasificacin de los sistemas operativos


Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Distribuciones Linux
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Manifiesto UBUNTU
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Autoevaluacin: Linux?
Unas preguntas a ver si te has ledo la leccin
Pregunta 1:
Qu distribucin est desarrollada por un grupo de programadores, sin
empresa?

Ubuntu

Debian

Mandriva

RedHat
Respuesta correcta: Debian
Pregunta 2:
Qu distribubiones estn enfocadas al mundo empresarial?

Suse y RedHat

Pgina 36 de 384

Linux

Devian y Mandriva
Ubuntu y RedHat

Respuesta correcta: Suse y RedHat


Pregunta 3:
Cuntos sistemas operativos se pueden instalar en un disco duro?

Uno
Dos
Tres
Tantos como me permita la capacidad del disco duro

Respuesta correcta: Tantos como me permita la capacidad del disco duro


Pregunta 4:
Un usuario Linux:

No necesita clave para entar al sistema y no pertenece a ningn grupo


Necesita nombre de usuario, clave personal y pertenecer a un grupo
genrico
Cada vez que quiero entrar al sistema tengo que pedir permiso al
administrador

Respuesta correcta: Necesita nombre de usuario, clave personal y pertenecer a un


grupo genrico
Pregunta 5:
Una LIVECD o CDVIVO es una "Instalacin Temporal de Linux" puesto que se
utilizarn una serie de recursos hardware de nuestro ordenador para simular una
Instalacin real y al final de la sesin se liberarn.

Verdadero

Falso
Respuesta correcta: Verdadero

Prctica: Consola
Este recurso es de tipo Prctica.
Tiene que conectarse a la plataforma para acceder a este recurso.

Plataforma de Teleformacin de IFES

Pgina 37 de 384

Linux

Evaluacin primera
Este recurso es de tipo Evaluacin.
Debe conectarse a la plataforma para realizar la evaluacin. Recuerde que las
evaluaciones son obligatorias ya que determinan la nota final.

Pgina 38 de 384

Linux

Linux

MDULO 2. INTERFAZ GRFICA DE


USUARIO
Introduccin
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Plataforma de Teleformacin de IFES

Pgina 39 de 384

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO

U.D.1. X-Window
Introduccin
X Window es el entorno grfico habitual de los sistemas Unix y Linux. El sistema X
Window se compone de dos partes principales: el servidor X y el programacliente para la gestin de las ventanas. El servidor X es el programa que se encarga
realmente de dibujar en la pantalla. Por el contrario, el gestor de ventanas como su
nombre indica es el encargado de crear las ventanas y gestionar su apariencia. Debido
a este modelo, la apariencia de las aplicaciones vara segn se use uno u otro gestor
de ventanas.
Al instalar Linux, el sistema puede preguntarte si deseas arrancar Linux en modo
texto o en modo grfico. Si una vez iniciado Linux te encuentras con una pantalla con
mltiples ventanas, colores o un cursor que slo se mueve con el ratn, ests usando
X. Si tu pantalla contiene caracteres blancos sobre fondo negro no ests usando X sino
el modo texto. A continuacin veremos como iniciar sesin en el modo grfico desde el
modo texto. Nos situamos en una caso genrico y no en el escenario del LiveCD
de Ubuntu puesto que en este ltimo caso X-Window se ejecuta automticamente
al arrancar el CD.

1.1. Ejecucin y salida del sistema de ventanas X

1.1.1. Ejecucin de X
Cuando X no arranque de forma automtica durante el ingreso en el sistema, es
posible arrancarlo desde la lnea de comandos del intrprete en modo texto. Hay dos
comandos que arrancan X, bien "startx" o bien "xinit". Debes intentar "startx" primero.
Si el intrprete de comandos se queja de que ese comando no existe, entonces prueba
con "xinit" a ver si arranca X de ese modo. Si no funciona ninguno de los comandos
anteriores, puede que no tengas el servidor de ventanas X instalado en tu sistema.
Si el comando se ejecuta pero regresa al intrprete en modo texto tras un rato, X
est instalado pero no ha sido configurado todava. En ese caso debes consultar la
documentacin que acompaaba tu distribucin en lo referente a como configurar X
y comprobar si el hardware de tu mquina es soportado por la distribucin. Ubuntu
es un buen aliado porque crea un fichero de configuracin despus de la deteccin

Pgina 40 de 384

Linux

automtica de hardware. Este fichero te puede servir para despus de instalar otras
distribuciones de Linux, configurarlas. En el caso de X los ficheros de configuracin se
encuentran en el directorio /etc/X11 ; en el directorio /etc, por cierto, es donde residen
este tipo de ficheros de configuracin de tantas otras aplicaciones.

1.1.2. Salida de X
Lo ms habitual es que tu gestor de ventanas controle la ejecucin de X. En ese caso,
debers salir de X usando un men. Desde el botn rojo de apagado Sistema, en el
escritorio GNOME que trae Ubuntu, y desde el botn K en el escritorio KDE de otras
distribuciones (aunque existe una versin denominada Kubuntu que es un Ubuntu con
Entorno de escritorio KDE).
Si X arranc automticamente tras tu ingreso en el sistema, este mtodo
probablemente te sacar de l.
Adems desde X podemos visitar/utilizar una serie de terminales en modo texto aunque
nuestra distribucin haya arrancado por defecto el entorno grfico. No nos referimos
al terminal que utilizamos anteriormente, si no a un entorno de texto real que ocupa
toda la pantalla. cmo? pulsando Ctrl+Alt+F1 (o F2, F3, ...) Si pulsamos Ctrl+Alt+F7
volvemos al entorno grfico. De este modo podemos estar realizando diferentes tareas
grficas o no simultneamente.

1.2. Para qu sirve el sistema de ventanas X?


El Sistema de Ventanas X es un mtodo de trabajo grfico y distribuido (te suena
esto, verdad? decamos anteriormente que distribuido significa que se puede ejecutar
en varios ordenadores simultneamente). Ha sido desarrollado principalmente en el
MIT (Instituto Tecnolgico de Massachusetts) pero actualmente est a cargo de un
consorcio de fabricantes, conocido por el inquietante nombre de "El Consorcio X"
y es mantenido tambin por ellos. El Sistema de Ventanas X tiene revisiones cada
pocos aos, conocidas como lanzamientos. Las sucesivas revisiones tienen una
nomenclatura del tipo X11R6, que significa sexto lanzamiento de la versin 11. El
numero 11 indica la versin oficial, pero no ha habido cambios en los ltimos aos y
tampoco hay planes para cambiarla en un futuro prximo.
Al ser cliente y servidor de programas diferentes, es posible ejecutar cada uno en
mquinas completamente diferentes. Adems de constituir un mtodo estndar para
aplicaciones grficas, es posible ejecutar una aplicacin grfica en una mquina remota

Plataforma de Teleformacin de IFES

Pgina 41 de 384

-incluso en la otra punta del mundo si quieres- y que los resultados aparezcan en la
estacin de trabajo que tienes enfrente de t.
X es el encargado de visualizar la informacin grfica y es totalmente independiente
del sistema operativo. El servidor X provee servicios para acceder a la pantalla,
teclado y ratn, mientras que los clientes son las aplicaciones que utilizan
estos servicios para interactuar con el usuario. De este modo, como decamos,
mientras el servidor se ejecuta de manera local, las aplicaciones pueden ejecutarse
remotamente en otras mquinas, proporcionando as el concepto de transparencia de
red.
Un segundo concepto con el que sera conveniente familiarizarse es el de "gestor de
ventanas" (en ingls, Window Manager). El gestor de ventanas es un cliente especial
que le dice al servidor en qu posicin deben colocarse las diferentes ventanas y
permite al usuario moverlas. El servidor, por s mismo, no interacciona con el usuario.
El gestor de ventanas s, se tratara de un medio para aprovechar las funcionalidades
que provee el servidor X en la mquina del usuario a travs de un determinado entorno
de trabajo o entorno de escritorio asociado a l.
Y aqu, finalmente, se hace necesario conocer qu es un "entorno de escritorio" (en
ingls, Desktop Environment). Es un conjunto de software que ofrece al usuario de
un ordenador un ambiente amigable y cmodo. En general cada entorno de escritorio
se distingue por su aspecto y comportamiento particulares, aunque algunos tienden
a imitar caractersticas de escritorios ya existentes. El primer entorno moderno de
escritorio que se comercializ fue desarrollado por Apple en los aos 80, actualmente
el entorno ms conocido es el ofrecido por la familia Windows, aunque existen otros
como los de Macintosh y KDE GNOME para Linux que ya hemos mencionado y
estudiaremos con ms detalle.
Una diferencia fundamental entre el sistema de ventanas Windows y el de Linux es que
el segundo sencillamente permite la libre eleccin del gestor de ventanas y el entorno
de escritorio asociados a l y que resultan ms adecuados para los gustos del usuario,
mientras que el primero impone uno estndar.

1.3. Qu es esto que hay en mi pantalla?


Al arrancar X, varios programas son ejecutados. Primero, arranca el servidor. Luego,
generalmente arrancan varios clientes. Es bastante probable que entre los clientes se
encuentre un gestor de ventanas, bien fvwm o twm, un intrprete de comandos, xterm,
y un reloj, xclock.

Pgina 42 de 384

Linux

1.3.1. XClock
A continuacin adelantaremos algn concepto del apartado de Administracin Bsica a
modo de aperitivo...
Empezaremos por xclock: funciona exactamente como se puede esperar. Marca los
segundos, minutos y horas en una ventana pequea. Ni usar los botones del ratn, ni
escribir en la ventana xclock produce efecto alguno, eso es todo lo que hace. O quiz
no? En realidad hay varias opciones diferentes que permiten hacer que el programa
se comporte de modos diferentes: si abrimos un xterm (un terminal de texto dentro del
entorno grfico, en el siguiente apartado se explica con detalle) podramos lanzar el
comando xclock con una serie de parmetros siguiendo la sintaxis...
xclock [-digital] [-analog] [-update segundos] [-hands color]
As, por ejemplo, escribir "xclock -digital" y pulsar Intro, crea un reloj digital. "xclock update 1" hace que el segundero se mueva cada segundo y "xclock -update 5" hace
que se mueva cada cinco segundos.
Para obtener ms informacin sobre las opciones de xclock puede consultar la pgina
del manual correspondiente, escribiendo sobre el terminal "man xclock".

1.3.2. Xterm o Terminal


Como hemos ya introducido, la ventana que muestra el "prompt" (solicitud de comando)
del intrprete de comandos (en l podrs ver algo parecido a /home/fulanito$) es
controlada por un programa llamado xterm. A primera vista, no parece que haga nada,
pero realmente hace muchsimo trabajo. xterm emula una terminal de forma que las
aplicaciones de modo texto de Linux funcionen correctamente. Tambin mantiene
en memoria informacin, de forma que se pueden consultar comandos usados
previamente y relanzarlos.
Para poder escribir en la xterm, generalmente es necesario mover el cursor (que
posiblemente aparece en forma de "X" o de flecha) al interior de la ventana xterm. De
todos modos este comportamiento es dependiente del gestor de ventanas.
Uno de los modos en los que se puede arrancar un programa bajo X es a travs
de una xterm, escribiendo el nombre el programa ejecutable y pulsando Intro para
lanzarlo. Para terminar un programa de X que se ejecuta en primer plano, visiblemente,
podemos escribir "xkill", situar la cruz sobre la ventana que queremos "matar", hacer

Plataforma de Teleformacin de IFES

Pgina 43 de 384

click y el programa se interrumpir veloz y definitivamente. Ms rpido y efectivo que el


Administrador de tareas (Ctrl+Alt+Supr) de Windows.

1.4. Gestores de ventanas


Bajo Linux, los gestores de ventanas ms comunes son dos (KDE y GNOME, no). El
primero se llama twm, que viene de "Tab Window Manager". Es un programa mayor
que el segundo, fvwm. (fvwm viene de "Feeble Virtual Window Manager"). Ambos
gestores de ventanas son altamente configurables lo cual impide dar instrucciones
especficas sobre qu teclas usar para hacer algo en particular.
En los puntos siguientes se abordan una serie de conceptos que pueden parecer
evitables para un usuario convencional. Sin embargo, es recomendable manejarlos,
puesto que no olvidemos que el entorno grfico en Linux es distribuido. Es decir, que
al poder ejecutar en mquinas remotas ventanas podemos tener la necesidad definir
una serie de parmetros para que el efecto en la mquina remota sea exactamente el
deseado. Por ello, hablaremos de geometra, foco y movilidad de ventanas, entre otras
cosas.

1.4.1. Cmo se crean nuevas ventanas?


Hay tres tipos de cosas que un gestor de ventanas puede hacer cuando se crea una
nueva ventana. Es posible configurar el gestor de ventanas de manera que aparezca la
forma de la ventana, permitindote colocarla en la posicin que prefieras en la pantalla.
Este modo se llama colocacin manual y es el ms directo y habitual.
A veces es posible que el gestor de ventanas las coloque por s mismo. Se trata de la
colocacin aleatoria.
Finalmente, la aplicacin te puede preguntar por el lugar preciso en el que quieres que
se site. Tambin el gestor de ventanas puede configurarse de forma que siempre
site las ventanas de ciertas aplicaciones en lugares fijos. (As por ejemplo, se puede
especificar que xclock siempre aparezca en la esquina superior derecha de la pantalla.)
Como ves, son detalles muy particulares sobre la forma en que las ventanas aparecen
en tu escritorio que pueden parecer innecesarios, pero para eso est siempre la
posibilidad de dejar hacer al ordenador. Lo importante es que cuando realmente
queramos hacer nosotros algo especial, el ordenador (el sistema operativo) tambin
nos deje hacerlo. Y en algunos usos profesionales (y no tanto) de la informtica esto es
fundamental.

Pgina 44 de 384

Linux

1.4.2. Foco
El gestor de ventanas controla otras cosas importantes. Lo que probablemente
te interesa ms es el foco. El foco del servidor determina qu ventana recibe
los caracteres introducidos mediante el teclado. Generalmente, en X, el foco es
determinado por la posicin del cursor del ratn. Si mueves el cursor del ratn dentro
de una ventana xterm, esa xterm recibe los caracteres tecleados. Se trata de un
comportamiento diferente al de otros sistemas de ventanas como, Windows de
Microsoft, OS/2, o Macintosh, donde debes pinchar con el ratn en una ventana
para que adquiera el foco. Generalmente bajo X, si el cursor del ratn se sale de una
ventana, se pierde el foco y te resultar imposible escribir en ella.
Debes notar, sin embargo, que es posible configurar los gestores de ventanas (tanto
twm como fvwm) de forma que para cambiar el foco necesites pinchar la ventana
correspondiente, y pinchar fuera para desenfocarla, de forma que se comporten igual
que Windows de Microsoft. De nuevo el poder hacer/dejar hacer.
Aqu puede ser necesario recordar que el comportamiento de los gestores de ventanas
en Linux es, por defecto y de un modo general, el que tiene Windows. Esto es as
porque la comunidad de desarrollo de Linux es consciente de que una gran cantidad de
usuarios de Linux ha sido educado dentro del estndar dominante y estn habituados a
un uso determinado del entorno grfico. Con todo y como ya hemos dicho, Linux ofrece
en muchos casos opciones de configuracin adicionales para quienes quieren cambiar
de hbitos. Seguimos.

1.4.3. Moviendo ventanas


Otro aspecto de X que es altamente configurable es el mtodo para mover ventanas.
Se pueden tener, por ejemplo, configurados varios mtodos para mover ventanas. El
ms obvio es mover el cursor del ratn sobre la barra del ttulo y arrastrar la ventana
mientras mantienes pulsado el botn izquierdo.
Otra forma de mover ventanas puede ser manteniendo una tecla pulsada mientras
mueves el ratn. Es decir, si mantengo pulsada la tecla -digamos- Alt y muevo el cursor
sobre una ventana, puedo tambin arrastrarla.

Plataforma de Teleformacin de IFES

Pgina 45 de 384

1.4.4. Profundidad
Dado que las ventanas pueden solaparse en X, necesitamos el concepto de
profundidad. A pesar de que tanto las ventanas como la pantalla son bidimensionales,
unas ventanas pueden estar delante de otras, de forma que cubren total o parcialmente
aquella situada detrs, como en Windows.

1.4.5. Iconizar
Existen otras operaciones que pueden tapar ventanas o hacerlas desaparecer
completamente. La primera es la "iconizacin". Dependiendo del gestor de ventanas
que use, este proceso puede realizarse de varias formas. Con twm, muchas personas

Pgina 46 de 384

Linux

configuran un gestor de iconos. Se trata de una ventana especial que contiene una
lista con las dems ventanas en uso en la pantalla. Pinchando con el ratn en uno de
los nombres (o, dependiendo de la configuracin en uno de los botones) la ventana
desaparece: es iconizada. La ventana est an activa, pero no puede verse. Pinchando
otra vez en el gestor de iconos, la ventana vuelve a aparecer en la pantalla.
Se trata de algo muy til. Se podra, por ejemplo tener xterm remotas en diferentes
mquinas que uses ocasionalmente al mismo tiempo. Dado, sin embargo, que slo las
usas raramente, puedes mantenerlas iconizadas mientras trabajas en otras tareas. El
nico problema es que resulta fcil "perder" alguna ventana.

1.4.6. Variando el tamao


Existen diversos mtodos para variar el tamao de las ventanas bajo X. De nuevo, esto
depende de tu gestor de ventanas y de cmo haya sido configurado. El mtodo al que
estn acostumbrados los usuarios de Windows de Microsoft consiste en pinchar en el
borde de la ventana y arrastrarlo. Del mismo modo podrs hacerlo en Linux.
Otra forma es crear un botn de "variacin de tamao" en la barra del ttulo. Para
usarlo, pinche con el botn izquierdo del ratn en l y mantenindolo presionado,
muvalo fuera de la ventana para variar el tamao. Para fijar el nuevo tamao basta
soltar el botn del ratn.

1.4.7. Maximizacin
La mayora de los gestores de ventanas soportan maximizacin. En twm, por ejemplo,
puedes maximizar la altura de una ventana, su ancho o ambos a la vez. Aunque twm
llama a este proceso "zooming" podemos usar mejor maximizacin. Las aplicaciones
pueden responder de modo diferente a un cambio de tamao. (Por ejemplo, xterm no
cambia el tamao de letra, pero aumenta el espacio de trabajo.)

1.4.8. Mens
Los gestores de ventanas tambin proporcionan al usuario un sistema de mens para
realizar tareas de forma rpida una y otra vez. Por ejemplo, podras tener una opcin
que ejecute una aplicacin de forma automtica. De ese modo no tendras que ejecutar
el comando dentro de una xterm, esto es especialmente bueno si no hay ninguna xterm
ejecutndose en la que se pueda escribir para ejecutar un programa nuevo.

Plataforma de Teleformacin de IFES

Pgina 47 de 384

De forma general, se puede acceder a los mens pinchando en la ventana raz, que es
una ventana inmvil que siempre est debajo de las dems y ocupa toda la pantalla. Al
igual que en Windows su apariencia es configurable. Si quieres probar a ver un men,
pincha cualquier botn del ratn y mantenlo sobre la ventana raz. Aparecer un men.
Para seleccionar una opcin, manteniendo presionado el botn, mueve el ratn hasta
marcar la opcin deseada. Entonces suelta el botn. Seguramente todo esto te suena
bastante, ahora slo tienes que explorar las opciones de los mens.

1.5. Atributos X
Hay muchos programas que usan X. Algunos, como Emacs (un editor de texto),
puede ejecutarse tanto en modo texto como en una ventana X que l mismo crea
automticamente. Pero en general, la mayora de los programas para X slo funcionan
bajo X. (esto quiere decir que no lo hacen en modo texto pero puede existir, sin
embargo una versin del programa para otros SO como Windows).

1.5.1. Geometra
Existe una serie de rasgos que son comunes a todos los programas que se ejecutan
bajo X. En X el concepto de geometra engloba el lugar y el tamao de la ventana.
La geometra de una ventana tiene cuatro componentes, son:

La dimensin horizontal, generalmente medida en pixels. (Un pixel es la


unidad ms pequea que puede colorearse y representarse en la pantalla.
Muchas configuraciones X en PCs basados en un procesador Intel tienen
una resolucin de 1024 pixels horizontalmente por 768 pixels verticalmente.)
Algunas aplicaciones como xterm o Emacs, miden su tamao, sin embargo,
en caracteres (por ejemplo, ochenta caracteres por lnea.)

La dimensin vertical, tambin medida en pixels generalmente. Al igual que


antes, en algunos casos se puede medir en lneas.

La distancia horizontal a uno de los bordes de la pantalla. Por ejemplo, +35


significa a treinta y cinco pixels desde la izquierda. Sin embargo, -50 significa
que el extremo derecho de la ventana est a cincuenta pixels del borde
derecho de la pantalla. Generalmente, no es posible lanzar una ventana
fuera de la pantalla, aunque si se puede mover fuera. (La principal excepcin
es cuando la ventana es demasiado grande.)

Pgina 48 de 384

Linux

La distancia vertical desde la parte superior o inferior de la pantalla; la


distancia se mide desde la parte superior si es positiva o desde la inferior si
es negativa.

1.5.2. Presentacin
Toda aplicacin X tiene asociada una presentacin. Esta determina cul es la pantalla
controlada por el servidor X. La presentacin est formada por tres elementos:

El nombre de la mquina en la que se ejecuta el servidor. En el caso de


sistemas Linux aislados, el nombre de la mquina que ejecuta el servidor
coincide con la que ejecutan los clientes. En ese caso se puede omitir el
nombre por completo.

El nmero del servidor de dicha mquina que debe responder a las


peticiones de los clientes. Dado que una mquina puede estar corriendo
diferentes servidores a la vez (es algo improbable pero posible en mquinas
Linux) cada uno tiene que tener un nmero propio.

El nmero del monitor. X permite que un servidor controle ms de un


monitor a la vez. Por ejemplo, puede que alguien quiera tener ms espacio,
de forma que use dos monitores a la vez. Para evitar que el rendimiento de
la mquina sea muy malo, en vez de tener dos servidores, hacen que sea el
mismo servidor el que controle las dos mquinas.

1.6. Caractersticas comunes


A pesar de que X es una interfaz grfica de usuario, se trata de una interfaz muy
desequilibrada. Resulta imposible predecir cmo va a comportarse cualquier elemento
del sistema porque se pueden reconfigurar, cambiar o incluso sustituir muy fcilmente.
Eso significa que es muy difcil explicar cmo se han de usar los distintos elementos de
la interfaz. Una de las razones que ya conocemos es la posibilidad de utilizar diferentes
gestores de ventanas que a su vez son altamente configurables.
Otra explicacin para el desequilibrio de la interfaz es que las aplicaciones X se pueden
construir mediante "conjuntos de chismes". La distribucin X estndar incluye los
"widgets Athena" desarrollados en el MIT. Las aplicaciones gratuitas suelen hacer
uso de este conjunto. Tienen la desventaja de que su aspecto no es particularmente
atrayente y resultan algo ms difciles de usar en un programa que los otros.

Plataforma de Teleformacin de IFES

Pgina 49 de 384

Otro conjunto de widget popular es Motif. Motif es un conjunto no gratuito similar a la


interfaz de usuario usada por Windows de Microsoft. Muchas aplicaciones comerciales
as como algunas gratuitas usan el conjunto de widget Motif. El popular Navegador de
Internet Netscape, por ejemplo, usa Motif.
Algunos de aquellos widgets o chismes que puedes encontrar ms habitualmente son
Botones, Barras de men, Barras de desplazamiento. Su uso y apariencia cuando no
es exactamente el mismo que en otros escritorios es muy intuitivo.

Autoevaluacin: X-Window
Unas preguntas para ver si te has ledo la leccin...
Pregunta 1:
El sistema X Window se compone de dos partes principales: el servidor X y el
programa-cliente para la gestin de las ventanas.

Verdadero

Falso
Respuesta correcta: Verdadero
Pregunta 2:
Quien ha sido desarrollado principal del sistema de ventanas X?
Respuesta correcta: MIT
Pregunta 3:
Cul de estas palabras se corresponde con un gestor de ventanas?

GNU
KNOPPIX
KDE
GMOMO

Respuesta correcta: KDE


Pregunta 4:
Xterm o terminal

Es donde terminan los programas de linux


Es un emulador de terminal para el sistema de ventanas X windows

Pgina 50 de 384

Linux

Es un juego que proporciona el escritorio

Respuesta correcta: Es un emulador de terminal para el sistema de ventanas X


windows

Plataforma de Teleformacin de IFES

Pgina 51 de 384

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO

U.D.2. El entorno de escritorio

Pgina 52 de 384

Linux

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO / U.D.2. El entorno de


escritorio

2.1. GNOME
Introduccin
En la actualidad, GNOME es uno de los dos escritorios ms utilizados en los
entornos GNU/Linux, y el que vamos a encontrar por defecto cuando probemos el
CD de Ubuntu. El otro escritorio de referencia es KDE y entre ambos mantienen
una sana rivalidad. XFce es el tercer escritorio libre ms popular, siendo generalmente
utilizado en sistemas que requieren pocos recursos de memoria.
GNOME rene a cientos de colaboradores voluntarios y profesionales repartidos en
varios subproyectos. Cuando hablamos de GNOME estamos hablando de:

Un escritorio grfico con todas las funciones bsicas para administrar un


ordenador y lanzar aplicaciones.

Una coleccin de aplicaciones de oficina, Internet, multimedia, diseo, etc,


plenamente integradas al escritorio. Su objetivo es cubrir las necesidades
bsicas de la mayora de usuarios.

Un conjunto de bibliotecas para el desarrollo de aplicaciones grficas


integradas a GNOME pero compatibles tambin con otros escritorios.

Una amplia comunidad que se comunica a travs de webs, listas de correo,


canales de chat y encuentros presenciales en diversos pases.

El smbolo que une a todos los simpatizantes de GNOME es un pie entre simio y
humano, que primero fue derecho pero luego cambi a ser izquierdo, estilizado y con
forma de G.

Plataforma de Teleformacin de IFES

Pgina 53 de 384

Una vez que hemos iniciado el ordenador y nos hemos identificado, GNOME empieza
a tomar el control de la pantalla. Tras unos instantes de carga aparece nuestro
escritorio con su imagen de fondo, iconos y paneles de acceso a los mens y nuestras
aplicaciones favoritas. A partir de ah podemos empezar a trabajar con nuestro ratn y
teclado.
GNOME apuesta por el minimalismo y la nitidez. Los escritorios que ofrecen por
defecto las distribuciones GNU/Linux basadas en GNOME acostumbran a ser simples,
descargados, casi vacos. Detrs de esta calma visual se encuentra un potente y
latente entorno grfico. Hay quien prefiere mantener esta simplicidad incorporando
slo pequeas personalizaciones (una foto favorita de fondo, algunas lanzaderas
a las aplicaciones ms utilizadas y poco ms). Hay en cambio quien se siente ms
incentivado por aplicar el principio del tuning a su escritorio sobrecargndolo de
indicadores en tiempo real, pequeas aplicaciones (applets) que ofrecen desde
previsiones meteorolgicas a teletipos burstiles, colecciones sonoras y dems objetos
grficos repartidos por una o varias pantallas (sesiones).
Es decir, la vieja y conocida dicotoma entre lo clsico y lo barroco reproducida esta vez
en la decoracin y uso del escritorio. Ms adelante veremos cmo personalizar nuestro
escritorio.
Aparte de los elementos que tenemos a la vista en la pantalla inicial, GNOME incluye
toda una serie de funcionalidades que conforman la arquitectura del escritorio. Desde
un punto de vista del usuario estas funcionalidades se podran organizar as:

Pgina 54 de 384

Linux

Documentos: deteccin de tipos de documento, inicio de la aplicacin


apropiada para acceder y trabajar con cada uno, organizacin en rboles
de directorios, bsqueda de ficheros, gestin de permisos de lectura y
escritura...

Ventanas: comportamiento y aspecto de las ventanas, funciones como


copiar y pegar, arrastrar y soltar...

Multimedia: integracin de audio y vdeo, capacidad de reproduccin y


grabacin en varios formatos.

Impresoras: impresin de documentos e integracin con impresoras.

Idiomas: disponibilidad y uso del escritorio en idiomas diferentes al ingls.

Preferencias: gestin y almacenamiento de nuestra configuracin deseada


para las mltiples opciones del escritorio.

Encriptacin: gestin de claves para las comunicaciones firmadas


electrnicamente y encriptadas.

Integracin: para que todo lo anterior fluya de forma natural es preciso


intercomunicar de forma eficiente mltiples procesos y dilogos entre
aplicaciones.

La combinacin de estas funcionalidades da como resultado un escritorio que,


idealmente, pasa desapercibido para ceder el protagonismo a las aplicaciones con las
que trabajamos.
El proyecto GNOME genera nuevas versiones de su escritorio con una periodicidad
semestral, que es la que indirectamente ha definido la misma periodicidad que
Ubuntu se marca para lanzar las nuevas versiones de su distribucin. El sistema de
numeracin de versiones sigue la misma poltica que la utilizada por los desarrolladores
del kernel Linux, utilizando nmeros pares para las versiones estables e impares para
las versiones de desarrollo.
Es posible que las impresiones de pantalla que encontrars a continuacin no se
correspondan exactamente con la versin de GNOME que incluye el CD de Ubuntu
pero desde luego que te va a permitir hacerte una idea bastante ilustrativa de qu
es el entorno de escritorio GNOME, conocer su apariencia, sus herramientas de
configuracin y otras utilidades.

Plataforma de Teleformacin de IFES

Pgina 55 de 384

2.1.1. Aplicaciones con G de GTK+


El proyecto GNOME abarca tambin el desarrollo de aplicaciones integradas al
escritorio.
Algunas son pequeas aplicaciones que aaden alguna funcionalidad concreta
como navegar por el disco duro, realizar capturas de pantalla u ofrecer un calendario
perpetuo.
Otras son programas en toda regla, entre los que destacan por populares:

AbiWord: procesador de texto.


Epiphany: navegador web.
Evolution: correo electrnico, agenda de contactos y actividades.
Gaim: mensajera instantnea y chat.
gedit: editor de texto.
GIMP: edicin grfica avanzada.
Gnumeric: hoja de clculo.
GNOMEMeeting: telefona y voz sobre IP.
Inkscape: diseo grfico vectorial.
Rythmbox: reproductor musical y gestor de canciones.
Totem: reproductor multimedia.
OpenOffice: Suite ofimtica alternativa a Microsoft Office

Hay muchas ms aplicaciones en GNOMEFiles, aunque no todas son libres.


Lo que tienen en comn todos estos programas es el uso de la coleccin de bibliotecas
GTK+. Esta herramienta permite a programadores de varios lenguajes (C, C++,
Perl, Ruby, Java, Python...) crear aplicaciones perfectamente integradas al escritorio
GNOME.
Dichas aplicaciones son operativas en otros escritorios basados en X como KDE y
pueden ser portadas incluso a MS Windows. Programas como GIMP o Gaim disponen
de versiones para este sistema operativo, representando una buena puerta secundaria
de acceso al software libre y al entorno GNOME.
GTK era la coleccin de bibliotecas utilizada por The GIMP ya antes de nacer GNOME,
quien lo adopt como su base de programacin grfica. De ah sus siglas, que
responden a GIMP Toolkit.

Pgina 56 de 384

Linux

2.1.2. Explorando el espacio


Buena parte del trabajo que realizamos con el ordenador tiene como resultado final la
produccin de un archivo que guardamos en una carpeta. Por este elemental motivo
tener un cierto dominio en el manejo de archivos y carpetas nos va a ahorrar mucho
tiempo, bastantes malestares y algn que otro serio quebradero de cabeza.
Sin entrar en definiciones muy tcnicas, un archivo es un recipiente de datos y una
carpeta es un recipiente de archivos. De la misma forma que una botella es un
recipiente de lquidos y una cava es un recipiente de botellas. Lo que despista en un
ordenador es la diversidad de botellas y cmaras de almacenamiento que uno se
puede encontrar.
En este apartado vamos a empezar a pasearnos por los principales rincones del disco
duro para entender dnde est cada cosa y cmo moverse entre espacios. Luego
vamos a saltar a otros dispositivos de memoria mediante los cuales podemos gestionar
archivos, como los CD-Rom y las memorias Flash.
Sabido esto ya podremos pasar con tranquilidad a los siguientes apartados, donde
veremos el manejo habitual de archivos y cmo personalizar todo este espacio virtual
que estamos conociendo.

2.1.3. Del rbol con races al espacio con lugares


Los espacios de un ordenador se han representado tradicionalmente con una
estructura de rbol, partiendo de un directorio raz que se divide ramificndose
en subdirectorios progresivos hasta llegar hasta las ramas ms minsculas
y recnditas. Incluso los dispositivos externos de memoria que introducimos
en el ordenador (disquetes, CD-Rom, etc) se montan en esta estructura de
rbol convirtindose a efectos prcticos en nuevos directorios con sus posibles
subdirectorios.
Esta abstraccin dominante ha creado el hbito de navegar verticalmente por carpetas
y subcarpetas como mnimo en dos generaciones de usuarios. Pero tal abstraccin
del rbol de directorios est siendo remplazada por la abstraccin ms horizontal y,
digamos, semntica de la navegacin espacial. Horizontal porque se tiende a cortar
los niveles de profundidad de los directorios, ofreciendo prados de arbustos en vez
de altos abetos. Semntica porque la abstraccin de la navegacin espacial viene
acompaada de sistemas de bsqueda de archivos basados ms en sus contenidos
que en su ubicacin en una rama u otra del directorio.

Plataforma de Teleformacin de IFES

Pgina 57 de 384

Esta transicin de un modelo a otro, que se est produciendo justo en estos aos,
es comparable al paso que las bibliotecas han ido haciendo de las fichas de cartn
ordenadas en ficheros de madera a la ms potente estructuracin que permiten las
bases de datos informatizadas e interconectadas. A continuacin explicamos cmo
movernos cmodamente en el modelo de rboles preparndonos ya para el modelo de
espacios.
El escritorio en su sentido ms estricto es la pantalla en la que aterrizamos cuando la
puesta en marcha del ordenador se ha completado, y la que permanece siempre de
fondo. En una metfora del escritorio esta pantalla de fondo viene a corresponderse
a la superficie de una mesa de trabajo, encima de la cual se van dejando los papeles,
bolgrafos, foto de familia y dems utensilios de trabajo.
El escritorio constituye el punto de partida bsico de casi todos nuestros viajes y
acciones por y con el ordenador. Vamos a echar un vistazo a los elementos que nos
ofrece el escritorio en nuestra primera visita:

Paneles: las barras grises enganchadas en la parte superior e inferior de


la pantalla. Sirven para albergar enlaces a los programas que utilizamos
habitualmente (ej: navegador de Internet) y miniaplicaciones (ej: control
del volumen). Ms adelante repasamos los elementos que pueblan ambos
paneles.

Fondo de escritorio: el gran espacio comprendido entre los dos paneles,


ilustrado con una corporativa imagen y con iconos que representan accesos
directos a lugares de ordenador y aplicaciones preferidas.

Hay quien prefiere dejar este fondo de escritorio tan limpio y ordenado como suele
estar su mesa de escritorio real, guardando todos los documentos y herramientas en
sus lugares correspondientes, fuera de la vista. Hay quien no duda en ir dejando a lo
largo de la pantalla documentos, imgenes, canciones, lanzadores de programas y
casi todo lo que se van encontrando por el camino, que algn da, piensan, estudiarn
con ms detenimiento (como sucede con sus mesas de trabajo reales, en muchos
casos). Un equilibrio entre ambas opciones puede ser el ir ubicando en un extremo de
la pantalla los iconos relacionados con trabajo y en el otro extremo los relacionados con
ocio.

2.1.4. El panel superior


Veamos qu tenemos en la parte ms alta de la pantalla. De izquierda a derecha:

Pgina 58 de 384

Linux

1. El pie de GNOME y el men de Aplicaciones: el sendero ms corto hacia los


programas de escritorio que tenemos instalados en el ordenador. Estn organizados
por categoras: Internet, Oficina, Grficos, Sonido y vdeo... Posndose en el enlace
de una aplicacin se nos muestra una breve informacin adicional, y clicndolo el
programa se pone en marcha. Damos un repaso en profundidad a las aplicaciones
mostradas en este men en el captulo 6. Mil y un programas libres y gratuitos.
2. El men de Lugares: accesos rpidos a los principales espacios del ordenador.

La Carpeta personal contiene nuestros documentos. All creamos


subcarpetas para mantener ordenados nuestros archivos: carpeta Familia,
carpeta Curro, carpeta Facturas, carpeta Recetas... All se encuentran
tambin los archivos de preferencias generados automticamente por el
sistema y los programas, invisibles por defecto para no molestar. Ni los
vemos ni nos interesa verlos y menos tocarlos, a menos que sepamos qu
estamos haciendo. La Carpeta personal es una regin del ordenador en la
cual tenemos poderes casi absolutos, tambin para estropear cosas si no
vamos con cuidado. En ingls la Carpeta personal se denomina Home y este
anglicismo es utilizado con frecuencia en foros y entornos especializados.

El Escritorio es el espacio que ya hemos mencionado. A travs de este


enlace podemos navegar por las carpetas, archivos y lanzadores ubicados
all. A efectos de navegacin el Escritorio es en s una carpeta especial
dentro de nuestra Carpeta personal. En ingls a este Escritorio se le
denomina Desktop.

En Equipo podemos ver y acceder tanto al Sistema de archivos (la raz


y rbol entero al que hemos hecho referencia) como a los dispositivos de
memoria disponibles: disquetera, lector de CD/DVD, grabadora de CD... lo
que tenga el ordenador y haya sido reconocido por el sistema operativo.
Como veremos ms adelante, si conectamos dispositivos de memoria
removibles como por ejemplo una memoria Flash, un reproductor musical o
una cmara, tambin aparecen all.

Servidores de red: en el caso de que el ordenador est debidamente


conectado a una red local, podremos llegar desde aqu a las carpetas y
recursos de otros ordenadores a los que tengamos permisos para acceder.

Plataforma de Teleformacin de IFES

Pgina 59 de 384

Conectar con el servidor... nos permite establecer conexiones con


servidores y ordenadores remotos a travs de Internet.

Buscar archivos es una herramienta sencilla de bsqueda de archivos y


carpeta en base a sus ttulos.

Documentos recientes mantiene en memoria los ltimos documentos a los


que hemos accedido, sean del tipo que sean. Es til para encontrar archivos
a los que nos consta que accedimos hace poco.

3. El men de Sistema: contiene la configuracin de Preferencias, aplicaciones de


Administracin y dems opciones que analizamos con detalle ms adelante.
4. Iconos de acceso directo a aplicaciones.
5. Salida de la sesin: una puerta o un botn rojo para apagar el ordenador, entrar con
un usuario diferente y otras opciones ms especializadas que ya conocemos.
6. rea de notificacin: casi invisible por defecto, es un espacio donde algunas
aplicaciones latentes van informando sobre su actividad mediante iconos.
7. Controlador de volumen: pulsando con la tecla izquierda del ratn se puede
controlar el mster de forma sencilla. Pulsando con la tecla derecha se abren ms
opciones, entre ellas el control de volumen en estreo de todos los dispositivos
relacionados con sonido (altavoces externos, internos del ordenador, micrfonos...).
8. Fecha y hora: Pulsando con la tecla izquierda se despliega un calendario perpetuo.
Pulsando con la tecla derecha se ajusta el reloj y calendario, pudindolos sincronizar
con precisos servidores de medicin de tiempo va Internet para ir siempre a la hora.

2.1.5. El panel inferior


Si el panel superior nos ofrece sobretodo enlaces directos a las principales aplicaciones
y espacios del ordenador, el panel inferior engloba sobretodo enlaces a acciones que
nos permiten trabajar con ms agilidad sobre el escritorio. Veamos qu contiene:

1. Icono de Escritorio: su enlace aqu es til para acceder rpidamente con un slo
click a la superficie de nuestra mesa virtual cuando la tenemos llena de ventanas.
2. Lista de ventanas: muestra un resumen de las mltiples ventanas que vamos
abriendo. Pulsando una pestaa con la tecla izquierda pondremos su correspondiente

Pgina 60 de 384

Linux

ventana en foco (encima de las otras, a punto para que trabajemos sobre ella).
Pulsando esa misma pestaa con la tecla derecha podremos cerrar su correspondiente
ventana, moverla por la pantalla o a otras reas de trabajo.
3. reas de trabajo: funcionalidad muy utilizada por los usuarios avanzados de
GNOME y muy recomendada para quienes empiecen a hacer sus pinitos con ste o
cualquier otro escritorio libre. Consiste en ofrecer mltiples reas de trabajo sobre un
mismo escritorio, como si dispusiramos de ms monitores encima de nuestra mesa.
Por ejemplo, en el rea de trabajo 1 vamos abriendo las aplicaciones necesarias para
nuestro trabajo: lector de correo, navegador web, procesador de textos... Mientras,
en el rea 2 tenemos los programas relacionados con ocio: reproductor musical,
intercambio de archivos, etc. As, mientras estamos en el rea de trabajo los programas
ociosos no nos estorban, y viceversa. Las reas de trabajo son tiles tambin cuando
hay que tener muchas aplicaciones en marcha a la vez y se nos acaba la pantalla o se
nos agota el espacio para la vecina lista de ventanas en el panel.
4. Papelera: todos los archivos y directorios que borramos van por defecto a este
contenedor, a menos que expresamente los eliminemos por completo. Pulsando con
la tecla izquierda accedemos a sus contenidos. Pulsando con la derecha podemos
vaciarla sin vuelta atrs.

2.1.6. Bsqueda de archivos


Si desde el escritorio y sus paneles no encontramos un salto al archivo o directorio que
buscamos, lo mejor es ir directamente al Buscador de Archivos que se encuentra en el
men de Lugares.

Plataforma de Teleformacin de IFES

Pgina 61 de 384

Si buscamos un archivo nico y sabemos su nombre exacto (ej: fulanito.jpg) slo


tenemos que introducirlo en el campo Contiene el texto: y Buscar. Si no es el caso,
disponemos de alternativas:

El campo El nombre contiene ofrece la posibilidad de utilizar comodines


"*" para flexibilizar y ampliar la bsqueda. Por ejemplo, fulanito.* buscar
archivos de cualquier tipo que se denominen "fulanito", ya sean fotos,
textos, canciones, vdeos... fulan*.jpg dara con documentos como
fulanito.jpg o fulanito_saludando.jpg, fulan*.* encontrara tambin
fulanito_por_soleares.ogg fulanito_chistoso.mpg, etc.

El campo Buscar en la carpeta ofrece por defecto la opcin Inicio,


equivalente a la ya comentada Carpeta personal. Esta es una buena opcin
para la mayora de bsquedas de nuestros documentos. Si la bsqueda es
demasiado amplia y arroja demasiados resultados podemos seleccionar
una subcarpeta ms cercana a la ubicacin del archivo que buscamos,
si la sabemos, con el objetivo de obtener menos resultados. Si estamos
buscando archivos o directorios que pueden estar ubicados en carpetas
personales compartidas de otros usuarios, deberemos subir un escaln: a la

Pgina 62 de 384

Linux

carpeta home. Si buscamos archivos generados por el sistema deberemos


subir hasta la raz del Sistema de archivos o alguna de sus subcarpetas si
sabemos dnde buscar.
Si pulsamos en Seleccionar ms opciones se nos abrirn ms campos:

El campo Contiene el texto ampla la bsqueda a los contenidos de los


documentos. Si buscamos una carta que escribimos a Felisa y recordamos
que pusimos su nombre, podemos filtrar la bsqueda para que slo muestre
los documentos que incluyan esa palabra. Ojo con utilizar esta opcin en
bsquedas muy amplias: puede ocupar a nuestro ordenador un buen rato.

El desplegable Opciones disponibles nos ofrece otras restricciones en la


bsqueda basadas en la fecha de modificacin del archivo, su tamao, su
autor...

Ms informacin pulsando en el botn de Ayuda de la propia aplicacin.

2.1.7. Llega la generacin Beagle: del rbol a la pradera


Vale la pena mencionar que el paradigma de bsqueda de informacin en nuestro
propio ordenador est cambiando de forma similar al modo en que cambiaron las
bsquedas por Internet. La causa de este cambio es la misma que caus el cambio en
Internet: el incremento exponencial del volumen y variedad de informacin a buscar.
En los primeros aos de la WWW, directorios como Yahoo! se hicieron populares
ofreciendo bsquedas basadas en una estructura de directorio, de rbol. Pero
el crecimiento de Internet prcticamente ha imposibilitado esta organizacin tan
estructurada, y las bsquedas se basan en la potencia de bases de datos, estadsticas
de comportamiento de usuarios, etc. Es el paradigma encabezado por el buscador
Google.
A pequea escala, algo similar sucede en nuestros ordenadores. Hoy cualquier
ordenador nuevo ofrece una capacidad de disco duro que hubiera estado reservada
slo a unas lites en los aos en que GNOME diseaba su Buscador de archivos.
Hoy da el usuario medio puede acumular en su ordenador un volumen de datos entre
fotografas, canciones, pelculas y software que hace una dcada sera ms bien
propio de una organizacin mediana. El buscador Beagle aprovecha una serie de
metadatos, datos que con los que se etiqueta la informacin almacenada en un
disco duro para realizar as consultas mejor dirigidas sin tener que recorrer los
directorios y sus ramificaciones uno por uno.

Plataforma de Teleformacin de IFES

Pgina 63 de 384

Es decir el futuro y ya presente de las bsquedas en internet, simbolizado por Google


ha llegado a nuestro propio ordenador y los dispositivos de memoria conectados a
l. Beagle es un motor de bsqueda de archivos para GNOME que est llamado a
reemplazar o como mnimo complementar el tradicional Buscador de archivos. Es
posible instalar Beagle sobre GNOME. De momento nos basta con conocer esa
posibilidad.

2.1.8. Dispositivos de memoria, del disquete a la cmara digital


Hasta ahora hemos visto cmo movernos por el interior de nuestro ordenador. Es decir,
por el sistema de archivos que tengamos montado sobre nuestro/s disco/s duro/s.
Pero adems podemos encontrarnos en la necesidad de acceder a un CD-Rom, una
memoria Flash, un disquete u otros dispositivos de memoria capaces de almacenar
archivos.
El procedimiento para acceder a los contenidos de estos medios es sencillo si se
realiza desde el escritorio:

Discos y disquetes: introducimos el medio en su correspondiente unidad,


ste ser reconocido por el sistema y aparecer su correspondiente icono en
nuestro escritorio. pulsamos el icono y accedemos a sus contenidos.

Memorias Flash (tambin llamadas o pendrives): conectamos el


dispositivo en el puerto USB, un mensaje aparece en pantalla notificndonos
que el nuevo dispositivo ha sido detectado, a continuacin se abre el
Administrador de archivos mostrndonos sus contenidos.

Reproductores musicales, Cmaras fotogrficas y dems dispositivos


generalmente accesibles por el puerto USB: conectar el dispositivo
apagado al puerto USB, encenderlo, un mensaje aparece en pantalla
notificndonos que el nuevo dispositivo ha sido detectado, a continuacin se
abre una aplicacin de gestin de canciones, fotografas o el tipo de archivos
detectados que nos invita a importar los contenidos al ordenador.

Si hemos llegado hasta aqu podremos llegar con toda probabilidad a cualquier rincn
de nuestro equipo informtico.

Pgina 64 de 384

Linux

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO / 2.1. GNOME / 2.1. GNOME

2.1.9. Creacin y gestin de archivos


Introduccin
En el anterior apartado hemos visto cmo movernos por nuestro ordenador clic a clic.
El objetivo de dicha movilidad es ponerse a trabajar con las aplicaciones y archivos.

Por lo que respecta a las aplicaciones, una vez encontradas (generalmente en el men
de Aplicaciones) slo nos queda ejecutarlas. Por defecto estas aplicaciones residen
fuera de las carpetas personales de los usuarios (fuera del directorio /home) y a menos
que sepamos lo que nos llevamos entre manos es mejor no tocarlas ni moverlas de sus
directorios residentes. Algunas de estas aplicaciones manejan datos que generamos
con ellas en archivos ocultos que s se encuentran en nuestra Carpeta personal pero
que, igualmente, es preferible no tocar si no es con sabidura en nuestros dedos.
Por tanto, vamos a centrarnos aqu en el manejo de archivos, tarea que s est
completamente en nuestras manos y s conviene saber ejercer aunque sea a nivel
elemental.

La maravillosa tecla derecha del ratn


Antes de proseguir es necesario dejar clara una cosa: con GNOME la tecla derecha
del ratn es tan til como la izquierda (y viceversa para los zurdos). Si la tecla
izquierda nos sirve para seleccionar elementos y activarlos, la derecha nos despliega
un Men contextual que ofrece las posibles acciones que podemos iniciar a partir del
elemento que estemos sealando con el puntero del ratn: un archivo, una aplicacin,
una carpeta, el fondo del escritorio, un elemento del panel...
Plataforma de Teleformacin de IFES

Pgina 65 de 384

La mayora de aplicaciones incluyen la funcionalidad de men contextual, por lo


que incluso trabajando con un navegador de Internet, un editor de imgenes, un
maquetador de documentos, etc, las vas ms rpidas y cmodas para desarrollar
acciones pasan generalmente por pulsar la tecla derecha del ratn.

Con el puntero encima de un archivo las opciones por defecto que podemos realizar
son:

Abrir con <nombre de aplicacin>, abre la aplicacin por defecto que


tengamos asignada para ese tipo de archivo, y adems con las otras
aplicaciones que el sistema sepa que pueden trabajar con l. Por ejemplo,
una imagen con formato PNG puede ser abierta con el visor de imgenes
gThumb, pero opcionalmente nos puede interesar abrirla con el navegador
Mozilla Firefox o el editor de imagen The Gimp. El men contextual ofrece

Pgina 66 de 384

Linux

todas estas opciones, y tambin nos permite aadir ms aplicaciones


relacionadas con archivos de esta extensin (en este caso .png) y decidir
cul es la que deseamos tener por defecto.

Cortar, permite seleccionar el archivo para ser borrado de ese directorio y


movido a otro lugar, mantenindolo en el portapapeles (clipboard en ingls).

Copiar, posibilita seleccionar el archivo para ser movido a otro lugar,


manteniendo una copia en la actual carpeta.

Pegar, es una opcin slo activa cuando tenemos un elemento copiado en el


portapapeles, si la seleccionamos el archivo cortado o copiado aterrizar en
la nueva carpeta que estemos sealando con el puntero.

Crear un enlace, genera un icono identificado como enlace gracias a una


flechita aadida que podemos ubicar en el escritorio o donde nos parezca
para crear un acceso directo a ese archivo.

Renombrar, se usa para modificar el nombre del archivo.

Mover a la papelera, para borrar el archivo pero mantenindolo en la


Papelera por si acaso debemos recurrir a l en un futuro.

Estirar icono, es una opcin disponible para los archivos y accesos directos
ubicados en el Escritorio y nos permite incrementar o disminuir el tamao del
icono respectivo, para tenerlo ms o menos a la vista y poder organizar el
espacio de nuestra pantalla inicial con ms flexibilidad.

Restablecer el tamao original del icono, nos permite dar vuelta atrs a la
anterior accin. Muy til si nos encontramos a las puertas del caos visual de
nuestro escritorio.

Crear archivador, se utiliza para generar un archivo comprimido (tar.gz,


zip...) con el material seleccionado.

Propiedades, abre el dilogo de opciones de configuracin del archivo que


analizamos ms adelante en este mismo apartado.

Muchas de estas acciones estn disponibles seleccionando mltiples archivos y


pulsando entonces la tecla derecha del ratn. Por ejemplo, si queremos crear un
archivo comprimido conteniendo varias imgenes slo tenemos que seleccionarlas,
darle a la techa derecha y pulsar en Crear archivador.

Plataforma de Teleformacin de IFES

Pgina 67 de 384

Podemos seleccionar varios elementos rodendolos mientras presionamos y


arrastramos el puntero del ratn o bien pulsando simultneamente el primer y ltimo
elemento de la seleccin con el puntero del ratn mientras mantenemos pulsada la
tecla Mayscula- Shift. Otra opcin de seleccin consiste en pulsar uno a uno los
elementos mientras mantenemos la tecla Ctrl pulsada. El primer sistema es ms
prctico cuando los elementos a seleccionar estn situados consecutivamente,
mientras que el segundo va mejor si los elementos estn dispersos por la carpeta o
escritorio. Ntese que slo es necesario pulsar una vez cada elemento, ya que el doble
clic est reservado para accionar el elemento, abriendo el archivo, la carpeta, etc.

Organizando nuestra Carpeta personal


Las acciones previamente descritas pueden aplicarse sobre nuestros archivos. Y para
crear stos o modificarlos, la va recomendada es abrir la aplicacin que deseemos
utilizar para obtener ese archivo (un procesador de textos, una hoja de clculo, una
grabadora de sonido...) que al final contendr aqullo que queremos crear.
Es muy posible que nuestra carpeta personal no tenga un solo fichero a la vista el da
de su estreno, y que en nuestro escritorio no haya ms que unos pocos enlaces a
carpetas y plicaciones seleccionadas de fbrica.
RECOMENDACIN: aprovechemos esta situacin de limpieza y silencio en nuestro
escritorio para empezar a organizarlo a nuestro gusto y uso. El peor y ms extendido
error a la hora de iniciar una nueva vida en un escritorio libre es empezar volcando todo
lo que tenamos en nuestro anterior escritorio, tal cual.
Para empezar, una buena idea es ubicar en el Escritorio slo aquellas carpetas que
queramos tener a la vista en el da a da. El resto mejor colgarlas directamente de la
Carpeta personal, para mantener as el Escritorio ms limpio.
Otro buen consejo es organizar nuestras carpetas por conceptos (trabajo, familia,
viajes, hacienda...) en vez de tipos de archivos (fotos, textos, vdeos, hojas de
clculo...). Es obvio que si tenemos una carpeta "msica" sus contenidos tendrn
mayor porcentaje de archivos sonoros (ogg, mp3, etc) que la carpeta "contabilidad",
pero eso no quita que en "msica" tengamos tambin videoclips, letras de canciones,
partituras, fotos de artistas y conciertos, etc.
Pero vamos, cada quien se organiza la casa a su gusto.
Una prctica recomendada cada vez ms extendida es la ya mencionada organizacin
horizontal de las carpetas, evitando mltiples niveles a la hora de crear subcarpetas
de subcarpetas de subcarpetas de... Aunque el administrador de archivos de GNOME

Pgina 68 de 384

Linux

se denomine Nautilus, la idea es no tener que ir navegando por las profundidades


de nuestra carpeta personal cual Capitn Nemo a lo largo de sus 20.000 leguas.
Si encontramos lo que buscamos en un par de saltos gracias a nuestra
organizacin semntica de carpetas, bien. Si no, mejor ir directos al Buscador de
archivos, que todo lo ve.
Una vez que tengamos creada una estructura bsica de carpetas podemos empezar a
poblarla, guardando nuevos archivos en ellas o moviendo all archivos que tengamos
en otras carpetas, discos, etc. Las acciones bsicas para realizar estas tareas se basan
en el conocido cortar (o copiar) y pegar. Estas acciones se pueden realizar mediante
tres vas:

1. Utilizando el men contextual que, como hemos indicado, se despliega


posando el puntero del ratn encima del archivo con el que deseemos
operar y pulsando la tecla derecha del ratn .

2. Arrastrando y soltando el icono del archivo que deseemos mover


o copiar, sujetndolo con la tecla izquierda del ratn desde su carpeta
de origen hasta la de destino, o desde/hasta el escritorio. Simplemente
arrastrando el icono movemos el archivo: desaparecer de su carpeta de
origen y aparecer en la de destino. Si adems mantenemos la tecla Ctrl
pulsada, copiaremos el archivo tenindolo en ambas carpetas. Ms opciones
disponibles utilizando la tecla del medio del ratn en vez de la izquierda.

3. Mediante combinaciones de teclas que forman casi parte del


vocabulario de muchos usuarios: Ctrl-x y Ctrl-c sirven para cortar y
copiar, respectivamente, una vez que hemos seleccionado el archivo
correspondiente. Ctrl-v pega el fichero cortado o copiado tras haber clicado
la superficie de la carpeta o escritorio de destino.

Los tres sistemas funcionan igualmente con mltiples archivos seleccionados,


permitiendo cortar. copiar, arrastrar y soltar/pegar varios elementos de una sola vez.

El Administrador de archivos
Casi todas las acciones que hemos estado describiendo se desarrollan encima del
Administrador de archivos (originalmente denominado Nautilus y a veces traducido
como Navegador de archivos). Si pulsamos al icono de Carpeta personal ubicado
en el escritorio, aparece el Administrador de archivos. Si seleccionamos cualquier
ubicacin en el men de Lugares, aparece tambin. De hecho el fondo del escritorio
est gestionado tambin desde el veterano compaero Nautilus.

Plataforma de Teleformacin de IFES

Pgina 69 de 384

Veamos qu informacin y funcionalidades nos aporta esta recurrida aplicacin. Aqu


tenemos:

1. Los contenidos de la carpeta ocupan la parte central de la ventana.


Los elementos seleccionados estn marcados con un color diferente.
Recordemos que podemos acceder a ellos clicndolos con la tecla izquierda
del ratn, abrir su men contextual con la tecla derecha, copiar o moverlos
arrastrndolos con el ratn, etc.

2. La barra principal nos ofrece las opciones bsicas de navegacin por las
carpetas.

3. El panel lateral nos muestra una lista de accesos directos a los Lugares
bsicos del sistema ms los que hayamos aadido con Marcadores.

4. La barra de direccin nos muestra cada nivel de profundidad en el rbol,


para movernos entre niveles de forma cmoda. Toma como referencia

Pgina 70 de 384

Linux

inicial nuestra Carpeta personal, ofreciendo la posibilidad de ascender


hasta el directorio raz pulsando a la flechita de la izquierda. Esta barra nos
permite tambin visualizar los elementos de la carpeta como iconos o lista,
incrementando o disminuyendo su tamao, lo que resulta til a la hora de
visualizar elementos en carpetas repletas.

5. La barra de estado nos muestra informacin adicional sobre el elemento


seleccionado.

6. La barra de men nos permite acceder a ms funcionalidades. Entre otras,


conviene citar los siguientes ejemplos:

En Archivo podemos conectar a servidores remotos va FTP, SSH,


WebDAV... Ms sobre este tema en el siguiente captulo 5. Conecta
(a) tu ordenador.

En Editar tenemos las Preferencias donde podemos poner a punto


la forma en que queremos que se comporte el Administrador,
permitindonos mltiples opciones de organizacin y presentacin
de la informacin.

En Ver podemos seleccionar la opcin para Mostrar los ficheros


ocultos que el sistema y las aplicaciones crean y manejan
automticamente (y en los que, insistimos, es mejor no husmear ni
tocar).

En Ir a tenemos una lista cronolgica de los ltimos Lugares por


los que hemos pasado, til para retroceder a una carpeta que
nos consta que visitamos hace poco y no recordemos dnde se
encuentra exactamente.

En Marcadores podemos aadir Lugares al panel lateral.


Simplemente hay que seleccionar Aadir un marcador cuando nos
encontremos en la carpeta que deseemos marcar.

Por ltimo, Ayuda ofrece un manual de esta herramienta para


quienes quieran profundizar en su uso.

Administracin de propiedades
Pulsando con la tecla derecha del ratn el icono de cualquier elemento del escritorio o
de una carpeta se desplegar su correspondiente men de contexto. Al final de este

Plataforma de Teleformacin de IFES

Pgina 71 de 384

men encontramos la opcin Propiedades, que nos permite saber casi todo lo que
se puede saber sobre el elemento seleccionado, as como realizar diversas tareas de
administracin relativas a dicho elemento.

Las opciones disponibles bajo las pestaas de Propiedades dependen del tipo de
elemento y de los permisos de administracin que dispongamos. Vamos a repasar las
opciones que tiene el usuario nico de un ordenador, y por tanto administrador de ese
sistema:

Bsico nos ofrece la informacin bsica relativa al elemento seleccionado:


tipo de archivo, tamao, ubicacin, fecha de modificacin, etc. En esta
pestaa podemos renombrar el elemento y asignarle un nuevo icono (hay
multitud a escoger).

Pgina 72 de 384

Linux

Emblemas nos permite escoger pequeos grficos que se superponen al


icono y que nos sirven para tener a primera vista ms informacin sobre
el elemento seleccionado, o simplemente para decorarlo. Hay corazones,
billetes, bombas, paquetes, estrellas, globos terrqueos...

Permisos es una pestaa bastante tcnica que en principio no es necesario


que toquemos, a menos que estemos compartiendo un ordenador o una red
con ms usuarios. Ms sobre este tema en el apartado Gestin de usuarios
de este mismo captulo.

Abrir con aparece en los iconos de archivos y nos permite definir las
aplicaciones con las que queremos abrir ese archivo y, de paso, todos
los que sean de ese mismo tipo. En principio el sistema ya reconoce
las aplicaciones instaladas que pueden abrir un archivo determinado, y
cada vez que instalamos o desinstalamos una aplicacin este registro se
actualiza automticamente. Aun as, podemos aadir o quitar aplicaciones
manualmente y podemos marcar la aplicacin que deseamos activar por
defecto.

Notas sirve para aadir comentarios o recordatorios sobre el elemento en


cuestin, sin interferir en los contenidos del archivo, carpeta o aplicacin.

Dependiendo del tipo de archivo pueden aparecer ms pestaas como Imagen o


Documento, conteniendo ms informacin sobre el archivo.
Si nos manejamos cmodamente con las pestaas de Propiedades posiblemente haya
llegado la hora de adaptar el escritorio a nuestros gustos y necesidades

Plataforma de Teleformacin de IFES

Pgina 73 de 384

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO / 2.1. GNOME / 2.1. GNOME

2.1.10. Personalizar el escritorio


Introduccin
Una vez ubicados en nuestro nuevo escritorio es fcil que una vocecilla interna nos
llame insistentemente a empezar a personalizarlo todo. Como a quien le dan las llaves
de su nuevo piso le falta tiempo (y a menudo tambin dinero) para pintarlo, amueblarlo
y decorarlo, a muchos de nosotros tambin nos entran ganas de hacer del nuevo hogar
informtico un espacio personal especialmente acogedor.
CONSEJO: cada vez que nos entre la tentacin de hacer cambios, respiremos hondo
y dejmoslo para otro da. Hagamos caso slo al deseo que perviva con fuerza. El
escritorio que tenemos por defecto es el resultado de miles de reflexiones, debates
y acciones realizadas por desarrolladores de sofware libre de medio mundo. Tienen
motivos para dejarnos el escritorio en las condiciones en las que nos lo encontramos,
aunque no nos resulten obvios durante la fiebre del estreno.
Cuando un usuario llega a su nuevo escritorio libre es muy probable que su experiencia
en estos entornos sea ms bien escasa. Por eso es recomendable acostumbrarnos al
nuevo entorno para saber de verdad qu queremos hacer con l.
Esta evolucin lenta pero slida es la ms recomendada. Mientras tanto podemos ir
satisfaciendo la curiosidad y buscando inspiracin en lugares como:
www.GNOME-look.org
En el anterior apartado ya hemos mencionado algunas posibilidades de
personalizacin: ubicar accesos directos y lanzadores en escritorio, aadir marcadores
a la lista de Lugares, cambiar iconos de archivos y decorarlos con grficos
sealizadores mediante el dilogo de Propiedades... Otra va obvia de personalizacin
es la instalacin de nuevas aplicaciones.
A continuacin hacemos un repaso de las opciones de personalizacin ms sencillas y
habituales.

Fondos de pantalla
El cambio ms vistoso y el ms sencillo de realizar tambin. Hay varios fondos que
podemos decorar a nuestro gusto.

Pgina 74 de 384

Linux

Se puede cambiar el fondo del escritorio con una entraable foto, una trama rtmica,
un color plano minimalista... En Internet hay toda una legin de diseadores de estos
fondos (en ingls wallpapers o backgrounds). Una vez que tengamos la imagen
deseada guardada en nuestro sistema los pasos a dar son:

1. pulsar con la tecla derecha del ratn sobre el fondo del escritorio.
2. pulsar Cambiar el fondo del escritorio.
3. pulsar Aadir tapiz.
4. buscar y seleccionar la imagen deseada.

Con estos cuatro pasos ya tendremos la imagen en el fondo del escritorio. A partir de
aqu podemos afinar ms con las Opciones de Estilo:

Centrado coloca la imagen tal cual en el centro de la pantalla.

Plataforma de Teleformacin de IFES

Pgina 75 de 384

Rellenar la pantalla distorsiona la imagen de forma que ocupe toda la


pantalla disponible.
Escalado estira la imagen hasta los bordes verticales u horizontales de la
pantalla, pero sin distorsionarla.
Mosaico repite la imagen hasta cubrir toda la pantalla, tcnica ideal para
representar tramas (hojas cuadriculadas, puntos de lana, baldosas, etc).

Colores del escritorio maneja las tonalidades del fondo de pantalla que no quedan
cubiertas por el tapiz seleccionado. Podemos seleccionar un color plano para tener
todo el fondo del mismo color o podemos realizar degradados de un color a otro.
Cada vez que seleccionamos una accin esta se produce sobre el escritorio, lo que va
muy bien para ir probando sin perder el tiempo. O perdindolo a gusto.

Fondos de carpetas
Hay quien disfruta teniendo sus carpetas favoritas decoradas de forma diferente, como
quien pinta una habitacin de cada color. Para introducirse en estos menesteres hay
que dar unos sencillos pasos:

Pgina 76 de 384

Linux

1. A travs del men de Lugares o del Administrador de archivos llegamos a


la carpeta a personalizar.

2. Seleccionamos Editar en el men superior.

3. Seleccionamos Fondos y emblemas...

4. Aparece una ventana de seleccin con Patrones y Colores. Buscamos


la opcin deseada y la arrastramos con el ratn hasta la superficie de la
carpeta a decorar.

El fondo de la carpeta cambiar automticamente al patrn o color elegido. Si no


tenemos suficiente con la seleccin preinstalada podemos aadir ms material bajado
de internet o de nuestra cosecha, pulsando la tecla Aadir un patrn/color nuevo.

Plataforma de Teleformacin de IFES

Pgina 77 de 384

Paneles
Ejemplo de panel adaptado al uso, con calendario lunar y todo.

Anteriormente dimos un repaso a los elementos disponibles en los paneles superior e


inferior del escritorio, tal cual aparecen por defecto. Los paneles son piezas bastante
claves en nuestro trabajo. Si los tenemos bien personalizados nos sentiremos ms a
gusto en nuestro trabajo diario, ahorrando tiempo en las acciones ms habituales.
Los paneles ofrecen muchas posibilidades de personalizacin. Podemos crear tantos
paneles como queramos y los podemos ubicar pegados a las aristas de la pantalla
que prefiramos, tanto en posicin horizontal como vertical. Para crear un nuevo panel
slo tenemos que pulsar la tecla derecha del ratn sobre una parte lista de un panel y
seleccionar Panel nuevo en el men contextual. Por lo que respecta a la posicin, una
forma sencilla de mover los paneles es arrastrndolos con el ratn a cualquier extremo
de la pantalla.
Podemos modificar el comportamiento de un panel a travs de la opcin Propiedades
de su men contextual, en la pestaa General. Las opciones disponibles son:

Orientacin: a qu arista deseamos enganchar el panel.

Tamao: el grueso del panel en pxeles.

Expandir: si queremos que el panel ocupe toda la arista o slo el espacio


que precise.

Ocultar automticamente ocultar el panel dejando slo una franja para que
posemos el puntero del raton cuando queramos tenerlo a la vista.

Mostrar botones de ocultacin hace que el panel se muestre y oculte


entrandoy saliendo de la pantalla cada vez que cliquemos el botn, al estilo
de un cajn del dinero de una caja registradora (incluso puede sonar una
campanita idntica).

Siguiendo con la misma ventana de Propiedades pero en la pestaa Fondo podemos


personalizar el aspecto del panel con mltiples variantes:

Pgina 78 de 384

Linux

Ninguno mantiene el color asignado por el tema de escritorio que tengamos


seleccionado.

Color slido nos permite escoger un color plano y asignarle el grado de


transparencia que deseemos.

Imagen de fondo coloca la imagen que hayamos seleccionado como fondo


en mosaico. Es recomendado utilizar imgenes pequeas y ligeras, como
por ejemplo un patrn de trama.

Esta es la parte ms entretenida y til de la personalizacin de paneles. Hay una


coleccin de miniaplicaciones disponibles por defecto y hay muchas ms que podemos
instalar. Si no tenemos suficiente con lo que hay podemos empezar buscando applet o
panel en Aadir programas, bajo el men de aplicaciones.

Plataforma de Teleformacin de IFES

Pgina 79 de 384

Para aadir una miniaplicacin al panel debemos seleccionar Aadir al panel... en su


men contextual. Nos aparecer la lista variopinta de miniaplicaciones disponibles. Por
ejemplo:

Informe meteorolgico para quienes necesitan saber la temperatura y


estado del tiempo en tal lugar del planeta.

Notas adhesivas tipo PostIt para enganchar en la pantalla.

Tomboy es una nueva e hipertextual variante de estas notas adhesivas. La


nueva moda.

Monitor de carga de batera es til para los usuarios de porttiles.

Los monitores de Red o Mdem sirven para saber de un vistazo si la


conexin va lenta o se ha cortado.

Adems hay quien le encuentra la gracia al hecho de poblar su panel con un


Pez o unos ojos que observan el puntero del ratn all donde vaya (Geyes).
Una vez ms, para gustos los colores.

Podemos seleccionar la miniaplicacin deseada pulsndola o bien arrastrndola al


lugar del panel donde deseemos ubicarla. Una vez que la miniaplicacin est en
el panel podemos pulsarla con la tecla derecha del ratn para encontrar an ms
opciones de configuracin en su men contextual. Podemos reubicar los elementos del
panel arrastrndolos con la tecla media o rueda del ratn.

Temas
Los temas de escritorio controlan el aspecto de las ventanas, botones e iconos propios
del sistema. Son un elemento esencial para marcar el carcter de un escritorio y son,
junto con el fondo de escritorio, un elemento que cada distribucin acostumbra a
personalizar para integrar su imagen corporativa.
Modificar el tema de escritorio es sencillo:

1. pulsamos el men de Sistema en el panel superior.


2. Seleccionamos Preferencias
3. Seleccionamos Tema
4. En la ventana de Preferencias del tema seleccionamos el que nos
apetezca. Los cambios son inmediatos slo con pulsar una vez un tema.

Pgina 80 de 384

Linux

Hay muchos ms temas ah fuera que podemos instalar. Una vez que encontremos
un tema que nos guste, debemos guardarlo en una carpeta, lo que nos va apermitir
seleccionar Instalar un tema... en la ventana Preferencias del tema. Ojo, que slo
funcionarn los temas pensados para GNOME/GTK+. Es decir, un tema configurado
para KDE, Fluxbox, etc, no funcionar en nuestro GNOME.
Otra va de instalacin de temas y todo tipo de alhajas grficas para nuestro escritorio
es la aplicacin Art Manager que podemos encontrar e instalar mediante el Instalador
de programas del men de Aplicaciones. Art Manager integra la navegacin y
previsualizacin de varios temas disponibles y su instalacin.

Salvapantallas
Un salvapantallas es una aplicacin que se activa al rato de tener el ordenador inactivo
(por ejemplo porque nos hemos ido a tomar el aire). Su efecto es un conjunto de
acontecimientos visuales que se suceden en la pantalla del ordenador, desde un viaje
infinito por una especie de galera a una partida aleatoria de comecocos, pasando por
fuegos artificales, galaxias rotando, fractales, las letras verdes de Matrix...
El origen de la palabra viene de los tiempos en que los monitores eran bastante
sensibles, y tener una misma pantalla encendida durante horas poda afectar el
rendimiento de los transistores encendidos con respecto a los apagados. Hoy da los
salvapantallas son ms bien una cuestin ldica o una proteccin de seguridad en
oficinas y dems lugares transitados.
La aplicacin de salvapantallas se encuentra activada por defecto, mostrando varios
salvapantallas de forma aleatoria. Para comprobarlo podemos ir a tomar algo y volver
al rato. La pantalla debera estar mostrando algo movido y colorido. O estar como
apagada si nos hemos alargado con la pausa. La pantalla en negro se utiliza tras un
periodo de larga inactividad y puede ser activada tambien de forma automtica en
porttiles con batera baja.

Plataforma de Teleformacin de IFES

Pgina 81 de 384

Pgina 82 de 384

Linux

Tipografas

Podemos personalizar las fuentes (tipos de letra) utilizadas por el escritorio al pie de los
iconos, en los paneles, en las ventanas... La fuente utilizada por defecto por GNOME
es la elegante y libre Bitstream Vera Sans, con tamao de 10 pxels. Si queremos
modificar el tamao o la fuente los pasos a dar son, de nuevo, sencillos:

1. pulsamos el men de Sistema en el panel superior.

2. Seleccionamos Preferencias.

3. Seleccionamos Tipografa.

Se nos desplegar una ventana de Preferencias de la tipografa con varias opciones:

Plataforma de Teleformacin de IFES

Pgina 83 de 384

Tipografa para la aplicacin es la fuente que utilizan las aplicaciones en


su propia interfaz. En las capturas se puede ver cmo cambian de aspecto
en un par de clics.

Tipografa para el escritorio es la utilizada al pie de los iconos ubicados


sobre el fondo del escritorio.

Tipografa del ttulo de la ventana es, como su nombre deja claro, la que se
utiliza en el lmite superior de todas las ventanas.

Tipografa para el terminal es la mostrada cuando accedemos a la linea de


comandos a travs del terminal.

Renderizado de la tipografa nos muestra cuatro opciones y simplemente


debemos tener seleccionada la que tenga mejor aspecto en nuestro monitor.

Si pulsamos en Detalles nos aparecen an ms opciones, a destacar el enlace para


Ir a la carpeta de las tipografas, donde se almacenan todas las fuentes disponibles
en el sistema. En principio las opciones ms adecuadas son las que el sistema ya ha
configurado de acuerdo con el hardware detectado durante los procesos de instalacin
y arranque.

Sesiones
Entendemos por sesin el proceso de trabajo que realizamos a partir del
momento que entramos en el entorno de escritorio, tras haber introducido el
usuario y contrasea. Al salir de la sesin podemos guardar la configuracin para
encontrarnos con los mismos archivos, carpetas y aplicaciones abiertas la prxima vez
que entremos (salvo excepciones).

Pgina 84 de 384

Linux

La manera ms simple de guardar una sesin es seleccionar la opcin Guardar la


configuracin actual en el momento de salir de la sesin, por ejemplo cuando vamos
a apagar el ordenador. Slo con esta accin se nos guardar todo lo que tengamos
abierto para la siguiente vez que accedamos al escritorio.
Aun as, debido a problemas de integracin, es posible que haya aplicaciones que no
puedan ser automticamente guardadas en nuestra sesin. Por ejemplo, esto sucede
con el navegador Mozilla Firefox, y el propio sistema ya nos avisa de las aplicaciones
que no ha podido guardar para la siguiente sesin. Pero hay una forma de solucionar
esta incomodidad:

1. Pulsamos el men de Sistema en el panel superior.


2. Seleccionamos Preferencias.
3. Seleccionamos Sesiones.
4. Seleccionamos la pestaa Programas al inicio.

Plataforma de Teleformacin de IFES

Pgina 85 de 384

5. Pulsamos el botn Aadir.

Ahora viene un salto algo complicado que seguramente mejorar en futuras versiones
de GNOME: hay que introducir el comando de inicio de la aplicacin o buscarla en el
directorio donde se encuentre. El camino lento pero bastante seguro es buscarla. Muy
posiblemente se encuentre en el subdirectorio /usr/bin, y para llegar a l deberemos ir
primero a la raz del rbol y a partir de all ir bajando a usr y luego a bin, directorio que
se encuentra plagado de aplicaciones.
Aunque algo ms complejo, este mtodo es infalible y las aplicaciones que all se listen
se pondrn en marcha solo con que entremos en la sesin.
Si alguien no tiene suficiente con todas estas posibilidades de personalizacin ya
puede empezar a considerarse un usuario avanzado, o como mnimo un usuario de
necesidades avanzadas.

Pgina 86 de 384

Linux

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO / 2.1. GNOME / 2.1. GNOME

2.1.11. Gestin de usuarios


Introduccin
Salvo que estemos utilizando una versin Live de Linux, para entrar en el escritorio
utilizamos nuestro identificador de usuario y contrasea. Si somos los nicos utilizando
el ordenador es suficiente, pero si lo compartimos con otras personas, es casi
obligado tener un usuario diferente para cada una de ellas. Incluso si tenemos visitas
espordicas es bueno prepararles un usuario tipo "invitado". Esta decisin ir en
beneficio de todos.
Veamos por qu.

Un tema de permisos
Cada usuario tiene poderes plenos en su carpeta personal y, la verdad, pocos poderes
decisivos ms all de ella. El primer usuario de un sistema tiene importantes privilegios,
pero el resto de usuarios slo tendrn los permisos que ste decida conceder, a menos
que delegue poderes.
Vamos a ver un ejemplo prctico de nuestro poder en el escritorio propio:

1. Creamos en nuestro escritorio una carpeta con un nombre cualquiera.


2. La seleccionamos con la tecla izquierda del ratn.
3. Le damos a la tecla Supr del teclado.
4. La carpeta desaparece.

De hecho no ha desaparecido del todo, est en la Papelera. Pero la podemos borrar


definitivamente, sin remedio. Tambin podemos cargarnos elementos y datos de
nuestra carpeta personal, editando textos o grficos, limpiando el buzn de correo,
reubicando ciertas carpetas sin ton ni son... La buena noticia es que aunque nosotros
paguemos el pato, nada de esto afecta al funcionamiento del sistema en s. Es decir,
el sistema nos deja hacer lo que queramos en nuestra parcela, fuera de sus zonas
sensibles.
En cambio:

1. Vamos al men de Lugares del panel superior.

Plataforma de Teleformacin de IFES

Pgina 87 de 384

2. Seleccionamos Carpeta personal. Se abre el Administrador de archivos y


nos muestra los elementos que, como hemos dicho, podemos manipular y
borrar.

3. Pero vayamos a otro sitio. pulsamos a Subir en la barra principal, llegando


a la carpeta Home. Veremos nuestra carpeta personal identificada con
nuestro usuario y las carpetas de otros usuarios si los hay.

4. Subimos otro piso ms pulsando Subir, llegando a la raiz del rbol. Vemos
muchas carpetas con nombres extraos.

5. Seleccionamos la carpeta lib, que contiene buena parte de la materia gris


requerida por el sistema para funcionar. Vamos a darle a la tecla Supr del
teclado, aun sabiendo que borrar esa carpeta implica matar el sistema.

Pgina 88 de 384

Linux

Pues bien, no pasa nada. Primero nos aparece una pantalla avisando de que no puede
enviar la carpeta a la papelera y preguntando si queremos borrarla inmediatamente.
pulsamos a Borrar, y aparece una segunda pantalla avisando que no podemos borrar
tal fichero. Por ms que lo intentemos de all no pasaremos, y nuestro sistema seguir
intacto.
Si hay varios usuarios en un sistema, cada uno podr manipular a voluntad su propia
carpeta personal pero no podr tocar ni las carpetas que tenga por encima ni las de
los otros usuarios. De hecho, el administrador del sistema puede limitar incluso el
acceso -la visin- de otras carpetas que no sean la propia personal, garantizando as la
privacidad de cada usuario.
Este comportamiento es el habitual en sistemas GNU/Linux y evita ante todo que los
usuarios toquen lo que no deben. Hasta hace relativamente poco los usuarios de MS
Windows podan acceder, modificar y borrar casi cualquier archivo y carpeta de su
ordenador. Nunca sabremos qu porcentaje de los que se quejaban de que tal o cual
cosa no funcionaba en su Windows eran de hecho corresponsables del fallo, por haber
tocado inconsciente o deliberadamente archivos que debieron estar protegidos de los
usuarios corrientes.

Quin y cmo obtiene los mximos permisos


Pero alguien tiene que hacer el trabajo sucio: las tareas de administracin
del sistema que la mayora de las veces requieren modificaciones directas o
indirectas de archivos ubicados fuera de cualquier carpeta personal, cerca de la raz.
Tradicionalmente este trabajo era desempeado por el usuario root (raz, en espaol).
Pero nuestro sistema no tiene operativo ningn usuario root, aunque s permite a los

Plataforma de Teleformacin de IFES

Pgina 89 de 384

usuarios con permisos el poder realizar tareas propias de root de forma temporal: en
la jerga se habla de hacer sudo, ya que en la lnea de comandos la instruccin
que nos permite desarrollar estas tareas especiales es sudo. Pero por suerte
GNOME nos permite realizar dichas tareas sobre el propio escritorio, a menos que
seamos un administrador completo o un usuario de necesidades avanzadas. Paseando
sobre todo por el men de Sistema veremos que algunas aplicaciones nos piden
nuestra contrasea antes de ejecutarse, y que slo se pondrn en funcionamiento si
introducimos la contrasea correcta y nuestro usuario tiene los permisos necesarios.
Cuando en estas situaciones estamos entrando nuestra contrasea estamos, de hecho,
haciendo sudo.
Una vez introducida la contrasea podremos ejecutar la aplicacin con permisos
de root durante quince minutos, luego volveremos a ser un usuario corriente. Como
PacMan cuando se come las bolas gordas. Como Astrix con la pocin mgica. Este
pequeo trmite nos salva de mltiples posibles ataques a la seguridad del sistema,
aparte del no menos peligroso riesgo de estropear algo accidentalmente, incluso
inadvertidamente. Desde el punto de vista de un administrador de sistemas, el propio
administrador (humano, con sus errores) es un riesgo, por lo tanto es bueno tenerlo con
poderes administrativos el tiempo mnimo necesario.
El primer usuario creado en un sistema, durante el proceso de instalacin, obtiene
automticamente permisos de administracin mediante sudo. Los usuarios que se
crean a continuacin tienen por defecto esta opcin desactivada, aunque activarla
es sencillo. Cada usuario con permisos har sudo con su propia contrasea, lo que
garantiza una mayor seguridad del sistema.

Crear nuevos usuarios


Podemos crear nuevos usuarios si somos el nico habitante de nuestro sistema o
tenemos los permisos de acceso a las tareas de administracin del sistema.
Vamos a crear un usuario para quienes, de tanto en cuanto, nos visitan y nos piden el
ordenador para chequear correo, grabar un CD, jugar un rato...

1. Pulsamos el men de Sistema en el panel superior.


2. Seleccionamos Administracin.
3. Seleccionamos Usuarios y grupos.
4. En la ventana de dilogo pulsamos a Aadir usuario....
5. Tenemos varios campos para rellenar, veamos los requeridos:

Pgina 90 de 384

Linux

Nombre de usuario es una sola palabra en minsculas y sin


acentos, por ejemplo una combinacin de nombre y apellido o un
apodo. Este campo es requerido, pero los siguientes son opcionales.

Contrasea es otra combinacin de caracteres, pero sta debe


ser secreta y a ser posible un trmino inventado que no aparezca
en diccionario alguno. El sistema ofrece una contrasea aleatoria
si no se nos ocurre nada (ojo que maysculas y minsculas se
diferencian).

6. Una vez completados los campos pulsamos Aceptar.

Ya se ha creado el nuevo usuario. Si pulsamos en sus Propiedades y luego en la


pestaa Privilegios del usuario veremos que la opcin Ejecutar tareas de administracin
del sistema no est activada. Esto implica que el nuevo usuario no podr hacer sudo. Si
seleccionamos est opcin le daremos la opcin de ejecutar tareas como root.

Plataforma de Teleformacin de IFES

Pgina 91 de 384

Grupos de usuarios

Si pulsamos la pestaa Grupos en la ventana de opciones de Usuarios y grupos


veremos una lista bastante crptica a primera vista. Cada usuario es asignado a varios

Pgina 92 de 384

Linux

grupos, y cada grupo obtiene permisos para realizar tareas determinadas. El sistema
crea automticamente grupos para regular el acceso de los usuarios a acciones como
utilizar un disquete, la unidad de CD-Rom, tener acceso al audio, etc.
El primer usuario, creado durante el proceso de instalacin, es asignado
automticamente al grupo users. Los nuevos usuarios que vamos creando son
asignados automticamente a un grupo con el mismo nombre que su identificador de
usuario. Como veremos, esto tiene como consecuencia que por defecto los usuarios no
pueden acceder a las carpetas de otros usuarios, garantizando as su privacidad.
Podemos crear nuevos grupos manualmente. Esto nos sirve para dar los mismos
permisos a todos los integrantes de un grupo. Por ejemplo, una familia compartiendo
un ordenador puede tener una carpeta slo accesible al grupo mamaypapa (integrado
por dos obvios usuarios) donde almacenar todo lo que no se quiera dejar a la vista
de los hijos. Con esta carpeta bien protegida, podran dejar el resto de sus carpetas
personales accesibles. La forma de crear grupos es bastante similar que la que hemos
visto para crear usuarios. A la hora de crear un grupo podemos aadir los usuarios que
los integran.
Siempre podemos editar los grupos y sumar o extraer usuarios.

Plataforma de Teleformacin de IFES

Pgina 93 de 384

Repartir accesos
Como hemos comentado, por defecto los usuarios no pueden acceder a las carpetas
de los dems por una cuestin de privacidad. Aunque acabemos de crear a esos
usuarios, no podremos acceder a sus carpetas personales. Recordemos que hemos
accedido a la herramienta de Usuarios y grupos tras introducir nuestra contrasea,
con privilegios temporales de root. Por tanto slo podremos acceder a sus carpetas

Pgina 94 de 384

Linux

como usuario root, o iniciando una nueva sesin e introduciendo su identificador y


contrasea, claro.

La principal manera de acceder a las carpetas de otros es aadir los usuarios que
desean compartir acceso a un mismo grupo (ej: users) y modificar las propiedades de
cada carpeta de usuario para que se sean accesibles a los integramtes de ese grupo.
El primer paso es sumar usuarios al grupo. Para ello es recomendable utilizar el grupo
users, aunque tambin podemos crear uno nuevo. En la ventana de opciones de
Usuarios y grupos seleccionamos la pestaa Grupos y el grupo a modificar. pulsamos
en Propiedades y buscamos en la lista de usuarios de la izquierda los que vayamos a
aadir al listado del grupo, en la derecha. Al final pulsamos Aceptar para guardar los
cambios.

Plataforma de Teleformacin de IFES

Pgina 95 de 384

Pgina 96 de 384

Linux

Debemos comprobar que el detalle de permisos est a nuestro gusto:

Los permisos de Lectura implican el acceso a las carpetas y archivos.


Los de Escritura implican la posibilidad de hacer cambios.
En este caso los de Ejecucin deben ir parejos a los de Lectura.

Por otro lado:

El Propietario es el usuario a quien pertenece la carpeta. En principio debe


tener permisos de lectura, escritura y ejecucin.

Plataforma de Teleformacin de IFES

Pgina 97 de 384

El Grupo se refiere al Grupo del archivo que hemos seleccionado. Lo normal


es tener activado slo Lectura y Ejecucin, permitiendo que un usuario
pueda acceder a los archivos de otro usuario pero no modificarlos.

Otros se refiere al resto de usuarios que no figuran en el grupo. Si les damos


acceso lo lgico es hacerlo slo con permisos de Lectura y Ejecucin. A los
administradores serios no les hace ninguna gracia dar permisos de escritura
a todos los usuarios, ya que esta es una posible entrada de inseguridad en
el sistema.

Nada de esto es complicado, pero es un proceso con el que debemos ir con cuidado.

Pgina 98 de 384

Linux

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO / U.D.2. El entorno de


escritorio

2.2. KDE
KDE (K Desktop Environment), al igual que GNOME, es un entorno de escritorio
grfico e infraestructura de desarrollo para sistemas Unix y, en particular,
Linux. La 'K', originariamente, representaba la palabra "Kool", pero su significado fue
abandonado ms tarde. Actualmente significa simplemente 'K', la letra inmediatamente
anterior a la 'L' (inicial de Linux) en el alfabeto. Actualmente KDE es distribuido junto a
muchas distribuciones Linux.
KDE imit a CDE (Common Desktop Environment) en sus inicios. CDE es un entorno
de escritorio utilizado por varios Unix.
De acuerdo con su pgina web, "KDE es un entorno grfico contemporneo para
estaciones de trabajo Unix. KDE llena la necesidad de un escritorio amigable para
estaciones de trabajo Unix, similar a los escritorios de MacOS o Windows".
La mascota del proyecto es un pequeo dragn llamado Konqi.
En la distribucin de Linux que facilitamos en este curso, Ubuntu, el entorno es
GNOME y no KDE por lo que no iremos ms all en la introduccin de este entorno de
escritorio. Basta saber que Ubuntu tambin se distribuye con el entorno de escritorio
KDE en una distribucin a la que se ha llamado Kubuntu.

Autoevaluacin: El entrono de escritorio


Unas preguntas para ver si te has ledo la leccin...
Pregunta 1:
En la actualidad, GNOME es uno de los dos escritorios ms utilizados en los
entornos GNU/Linux

Verdadero

Falso
Respuesta correcta: Verdadero
Pregunta 2:
En el panel inferior de Gnome nos ofrece

Plataforma de Teleformacin de IFES

Pgina 99 de 384

Enlaces directos a las principales aplicaciones y espacios del ordenador


Enlaces que nos permiten trabajar con ms agilidad sobre el escritorio
Ninguna de las dos anteriores

Respuesta correcta: Enlaces que nos permiten trabajar con ms agilidad sobre el
escritorio
Pregunta 3:
Para que se usan los comodines en una busqueda?

Para flexibilizar y ampliar las busquedas


Para que realice una busqueda en todo el disco duro
No est permitido utilizar comodines en las busquedas

Respuesta correcta: Para flexibilizar y ampliar las busquedas


Pregunta 4:
Qu es la Generacin Beagle?

Una raza de perros


Es un motor de busquedas para GNOME que registra tu disco duro para
encontrar lo que buscas
Es un aplicativo que permite recuperar documentos borrados

Respuesta correcta: Es un motor de busquedas para GNOME que registra tu disco


duro para encontrar lo que buscas
Pregunta 5:
Reproductores musicales, Cmaras fotogrficas y dems dispositivos
generalmente accesibles por el puerto USB no son dispositivos de memoria ya
que no estan dentro del ordenador.

Verdadero

Falso
Respuesta correcta: Falso
Pregunta 6:
La tecla derecha del raton.

No sirve para nada


Nos despliega un Men contextual que ofrece las posibles acciones que
podemos iniciar a partir del elemento que estemos sealando con el puntero
del ratn

Pgina 100 de 384

Linux

Se puede usar para apagar el ordenador ms rpido

Respuesta correcta: Nos despliega un Men contextual que ofrece las posibles
acciones que podemos iniciar a partir del elemento que estemos sealando con el
puntero del ratn
Pregunta 7:
Cual es la aplicacin que nos permite:
- Ver el contenido de una carpeta
- Mostrar el contenido de un archivo
- Conectarnos a otros servidores remotos
Respuesta correcta: El administrador de archivos
Pregunta 8:
Con los fondos de escritorio podemos personalizar nuestro entorno de trabajo?

Verdadero
Falso

Respuesta correcta: Verdadero

Plataforma de Teleformacin de IFES

Pgina 101 de 384

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO

U.D.3. Ofimtica: OPENOFFICE


3.1. Qu es OPENOFFICE?
Aunque habitualmente y por comodidad lo denominemos OpenOffice, OpenOffice.org
-y as es como nos deberamos referir a l debido a una disputa de marcas, pero no lo
haremos- es un proyecto basado en el cdigo abierto para crear una suite ofimtica.
Es multiplataforma, existe entre otros SO para Microsoft Windows, GNU/Linux,
Solaris y Mac OS X.
Deriva a su vez de una versin comercial: StarOffice de Sun Microsystems todava
existente. Est diseado para competir con el lder en el mercado, Microsoft Office,
por lo que tiene un aire similar. Es, en general, compatible con los formatos de fichero
de Microsoft Office, ya que puede leer directamente los archivos creados con dicha
suite ofimtica, aunque tiene su propio formato de archivos basado en el estndar XML.
Desde la versin 2.0 el formato de archivo nativo es OpenDocument. En este formato
los datos se comprimen resultando en archivos de menor tamao que sus equivalentes
de Microsoft Office. En versiones anteriores de OO (tambin nos referiremos as a
OpenOffice por extremar, si cabe, algo ms la comodidad, pero no iremos ms all
en la simplificacin del nombre) en versiones anteriores, decamos, los formatos
de archivo utilizados tambin reducan significativamente el tamao de archivos
equivalentes del MSOffice.

Pgina 102 de 384

Linux

OO no incluye sin embargo un gestor de correo, que por otro lado viene ya (junto al
navegador) incluido en la mayora de las distribuciones Linux: nos referimos a Mozilla.
OO se integra adems con bases de datos como MySQL y PostgresSQL, con una
funcionalidad similar o superior a Microsoft Access.
Mediante un asistente o piloto, es posible descargar diccionarios adicionales
para muchos idiomas, incluido el espaol. Esta tarea puede realizarse, tambin,
manualmente de manera sencilla, pero si se dispone de una conexin a internet el
uso del asistente lo convierte en una tarea casi inmediata. Se dispondr desde ese

Plataforma de Teleformacin de IFES

Pgina 103 de 384

momento con diccionarios de palabras para la correccin ortogrfica, la separacin


silbica y la opcin de buscar sinnimos.
A partir de la versin 1.1 se permite tambin la exportacin de documentos a PDF y
presentaciones de Impress a Macromedia Flash (SWF).
Para el usuario no iniciado OpenOffice.org ofrece las siguientes ventajas:

Es libre, se puede descargar gratuitamente de internet, copiar y redistribuir,


todo esto de forma completamente abierta y legal.

Con el tiempo todos los programas caducan, se quedan obsoletos;


OpenOffice.org, no: siempre puedes ir a tu pgina web y descargarte
gratuitamente la ltima versin actualizada y mejorada., la comunidad de
desarrollo de software libre no para.

Con OpenOffice.org tienes completa libertad para elegir el sistema


operativo que desees. Si ests harto de los cuelgues de MSOffice y
buscas la sencillez de uso de un Mac o la aventura e innovacin de Linux,
no hay ningn problema: instalas Linux en tu PC, descargas la versin
correspondiente de OpenOffice.org y listo. O bien no instalas Linux en tu PC
pero s descargas e instalas OpenOffice puesto que tambin, como hemos
dicho, esta disponible para Windows.

Por lo mismo, con OpenOffice.org ests a salvo si tienes necesidad de


editar tus documentos en un ordenador que funciona con un sistema
operativo distinto del tuyo. Puedes sobrevivir (informticamente hablando) en
entornos diversos.

Es muy compatible con Microsoft Office: los documentos del procesador


de textos Word, las hojas de clculo de Excel y las presentaciones de
PowerPoint de MS-Office -entre otras cosas- se pueden abrir, editar y
guardar satisfactoriamente con OpenOffice.org.

El intercambio de archivos es ms ligero puesto que ya van comprimidos por


defecto.

Y el usuario que se inicie en su uso descubrir muchas ms (aunque quiz tenga


primero que superar el sndrome de abstinencia que le producir la falta de MSOffice).

Pgina 104 de 384

Linux

3.2. Instalacin
Para seguir el apartado actual, es interesante tener instalado y operativo OpenOffice en
nuestro ordenador por lo que invitamos a visitar:
http://es.openoffice.org
descarga desde ah la versin del programa para tu sistema operativo (nota que OO
est disponible tambin para Windows -como no nos cansaremos de repetir- as que
no es necesario haber instalado Linux en tu ordenador para disfrutar de sus mltiples
virtudes) y descarga tambin:

1. El paquete de idiomas que es necesario para tener OpenOffice.org 2.0


funcionando en espaol (en la misma web ms abajo)

2. Los diccionarios para la correccin ortogrfica. Se descargan e instalan,


una vez abierto OO 2.0 con el paquete de idiomas correspondiente, entrando
en Archivo > Asistente > Instalar diccionarios nuevos...

3.2.1 La interfaz grfica del usuario


La interfaz grfica del usuario, o GUI, es el conjunto de elementos grficos (ventanas,
mens, botones, etc.) que permiten la interaccin entre el usuario y la aplicacin
informtica.
La figura siguiente muestra la interfaz grfica de usuario de OpenOffice.org Writer en el
siguiente escenario:

OpenOffice.org 2.0 en espaol.


Sistema Operativo Windows XP.

Plataforma de Teleformacin de IFES

Pgina 105 de 384

Que adems de ilustrar el principio del espejo dentro del espejo dentro del espejo... nos
puede tambin confirmar cmo la apariencia de OO Writer es la de su equivalente MS
Word, salvando las distancias.
Encontramos en la ventana una serie de barras que, empezando por arriba, tienen las
siguientes denominaciones y utilidades:

Barra de ttulo de la ventana


Muestra el ttulo de la ventana (el ttulo del documento y el nombre de la aplicacin) y
contiene los botones de manejo de la ventana, como Maximizar/Minimizar, Restaurar
y Cerrar.

Pgina 106 de 384

Linux

Barra de mens
Permite acceder a todos los mens de la aplicacin y contiene el botn de cierre del
documento cuando hay un solo documento abierto.

Barras de smbolos
Contienen smbolos que permiten el acceso directo a las funciones ms importantes de
la aplicacin. Son lo que en otras aplicaciones se conoce como barras de herramientas,
pero aqu este trmino se reserva para una barra de smbolos especfica. Por medio del
men Ver podemos controlar qu barras estn visibles y cules permanecen ocultas.

Los smbolos que tienen una flechita abren un men de opciones al sostener la
pulsacin del ratn. Por ejemplo, el botn Pegar, dependiendo del contenido del
portapapeles, puede abrir alguna de las opciones de la figura.

Barras de objetos
Existen muchas barras diferentes para manejar todos los tipos de objetos (texto, tablas,
imgenes, etc.) que soporta OO Writer. Para ahorrar espacio, se visualizan todas en
el mismo lugar. Cuando hay varias disponibles, aparece un botn a la derecha para
conmutar las barras y seleccionar la barra que nos interese.

Plataforma de Teleformacin de IFES

Pgina 107 de 384

Barra de herramientas
De modo predeterminado se muestra verticalmente a la izquierda del rea de edicin.
Contiene diversas funciones como Insertar objeto, Revisin ortogrfica, etc.

Regla
La regla sobre la pgina del documento permite controlar las dimensiones del
documento y modificar rpidamente los mrgenes, tabuladores, etc.

Barras de desplazamiento de la ventana


Cuando el documento no cabe en la ventana, estas barras permiten desplazarlo vertical
y horizontalmente.

Botones de navegacin
Permiten desplazarse rpidamente entre pginas, objetos, resultados de bsquedas,
etc.

Barra de estado
Debajo del documento nos muestra informacin sobre el mismo.
La informacin que aparece por defecto se interpreta as:

Pgina 1/2: el cursor se halla en la primera pgina de un total de 2.

Predeterminado: nombre del estilo de pgina de la pgina actual.

90%: escala de visualizacin del documento.

INSERT: Muestra el modo de insercin actual: insertar o sobreescribir.

STD: Muestra el modo de seleccin actual: estndar (STD), ampliar (EXT) o


agregar (AGR).

HYP: Modo de los hiperenlaces: activar (HYP) o seleccionar (SEL).

Pgina 108 de 384

Linux

A1 : Nivel 1: Cuando existe una tabla, indica que el cursor est en la celda
A1 de la tabla y en el primer nivel de numeracin.

3.3. Compatibilidad con MS WORD


Segn la ayuda de OpenOffice.org: OpenOffice.org puede abrir automticamente
documentos de Microsoft Office 97/2000/XP. Sin embargo, algunas caractersticas de
diseo y atributos de formateado de los documentos de Microsoft Office ms complejos
se gestionan de forma diferente en OpenOffice.org o no se admiten. Como resultado
los archivos convertidos necesitan un poco de reformateado manual. La cantidad de
reformateado que se puede esperar es proporcional a la complejidad de la estructura
y el formateado del documento fuente. OpenOffice.org no puede ejecutar scripts de
Visual Basic, pero puede cargarlos para su anlisis.
Tambin segn la ayuda de OpenOffice.org, las siguientes funciones de Microsoft Word
pueden provocar dificultadas de conversin:

Autoformas.
Marcas de revisin.
Objetos OLE.
Algunos controles y campos de formularios de Microsoft Office.
ndices.
Tablas, marcos y formateado de varias columnas.
Hiperenlaces y marcadores.
Imgenes de Microsoft WordArt.
Caracteres y textos animados.

Abrir un documento de MS Word


Un documento de MS Word se abre igual que un documento de OpenOffice.org
Asegrate que en el cuadro Tipo de archivo del cuadro de dilogo Abrir, la opcin
seleccionada es Todos los archivos (*.*), Documentos de texto o Microsoft Word
97/2000/XP (*.doc).

Guardar un documento en formato de MS Word

1. Selecciona Archivo>Guardar como.

2. En el cuadro de dilogo Guardar como (recordars), abre la carpeta o


disquete donde guardas tus documentos, indica el nombre con que quieres

Plataforma de Teleformacin de IFES

Pgina 109 de 384

guardar el documento sin extensin en el cuadro Nombre de archivo, en


el cuadro Tipo de archivo selecciona Microsoft Word 98/2000/XP (*.doc) y
pulsa Guardar: el documento se guardar como documento de MS Word con
extensin doc. Ser este nuevo documento el que quede abierto, por tanto
los cambios realizados a partir de ahora no afectarn el documento original
con extensin sxw.

3.4. Novedades de la versin OPENOFFICE.ORG 2.0 con


respecto a las anteriores

Es el primer paquete de aplicaciones de oficina del mundo que utiliza


el nuevo formato OpenDocument de OASIS. OASIS es la organizacin
internacional de estndares XML, patrocinada por los mayores
representantes de la industria informtica (IBM, Sun, Microsoft, Oracle,
SAP, ...).

Pgina 110 de 384

Linux

Ahora se ve y se siente como cualquier otra aplicacin del ordenador. Si


un usuario cambia el tema de su escritorio, OpenOffice.org cambiar
para integrarse. Los documentos de OpenOffice.org ahora presentan
vistas preliminares en miniaturas en vez de iconos en los administradores
de archivos. La instalacin es ms natural, OpenOffice.org 2 utiliza las
herramientas estndares de instalacin en cada ordenador: por ejemplo,
ficheros .msi y .cab en Microsoft Windows, y ficheros .deb y .rpm disponibles
para Linux.

Nuevas caractersticas importantes que lo hacen ms fcil de usar, con base


en amplias investigaciones sobre usabilidad en laboratorios, para asegurar
que el software se desempea como los usuarios esperan que lo haga. Por
ejemplo, un nuevo men principal de Tabla en Writer.

Una nueva vista opcional de paneles mltiples incrementa la productividad


y la usabilidad de OpenOffice.org, proporcionando todas las herramientas
y ventanas importantes a travs de una interfaz de usuario coherente,
integrada y simple.

Las barras de herramientas son mucho ms flexibles en OpenOffice.org


2. Ahora es ms fcil mover, incrustar y desincrustar las barras de
herramientas, cambiarlas de lugar y personalizarlas.

El generador de PDF incorporado una caracterstica muy popular de la


versin 1.1 ha sido mejorado significativamente para manejar tablas de
contenidos, imgenes en miniatura, hipervnculos, etc., y tiene ms opciones
de configuracin para los usuarios avanzados.

Ms aplicaciones agregadas a la lista de productos compatibles,


simplificando la migracin al nuevo mundo de la computacin de estndares
abiertos. Inclusin de un filtro de importacin para WordPerfect; mejora
de la compatibilidad con Lotus, y muchos cambios menores para mejorar
la compatibilidad con caractersticas oscuras de Microsoft Office con la
posibilidad de acceder a archivos protegidos por contraseas.

Writer incluye un nuevo Asistente para Combinar Correspondencia, y un


nuevo Contador de Palabras, a peticin de los usuarios.

La cantidad mxima de filas en una planilla de clculos de Calc ha sido


incrementada al mismo nivel que la de Microsoft Excel: ahora es de 65.536
filas.

Plataforma de Teleformacin de IFES

Pgina 111 de 384

Con el Piloto de Datos de Calc ahora es posible crear nuevas agrupaciones,


filtrar datos con base en los valores, mostrar las diferencias y porcentajes en
vez de los valores absolutos, etc.

La versin 2 de OpenOffice.org introduce un nuevo componente principal,


Base, para usuarios que requieren una manera sencilla de acceder a los
datos mantenidos en bases de datos. La base de datos de cdigo abierto
HSQL se incluye con OpenOffice.org para obtener la funcionalidad de
una base de datos apenas se instala el producto (requiere un entorno de
ejecucin de Java JRE ).

3.5. Resumen de caractersticas comunes en todos los elementos


de OPENOFFICE.ORG

Un paquete de aplicaciones de oficina verdadero: un nico programa


de instalacin; crea/abre cualquier tipo de documentos desde cualquier
aplicacin; un sistema comn de ayuda (sensible al contexto y de
aprendizaje), herramientas de idioma, etc. en todos los programas.
Aprndelo una vez, salo en todos lados.
Interfaz familiar para aquellos usuarios habituados a otras aplicaciones de
oficina. Mens, aceleradores, barra de estado, y barras de herramientas
personalizables. Una misma interfaz de programacin de aplicaciones (API)
para los programadores.

Soporta idiomas internacionales incluyendo los de disposicin de texto


complejo (como Tailands, Hind, rabe y Hebreo), e idiomas de escritura
vertical, adems de muchas caractersticas de accesibilidad.

Los documentos se almacenan con el formato OpenDocument de OASIS


XML comprimido para minimizar el tamao en disco y maximizar el
cumplimiento de los requerimientos futuros. Filtros para Microsoft Word 6,
95, 97, 2000, XP; RTF; DocBook; WordPerfect; Excel 4, 5, 95, 97, 2000, XP;
DIF, dBASE, SYLK; Lotus 1-2-3; Powerpoint 97, 2000, XP; CGM; AutoCAD;
EMF; EPS; Mac PICT; Windows Metafile / Bitmap; GIF; JPEG; PBM; Kodak
Photo CD; PNG; Adobe Photoshop; Targa; TIFF; HTML; MathML; texto.

Otros formatos de ficheros soportados, incluida la generacin de ficheros


PDF (Formato de Documento Transportable) y Macromedia Flash (SWF), y
formatos para dispositivos porttiles como AportisDoc (Palm), Pocket Word y
Pocket Excel.

Pgina 112 de 384

Linux

3.6. Resumen de caractersticas particulares de los elementos de


OPENOFFICE.ORG

WRITER (Procesador de textos)

Todas las caractersticas de primera clase como correccin ortogrfica


(mientras escribes o interactiva), separacin silbica, autocorreccin y
autoformato, deshacer/rehacer de mltiples niveles, contabilizacin de
palabras totales o por seleccin; barras de herramientas para funciones y
objetos (sensibles al contexto p. ej. texto, tabla, grficos...), hipervnculos,
frmulas; barra de estado interactiva para acceder velozmente a funciones
comunes.

Soporta estilos a nivel de pgina, marco, prrafo o carcter, a travs del


men o del panel de Estilos y Formato, con posibilidad de configurar:
interlineado y espaciado; alineacin y flujo de texto incluyendo viudas
y hurfanas; amplia variedad de efectos de fuente incluyendo rotacin,
escritura en superndice / subndice, versalitas, relieve saliente / ahondado;
tabulaciones; bordes; relleno con colores o imgenes.

Grficos estilo Lo que ve es lo que obtiene (WYSIWYG), modificacin


de tamao, espejado, y recorte; ancla de pgina / prrafo / carcter; texto
superpuesto o ajustado (incluyendo un editor de contornos); disposicin de
texto al frente / atrs; ttulos; filtros de un solo 'clic'.

Caractersticas avanzadas para los documentos ms complejos: columnas


simples / mltiples; secciones; encabezados; pies; marcadores; tablas
(incluyendo clculos); referencias; notas al pie; tabla de contenidos; ndice;
bibliografa; documentos de versiones mltiples y comparaciones.

CALC (Hoja de clculos)

Soporta hasta 65.536 filas; 256 columnas; 8.192.000 celdas; 256 hojas.

Ms de 450 funciones en 9 categoras (matemticas, bases de datos,


financieras, fecha/hora, informacin, lgicas, vectores, estadstica, texto) con
un Asistente opcional y ayuda sensible al contexto.

Plataforma de Teleformacin de IFES

Pgina 113 de 384

Todos los formatos posibles de celdas (nmeros, fecha, hora, cientfico,


moneda, lgico...) con posibilidad de rotar el texto, bordes a un slo 'clic', etc.

Usa la vista previa para seleccionar entre trece categoras de diagramas


2-D y 3-D, incluyendo lneas, reas, barras, crculos, XY, curso y red, con
docenas de variantes.

Operadores de datos, con ordenamiento, filtrado, subtotales (incluyendo


operadores estadsticos); Piloto de Datos para analizar datos en Filas /
Columnas desde la planilla de clculos o bases de datos externas.

Soporte para planillas complejas que incluye pginas, enlaces,


consolidacin, detective de frmulas para encontrar dependientes /
precedentes, y verificacin de versiones entre mltiples autores.

IMPRESS (Presentaciones) y DRAW (Grficos)

Todas las caractersticas de edicin de grficos en barras de herramientas


individuales incrustables, incluyendo conectores inteligentes con 'puntos
de adhesin' configurables por el usuario; re-dimensionamiento de lineas
automtico; objetos 2-D y 3-D; objetos animados (texto y grficos); fontworks
y efectos 3-D.

Alinea, centra, invierte, rota y agrupa objetos; cuadrcula y lneas de ajuste


visibles / invisibles; convierte imgenes vectoriales a mapas de bits y
viceversa.

Asistente para nuevos usuarios; acceso opcional al Navegador y al panel de


Estilos y Formato (Impress).

Vista de dibujo / esquema / diapositivas / notas / documento; un slo 'clic'


alterna entre las vista maestra y la de diapositivas; calidad de visualizacin
seleccionable.

Docenas de efectos de transicin distintos, con visualizacin previa y control


de velocidad y efectos de sonido (Impress).

Pgina 114 de 384

Linux

BASE (Base de datos)

Administrador visual de base de datos con paneles mltiples para Tablas,


Consultas y Vistas, Formularios, y Reportes con visualizacin previa opcional
de los datos.

Interfaces de usuarios variadas: Asistentes para los principiantes; Vistas


de Diseo tipo planilla para usuarios en general; y SQL para usuarios
avanzados.

Motor liviano de base de datos HSQL incorporado, para soporte de bases de


datos apenas se instala, y datos mantenidos en XML.

Soporte de bases de datos externas para ADABAS D, ADO, dBase, MySQL,


Oracle JDBC, Planillas de clculo, y datos en ficheros de Texto; cualquier
base de datos que soporte el estndar industrial ODBC / JDBC; y libretas de
direcciones en formato LDAP, Outlook, y Mozilla.

Inserta, cambia, y borra datos; crea, modifica y elimina bases de datos,


tablas, ndices y consultas (incluyendo las de tablas mltiples); ordena, filtra
y combina correspondencia; formularios y reportes.

Plataforma de Teleformacin de IFES

Pgina 115 de 384

Linux / MDULO 2. INTERFAZ GRFICA DE USUARIO

Recuerda
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Geometra de una ventana


Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Personalizacin de salvapantallas
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Ofimtica
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Ventajas Openoffice .org


Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Pgina 116 de 384

Linux

Linux

Evaluacin segunda
Este recurso es de tipo Evaluacin.
Debe conectarse a la plataforma para realizar la evaluacin. Recuerde que las
evaluaciones son obligatorias ya que determinan la nota final.

Plataforma de Teleformacin de IFES

Pgina 117 de 384

Linux

MDULO 3. ADMINISTRACIN
BSICA
Introduccin
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Pgina 118 de 384

Linux

Linux / MDULO 3. ADMINISTRACIN BSICA

U.D.1. El sistema de archivos


Introduccin
A lo largo de este Mdulo estudiaremos una serie de conceptos informticos
relacionados con Unix puesto que Linux, como ya sabes, es un sistema operativo
desarrollado a partir de aqul. De esta forma las referencias al primero sern aplicables
al segundo y en la medida en que nos familiarizemos con la estructura del sistema de
archivos de Linux y los comandos que se presentarn a continuacin lo estaremos
haciendo tambin con los del sistema operativo Unix. No entraremos en demasiado
detalle sobre dnde acaba uno y empieza otro, porque el nivel de administracin que
abordamos en este Mdulo es, como su ttulo indica, bsico (pero muy interesante y
prctico).

Plataforma de Teleformacin de IFES

Pgina 119 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.1. El sistema de archivos

1.1. Directorios
Introduccin
Si vienes del mundo de Windows lo primero que te sorprender es que no est la
unidad C:
La distribucin de los discos y particiones en Linux es diferente. Si has realizado la
instalacin permanente te puedes dar cuenta de cmo se nombran los discos en
Linux: el primer disco duro es /dev/hda, el segundo disco duro es /dev/hdb, etc. Las
particiones del primer disco duro (/dev/hda) sern /dev/hda1, /dev/hda2, ... stas
ltimas son equivalentes a lo que en Windows se llama C:, D:, ...
En Linux todo es un archivo. Desde los archivos de datos hasta las particiones
de los discos pasando por el ratn y la tarjeta de sonido. Toda la informacin
referente a cualquier dispositivo se encuentra localizada y almacenada bajo nombre
de archivo. Los directorios tambin son archivos. Existe un directorio raiz (/) del que
cuelga todo. Los dispositivos (memorias usb, impresoras, teclado, ratn, ...) cuelgan del
directorio /dev.

Algunos de los directorios ms interesantes

/ Raz.

/usr Aqu se encuentra la gran mayora de los archivos existentes en un


sistema Linux, tales como documentacin, casi la totalidad de los comandos
de usuario, juegos, libreras, etc.

/bin Aqu estn los comandos que pueden usar todos los usuarios (incluido
el administrador o root).

/sbin Aqu estn los comandos que slo puede usar el administrador o root.

/dev Ah estn todos los dispositivos de nuesta mquina.

/home Lugar donde se almacenan las cuentas de usuarios.

/lib Enlaces a las libreras que se necesitan para el sistema.

Pgina 120 de 384

Linux

/var Contiene informacin variable, como por ejemplo los logs del sistema (/
var/log), correo local, etc.

/tmp Directorio temporal.

/etc Configuracin global de los programas.

/root Cuenta del administrador.

/boot Aqu est todo lo necesario para arrancar el sistema.

/media Punto de montaje para sistemas de archivos montados localmente.

/mnt Antiguo punto de montaje para sistemas de archivos montados


localmente. Hoy en da est en desuso y se conserva por razones histricas.

/proc Sistema de archivos virtual de informacin de procesos y del kernel.

Algunas referencias de Archivos conocidos

/etc/apt/sources.list Este archivo configura la lista de repositorios para


Activar universe y multiverse.

/etc/X11/xorg.conf Este archivo define y configura el entorno grafico a


cargar.

/etc/fstab Este archivo configura el acceso a los diferentes sistemas de


archivos que hay en nuestro sistema.

Plataforma de Teleformacin de IFES

Pgina 121 de 384

Tambin existen tres tipos de roles sobre los que se aplican estos permisos. Un
archivo pertenece a un usuario y a un grupo

1. Usuario: El propietario del archivo.


2. Grupo: Grupo al que pertenece el archivo.
3. Otros: Los dems usuarios.

Interfaz grfica
Podrs cambiar los permisos de forma grfica; slo tienes que darle con el botn
derecho del ratn sobre el directorio o el archivo al que quieras cambiar el permiso y
seleccionar la pestaa permisos.

Pgina 122 de 384

Linux

Resumiendo, que como hacen otros sistemas operativos y en concreto de un


modo muy similar a Unix, Linux provee directorios y archivos para almacenar la
informacin de forma ordenada.
Un directorio es como una carpeta, contiene hojas de papel, en informtica
ficheros o archivos. Una carpeta puede contener otras carpetas: puede haber

Plataforma de Teleformacin de IFES

Pgina 123 de 384

directorios dentro de directorios. En Unix, se denomina sistema de archivos a la


coleccin de archivos y directorios. Inicialmente en el sistema de archivos slo existe
un directorio, denominado "root". Dentro de este directorio habr por consiguiente ms
directorios, y dentro de ellos archivos, y an ms directorios.
Cada archivo y cada directorio tiene un nombre. Nos referiremos a su nombre corto que
puede coincidir con el de otro archivo y/o directorio en alguna otra parte del sistema
de archivo, y al nombre largo que es nico. Un nombre corto para un archivo puede
ser joe, mientras que su nombre completo podra ser /home/fulanito/joe. El nombre
completo se denomina usualmente trayectoria, direccin o path (camino en ingls).
La trayectoria puede decodificarse como una secuencia de directorios. Por ejemplo,
veremos como se lee:
/home/fulanito/joe
La barra inicial indica el directorio raz. Y dentro se encuentra el directorio denominado
home. El directorio fulanito a su vez est dentro de home. Y finalmente joe est dentro
de fulanito. Una trayectoria puede referirse tanto a un directorio como a un nombre de
archivo, as que joe podra ser cualquiera de ellos. Todos los items (objetos) antes del
nombre corto deben ser directorios puesto que contienen otros items.
Una manera sencilla de visualizar todo esto es mediante un diagrama en rbol como el
de la figura.

Pgina 124 de 384

Linux

Debes tener en cuenta que dicho diagrama no est completo: un sistema Linux
completo tiene ms de 8000 archivos y el rbol slo muestra algunos de los directorios
estndar. Por lo tanto, puede haber algunos directorios del diagrama que no estn en tu
sistema Linux y de hecho tu sistema tendr directorios que no aparecen en la figura.
Veamos un ejemplo. Lanzamos en el terminal el comando ls que veremos con ms
detalle enseguida pero que de momento nos permitir obtener un resumen de las
caractersticas de un determinado archivo. El terminal o Shell es una ventana a travs

Plataforma de Teleformacin de IFES

Pgina 125 de 384

de la cual nos podemos comunicar con el sistema operativo de forma directa. Lanzando
ordnes y obteniendo respuestas, tiene el siguiente aspecto.

Decamos que lanzamos/escribimos sobre el terminal la siguiente orden, el siguiente


comando:
$ ls -l pg_backup.sh
-rwxr-x--- 1 fulanito usuarios 453 2005-02-17 09:35 pg_backup.sh
El archivo pg_backup.sh pertenece al usuario fulanito y al grupo usuarios. Los
permisos que tiene para el usuario son rwx (read-write-execute) lo que significa que el
usuario fulanito puede leer el archivo, escribir en l y ejecutarlo. Por la extensin vemos
que es un script, por lo que es normal que se pueda ejecutar. Para el grupo tiene los
permisos r-x. Eso significa que los miembros del grupo usuarios pueden leer el archivo
y ejecutarlo, pero no modificarlo. Los permisos para los dems usuarios (otros) son ---,
por lo que un usuario que no sea fulanito ni pertenezca al grupo usuarios no podr leer,
escribir ni ejecutar el archivo.

Pgina 126 de 384

Linux

Como segundo aperitivo al siguiente punto introduciremos el comando chmod, que se


usa para designar los permisos de un archivo. Slo el propietario del archivo y el root
pueden cambiar los permisos.
La sintaxis de chmod es:
chmod {a, u, g, o} {+, -} {r, w, x} nombre del archivo
donde:

u: corresponde al dueo del archivo


g: corresponde al grupo
o y a: corresponde al resto de los usuarios, a para todos (all) y o para otros
(others)

Para autorizar o desautorizar el permiso:

+: autoriza
-: desautoriza
=: resetea los permisos

Los tipos de permisos son, como ya sabemos:

r: lectura
w: escritura
x: ejecucin

1.1.1. Analizando el contenido de los directorios

ls
Ahora que ya sabes de la existencia de archivos y directorios, imaginars que debe
haber tambin una manera de manipularlos. Por supuesto. El comando "ls" es uno
de los ms importantes, y lo que hace es listar los archivos. Si pruebas a ejecutar en
el terminal el comando "ls" desde el prompt (la solicitud de comando de un terminal
que termina en $ para cualquier usuario o en # si el usuario actual es "root"), entonces
vers:
/home/fulanito$ ls
/home/fulanito$

Plataforma de Teleformacin de IFES

Pgina 127 de 384

Est bien, no te preocupes por no ver nada. Unix es intencionadamente callado: si no


hay archivos para mostrar, no muestra nada (ni siquiera un "no hay archivos"). Por lo
tanto, la ausencia de salida es la manera de ls de decir que no encontr ningn archivo.
Pero hace un momento resulta que en realidad hay ms de 8000 archivos por ah:
dnde estn? Te acabas de encontrar con el concepto de directorio "actual". Como
puedes ver en el prompt, tu directorio actual es /home/fulanito y all no hay archivos. Si
buscas la lista de archivos de un directorio ms poblado, prueba con el directorio raz:
/home/fulanito$ ls /
bin etc install mnt root user var
dev home lib proc tmp usr vmlinux
/home/fulanito$
(Ahora ya s: has listado el contenido de un directorio utilizando un comando de Unix,
ya conoces algo de Unix, el nivel bsico: Unix nivel bsico: de momento lo puedes
incluir en tu curriculum y cuando termines este Mdulo hasta podrs plantearte cambiar
lo de bsico por algo ms sugerente).
Seguimos, en el comando anterior, "ls /", el directorio ("/") es lo que se denomina un
parmetro. La primera palabra de un comando es el nombre del comando y cualquier
cosa que le siga son sus parmetros. Los parmetros generalmente modifican la forma
en la que acta un programa; a "ls", el parmetro le dice de cual directorio deseas
la lista de archivos. Algunos comandos tienen parmetros especiales denominados
opciones o interruptores. Por ejemplo:
/home/fulanito$ ls -F
/ bin/ etc/ install/ mnt/ root/ user/ var@
dev/ home/ lib/ proc/ tmp/ usr/ vmlinux
/home/fulanito$
El "-F" es una opcin. Las opciones son clases especiales de parmetros que
comienzan con un guin y afectan al funcionamiento del programa. Para "ls", "F" es una opcin que te permite ver cules de las entradas son directorios, cules
son archivos especiales, cules programas, y cules son archivos normales.
Cualquiera que termina con una barra es un directorio. Trataremos con ms detalle las
caractersticas de "ls" ms adelante (Es un programa sorprendentemente completo).
Por ahora, hay dos lecciones que se pueden aprender. Primero, qu es lo que hace
"ls". Prueba tambin con unos cuantos directorios de los que se muestran en el rbol
de la figura anterior y fjate en su contenido. Naturalmente, algunos estarn vacos, y
otros tendrn muchos archivos dentro. Utiliza "ls" con y sin la opcin "-F". Por ejemplo,
"ls /usr/local" debe aparecer ms o menos as:

Pgina 128 de 384

Linux

/home/fulanito$ ls /usr/local
rchives bin emacs etc ka9q lib tcl
/home/fulanito$
La segunda leccin es ms general. Muchos comandos Unix son como "ls". Tienen
opciones, que en general consisten de un carcter precedido por un guin, y tienen
parmetros. A diferencia de "ls", algunos comandos requieren ciertos parmetros y/u
opciones. Para mostrar como se usan los comandos, utilizaremos -del mismo modo
que utiliza la ayuda "man"- el siguiente formato:

ls [-aRF] [directorio]
En general, y desde ahora en adelante, utilizaremos estas plantillas de comandos
antes de introducir comandos nuevos. La primera palabra es el comando (en este
caso "ls"). A continuacin del comando siguen todos los parmetros. Los parmetros
opcionales se encerrarn entre corchetes. Las meta-variables estn inclinadas: son
palabras que toman el lugar de los parmetros reales. (Por ejemplo puedes ver qu
directorio est en cursiva, significa que debe ser reemplazado por el nombre de un
directorio real).
Las opciones son un caso especial. Estn encerradas entre corchetes, pero puedes
utilizar una sola de ellas sin necesidad de emplear todas juntas. Por ejemplo, con las
tres opciones enumeradas antes para el caso de "ls", tienes ocho maneras posibles de
ejecutar el comando: con o sin cada una de las opciones. (compara el resultado de "ls R" con "ls -F" con "ls -aF" con "ls -aR" y as...)

1.1.2. El directorio actual y cd

pwd
El uso de los directorios puede ser insoportable si se tiene que teclear la trayectoria
completa cada vez que se quiere acceso a un directorio. En lugar de ello, los shell de
Unix tienen una caracterstica denominada directorio "actual", "presente", o "de trabajo".
Es muy probable que tu configuracin de shell muestre dicho directorio como parte del
prompt: /home/fulanito. Si no lo hace, pruebe el comando "pwd", que proviene de las
siglas de las palabras "present working directory". (Algunas veces el prompt muestra el
nombre de la mquina. Esto slo es til realmente en un entorno de red en el cual hay
una gran cantidad de mquinas diferentes.)
mimaquina>pwd

Plataforma de Teleformacin de IFES

Pgina 129 de 384

/home/fulanito
mimaquina>

cd [directorio]
Como puedes ver,"pwd" te dice cul es tu directorio actual; se trata de un comando
muy simple. La mayora de los comandos acta, de forma predeterminada, sobre el
directorio actual. Podemos cambiar nuestro directorio actual mediante el comando "cd".
Por ejemplo, prueba:
/home/fulanito$ cd /home
/home$ ls -F
fulanito/ sam/ shutdown/ steve/ user1/
/home$
Si omites el parmetro opcional directorio, retornars a tu directorio raz personal, o al
directorio original. De otro modo"cd" te cambiar al directorio especificado. Por ejemplo:
/home$ cd
/home/fulanito$ cd /
/$ cd home
/home$ cd /usr
/usr$ cd local/bin
/usr/local/bin$
Como puedes ver,"cd" te permite expresar el directorio de destino con trayectorias
absolutas o relativas. Una trayectoria absoluta comienza con una "/" y especifica todos
lo directorios que existen antes del archivo que deseas. Una trayectoria relativa est
referida a tu directorio actual. En el ejemplo anterior, cuando estaba en "/usr", hicimos
un movimiento relativo a "local/bin". "local" es un directorio que existe bajo "/usr", y
"bin" es un directorio bajo "local". ("cd home" tambin fue un cambio de directorio
relativo.).
Existen dos directorios que se utilizan solamente para trayectorias relativas:
el directorio "." se refiere al directorio actual, y ".." es el directorio anterior. Son
"abreviaturas" de directorio, y existen en todos los directorios, aunque no encajan bien
en la idea de "carpeta dentro de carpeta" son ms bien representaciones de las ideas
directorio actual y directorio anterior/superior, respectivamente:
El uso del directorio ".." es ms til cuando queremos "retroceder" o "subir":
/usr/local/bin$ cd ..
/usr/local$ ls -F
archives/ bin/ emacs@ etc/ ka9q/ lib/ tcl@

Pgina 130 de 384

Linux

/usr/local$ ls -F ../src
cweb/ linux/ xmris/
/usr/local$
En este ejemplo, cambiamos al directorio anterior mediante "cd .." y luego listamos el
directorio /usr/src desde /usr/local utilizando el nombre ../src.
Debes advertir que si hubisemos estado en /home/fulanito, ejecutar el comando "ls F ../src" no me habra servido al propsito de ver lo que hay en /usr/src.
Demasiado lo? pues en realidad no es nada complejo, quiz s lo sea abstraerse de
este texto si es que no tienes una consola de texto Linux delante. Sin embargo, slo es
cuestin de jugar un rato con los comandos "ls" y "cd" de forma que asimiles y puedas
casi prever los resultados hasta el punto de que se conviertan en un lenguaje natural
entre el sistema de archivos y t. Seguimos.
El directorio "~/" es un alias (un mote, un apodo: un alias) para tu directorio personal.
/usr/local$ ls -F ~/
/usr/local$
Puedes ver que an no hay nada en tu directorio personal (el que cuelga de home con
nuestro nombre de usuario, del tipo /home/fulanito). "~/" ser ms til a medida que
aprendamos ms acerca de como manipular los archivos.

1.1.3. Creacin y borrado de directorios

mkdir directorio1 [directorio2 ... directorioN]


En Unix, crear directorios es extremadamente simple, y puede ser una muy til
herramienta de organizacin. Para crear un nuevo directorio, utiliza el comando "mkdir".
Por supuesto, "mkdir" viene de make directory.
Con un pequeo ejemplo, veremos cmo funciona:
/home/fulanito$ ls -F
/home/fulanito$ mkdir nuevodir
/home/fulanito$ ls -F
nuevodir/
/home/fulanito$ cd nuevodir
/home/fulanito/nuevodir$
"mkdir" puede tomar ms de un parmetro, a los que interpreta como nombres de
directorios que debe crear.

Plataforma de Teleformacin de IFES

Pgina 131 de 384

rmdir directorio1 [directorio2 ... directorioN]


El opuesto de "mkdir" es "rmdir" (remove directory, borra directorio). "rmdir" trabaja
exactamente igual que "mkdir".
Un ejemplo de "rmdir" es:
/home/fulanito/nuevodir$ rmdir chap1 chap3
rmdir: chap3: No such file or directory
/home/fulanito/nuevodir$ ls -F
chap2/
/home/fulanito/nuevodir$ cd ..
/home/fulanito$ rmdir nuevodir
rmdir: nuevodir: Directory not empty
/home/fulanito$
Como puedes apreciar, "rmdir" se niega a borrar un directorio que no existe, y tampoco
permite eliminar directorios que tengan algo dentro. (Recuerda que nuevodir tiene un
subdirectorio, chap2, dentro de l) Hay aqu una cuestin interesante: qu pasa si
intento eliminar mi directorio actual? Averigmoslo:
/home/fulanito$ cd nuevodir
/home/fulanito/nuevodir$ ls -F
chap2/
/home/fulanito/nuevodir$ rmdir chap2
/home/fulanito/nuevodir$ rmdir .
rmdir: .: Operation not permitted
/home/fulanito/nuevodir$
Lo mismo sucede si intentas eliminar el directorio anterior al directorio actual. Bien, esto
no es un problema nuevo: el directorio anterior al actual no est vaco (existe el actual
en l), as que no puede ser borrado.

Pgina 132 de 384

Linux

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.1. El sistema de archivos

1.2. Archivos
Introduccin
Los directorios nos han permitido organizar la informacin segn una estructura o rbol
de directorios pero la informacin propiamente dicha no es la estructura sino que est
contenida dentro de los archivos. Y los archivos contienen datos.
Los comandos ms bsicos para manipular archivos en Unix son "cp", "mv", y "rm". De
copy, move y remove (copiar, mover y borrar respectivamente).

1.2.1 Copiando

cp [-i] fuente destino


cp [-i] archivo1 archivo2 . . . archivoN
directorio-de-destino
"cp" es una utilidad muy prctica en Unix, y adems muy poderosa. Debes ser muy
cuidadoso con "cp" sobre todo si no dispones de una cantidad importante de espacio
en disco.
"cp" tambin puede sobreescribir archivos existentes sin previo aviso (trataremos este
tema ms adelante) pero vayamos poco a poco.
Hablaremos primero acerca de la primer lnea en la plantilla del comando. El primer
parmetro de "cp" es el nombre del archivo que hay que copiar, el segundo es el lugar
donde se desea depositar la copia. Puede obtener una copia con un nombre distinto, o
una en un directorio diferente.
Veamos algunos ejemplos:
/home/fulanito$ ls -F /etc/passwd
/etc/passwd
/home/fulanito$ cp /etc/passwd .
/home/fulanito$ ls -F
passwd
Plataforma de Teleformacin de IFES

Pgina 133 de 384

/home/fulanito$ cp passwd rana


/home/fulanito$ ls -F
frog passwd
/home/fulanito$
El primer comando "cp" tom el archivo /etc/passwd, que contiene los nombres de
todos los usuarios en un sistema Unix, y lo copi en el directorio actual "."
"cp" no borra el archivo fuente, as que no hicimos nada que pudiera daar el sistema.
En este momento existen dos copias del archivo /etc/passwd, ambas se denominan
passwd, pero una est en el directorio /etc y la otra en /home/fulanito.
Luego, creamos una tercera copia de /etc/passwd cuando tecleamos "cp passwd rana"
Ahora hay tres copias: /etc/passwd, /home/fulanito/passwd y /home/fulanito/rana. El
contenido de esos tres archivos es el mismo, sus nombres de archivo difieren.
"cp" puede copiar archivos entre directorios si el primer parmetro es un archivo y el
segundo es un directorio. En este caso, el nombre simple (sin la trayectoria o path)
de destino coincidir con el original, para cada archivo. Es decir, que si al dar el path
destino omitimos el nombre del archivo se le asignar el mismo nombre que tena en su
localizacin original.
Tambin se puede copiar un archivo y cambiar su nombre de destino en una sola
operacin, caso que se da cuando ambos parmetros son nombres de archivo. Aqu
reside uno de los peligros de "cp". Si tecleara "cp /etc/passwd /etc/group", el comando
"cp" creara normalmente un archivo nuevo con el contenido idntico al de /etc/passwd
y con el nombre /etc/group. Por lo tanto, si /etc/group ya existiera, "cp" destruira el
contenido del antiguo sin darle la oportunidad de guardarlo. (Ni siquiera escribir un
mensaje en el cual le advierta que est por destruir un archivo al copiarle otro encima.)
Observemos otro ejemplo de "cp":
/home/fulanito$ ls -F
rana passwd
/home/fulanito$ mkdir passwd_version
/home/fulanito$ cp rana passwd passwd_version
/home/fulanito$ ls -F
rana passwd passwd_version/
/home/fulanito$ ls -F passwd_version
rana passwd
/home/fulanito$
Cmo usamos "cp" en este caso? Evidentemente, "cp" puede tomar ms de dos
parmetros, como se puede apreciar en la segunda lnea de plantillas del comando. Lo
que el comando anterior realiz es copiar los archivos que aparecen listados (rana y
Pgina 134 de 384

Linux

passwd) al directorio passwd versin. De hecho, "cp" puede tomar cualquier nmero de
parmetros: interpreta los primeros parmetros como los nombres de archivo que debe
copiar, y el ltimo parmetro como el nombre del directorio al cual se deben copiar los
anteriores.
No puede renombrar archivos cuando copia ms de uno a la vez, siempre mantienen
su nombre simple.
Esto nos lleva a otra pregunta interesante Qu es lo que pasara si tecleamos "cp
rana passwd sapo", donde rana y passwd son archivos existentes pero sapo no es un
directorio? Intntalo y lo descubrirs.

1.2.2. Borrando

rm [-i] archivo1 archivo2 . . . archivoN


Ahora que hemos aprendido cmo crear millones de archivos con "cp" (muy pronto
encontrars otras maneras de crear ms archivos), sera til entonces aprender la
manera de borrarlos. De hecho, es muy simple: el comando que necesitamos (el
equivalente a "rmdir" para archivos es, claro, "rm". Cualquier archivo cuyo nombre se
pasa como parmetro a "rm" se borra. Por ejemplo:
/home/fulanito$ ls -F
rana passwd passwd_version/
/home/fulanito$ rm rana sapo passwd
rm: sapo: No such file or directory
/home/fulanito$ ls -F
passwd_version/
/home/fulanito$
Como se puede apreciar, "rm" es extremadamente servicial e inocente, no slo no pide
tu confirmacin, sino que borra todo lo que hayas escrito en la lnea de comandos y que
exista (y siempre, claro, que no vulnere los permisos del archivo/escritorio). Esto puede
ser -es- peligroso en el caso de que hayamos introducido algo por error en la lnea de
comandos. La equivocacin en un slo carcter puede provocar que si se encuentra
un objetivo que casualmente coincida con la orden, desaparezca. As que es muy
importante controlar lo que se ha escrito en la lnea de comandos antes de presionar
Intro.

Plataforma de Teleformacin de IFES

Pgina 135 de 384

1.2.3. Moviendo

mv [-i] nombre-viejo nombre-nuevo


mv [-i] archivo1 archivo2 . . . archivoN nuevodirectorio
"mv" se parece mucho a "cp", excepto que borra el archivo original despus de
copiarlo. Se puede entender como la utilizacin conjunta de "cp" y "rm". Veamos que se
puede hacer con l:
/home/fulanito$ cp /etc/passwd .
/home/fulanito$ ls -F
passwd
/home/fulanito$ mv passwd rana
/home/fulanito$ ls -F
rana
/home/fulanito$ mkdir report
/home/fulanito$ mv rana report
/home/fulanito$ ls -F
report/
/home/fulanito$ ls -F report
rana
/home/fulanito$
Lo has seguido? ah va el resumen:
Como se puede ver, "mv" renombra un archivo (que es el primer parmetro) si el
segundo parmetro es un archivo. Si el segundo parmetro es un directorio, "mv"
mover el archivo al nuevo directorio, manteniendo el mismo nombre simple.
Aqu tambin deber ser muy cuidadoso -siempre, siempre- con "mv" el comando no
controla si el archivo ya existe, y borrar cualquier archivo que hubiera con el nombre
de destino. Por ejemplo, si ya tengo un archivo de nombre rana existente en mi
directorio report, el comando "mv rana report" borrar el archivo /report/rana y lo
reemplazar con el nuevo rana.
De hecho, existe una manera de lograr que tanto "rm", "cp", y "mv" te consulten antes
de eliminar archivos. Los tres comandos nombrados aceptan la opcin "-i" a tal efecto.

Pgina 136 de 384

Linux

De modo que... tanta alarma social de nuevo para algo que se puede resolver as de
fcil? incluso ms fcil y cmodamente:
Si utilizas un alias puedes hacer que el shell (el intrprete de comandos) ejecute: "rm -i"
automticamente cuando teclees: "rm".
Y ahora, intuyes que es un alias,pero todava no lo tienes del todo?
Para resolver definitivamente esa mnima inquietud, slo tienes que seguir leyendo la
siguiente unidad.

Plataforma de Teleformacin de IFES

Pgina 137 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.1. El sistema de archivos

Autoevaluacin: Sistema de arhivos


Unas preguntas sencillitas sobre las rdenes iniciales con el teclado.
Pregunta 1:
Cul es la diferencia entre ls y ls . (con un punto)?
Respuesta correcta: ninguna
Pregunta 2:
Cul es el directorio raz?
Respuesta correcta: /
Pregunta 3:
Qu orden nos indica cul es el directorio actual?

ls
ls-rtl
path
pwd

Respuesta correcta: pwd


Pregunta 4:
Para copiar las imgenes con extensin .jpg del directorio /var/www/img al
directorio /tmp qu orden podemos utilizar?
Respuesta correcta: cp /var/www/img/*.jpg /tmp
Pregunta 5:
Para recuperar archivos que hemos borrado con la orden rm, utilizaremos...

No podemos recuperarlos
rm -r nombre_archivo
recover nombre_archivo
cp /trash/nombre_archivo

Respuesta correcta: No podemos recuperarlos

Pgina 138 de 384

Linux

Linux / MDULO 3. ADMINISTRACIN BSICA

U.D.2. SHELL
Introduccin
Ahora que ya hemos empezado a conocerlo veamos con ms rigor qu es un
Intrprete de comandos o shell. No es ms que un programa informtico lector
de lneas de texto que un usuario puede utilizar para lanzar rdenes -en forma de
comandos- a un sistema operativo y recibir respuestas de l. En este apartado cuando
hablemos de bash, nos referimos al intrprete de comandos ms habitual de Linux, que
se utiliza cuando iniciamos una consola o terminal en modo texto.
Habitualmente la ejecucin de comandos del usuario se realiza por medio de
una interfaz de lnea de comandos (CLI). Suelen incorporar caractersticas tales
como control de procesos, redireccin de entrada/salida, ficheros, proteccin,
comunicaciones y un lenguaje de rdenes para escribir programas por lotes o (scripts).
Los principales intrpretes de comandos son:

cmd.exe: equivalente al command.com en los sistemas Windows de la


familia NT y XP. Es, en estos sistemas operativos, tan solo una aplicacin,
a diferencia de las versiones anteriores en las que era parte del ncleo del
sistema operativo.

Unix shell: es el nombre que se le da al intrprete de comandos en los


sistemas de la familia UNIX.

2.1. Comodines
En el captulo anterior, se presentaron los comandos para gestionar ficheros "cp",
"mv", y "rm". A veces, se querr tratar con ms de un fichero a la vez, en realidad
con muchos a la vez. Por ejemplo, se quieren copiar todos los ficheros que empiecen
por data en un directorio llamado /backup. Se podra hacer esto ejecutando muchos
comandos "cp", o escribiendo cada fichero en una lnea de comando. Estos dos
mtodos llevan mucho tiempo, adems, se tienen muchas posibilidades de cometer
errores.
Una buena manera de hacer este trabajo es teclear:
/home/fulanito/report$ ls -F

Plataforma de Teleformacin de IFES

Pgina 139 de 384

1993-1 1994-1 data1 data5


1993-2 data-new data2
/home/fulanito/report$ mkdir ~/backup
/home/fulanito/report$ cp data* ~/backup
/home/fulanito/report$ ls -F ~/backup
data-new data1 data2 data5
/home/fulanito/report$
Como se puede observar en "cp data* ~/backup", el asterisco indica a "cp" que tome
todos los ficheros que empiecen por data y los copie a /backup. Qu crees que "cp
d*w /backup" hara?

2.1.1. Y qu ocurre realmente?


Ocurre que hay un par de caracteres especiales interceptados por el shell. El carcter
"*", un asterisco, dice "cambia esta palabra con todos los ficheros que se ajusten a esta
especificacin". As, el comando "cp data* /backup" cambia a "cp data-new data1 data2
data5 /backup" antes de ejecutarse.
Para ilustrar esto, introduciremos un comando nuevo: "echo". "echo" es un comando
extremadamente simple; repite, o muestra, cualquier parmetro que le pasamos. De
este modo:
/home/fulanito$ echo Hola!
Hola!
/home/fulanito$ echo Cmo te encuentras?
Cmo te encuentras?
/home/fulanito$ cd report
/home/fulanito/report$ ls -F
1993-1 1994-1 data1 data5
1993-2 data-new data2
/home/fulanito/report$ echo 199*
1993-1 1993-2 1994-1
/home/fulanito/report$ echo *4*
1994-1
/home/fulanito/report$ echo *2*
1993-2 data2
/home/fulanito/report$
Como se puede ver, el shell expande el comodn y pasa todos los ficheros al programa
que se va a ejecutar. Esto plantea una pregunta interesante (otra ms): qu ocurre si
no hay ficheros que se ajusten a la especificacin del comodn? Prueba "echo /rc/fr*og"
y bash pasar literalmente la especificacin del comodn al programa.

Pgina 140 de 384

Linux

Otros intrpretes de comandos, como tcsh, en vez de pasar el comodn literalmente,


contestarn No match. Aqu est el mismo comando ejecutado bajo tcsh en lugar de
bash:
mimaquina>echo /rc/fr*og
echo: No match.
mimaquina>
Ves? los diferentes intrpretes de comando tienen comportamientos particulares
dentro de una, digamos, gramtica comn. El ms extendido, sin embargo, es bash y
sobre l seguiremos trabajando (lo encontraremos en la mayora de las distribuciones
Linux).
La ltima -perdn, siempre penltima- pregunta que podra hacerse es qu pasa si
quisiera mostrar data*, en vez de la lista de nombres? Bien, tanto en bash como en
tcsh, slo se debe incluir la cadena entre comillas:
/home/fulanito/report$ echo "data*"
data*
/home/fulanito/report$
o bien
mimaquina>echo "data*"
data*
mimaquina>

2.1.2. El signo de interrogacin


Adems del asterisco, el shell tambin interpreta un signo de interrogacin como un
carcter especial. Un signo de interrogacin coincidir con un carcter. Y slo uno. Por
ejemplo, "ls /etc/??" mostrar todos los ficheros de dos letras en el directorio /etc.

2.2. Ganar tiempo con BASH

2.2.1. Editando la lnea de comandos


A veces, escribes un comando largo en bash y, antes de pulsar Intro, te das cuenta
de que has cometido un error al escribirlo. Se puede simplemente borrar todo y volver
a teclear correctamente, pero... ese tiempo podras invertirlo en hacer cosas ms
interesantes. De modo que se pueden usar las flechas para moverse, borrar el/los
carcter/es incorrecto/s, y escribir la informacin correctamente.

Plataforma de Teleformacin de IFES

Pgina 141 de 384

Hay muchas teclas especiales que ayudan a editar la lnea de comandos. Por ejemplo,
la combinacin de teclas /Ctrl/+/t/ intercambia dos caracteres adyacentes.

2.2.2. Completado de comandos y nombres de


fichero
Otra peculiaridad de bash es la ejecucin automtica de las lneas de comando. Por
ejemplo, veamos el siguiente ejemplo de un comando "cp" tpico:
/home/fulanito$ ls -F
ficherolargo
/home/fulanito$ cp ficherolargo fichero
/home/fulanito$ ls -F
fichero ficherolargo
/home/fulanito$
Puede ser molesto tener que teclear cada letra de ficherolargo cada vez que se quiere
acceder a l, sucede lo mismo si queremos crear ficherolargo copiando en l /etc/
passwd2. Ahora, aprenderemos a escribir el anterior comando "cp" ms rpidamente y
con menos posibilidad de error.
Si tecleamos cp fiche y luego pulsamos /Tab/, bash encontrar fichero y
ficherolargo y podremos seleccionar unos de ellos; o bien teclear ficherol y ya slo
nos aparecer ficherolargo. Es decir que si se intenta un completado y bash avisa de
que hay ms opciones, se puede pulsar inmediatamente /Tab/ otra vez para conseguir
una lista de todos los ficheros que coincidan con el patrn. De este modo, si no se est
seguro del nombre exacto del fichero, podemos teclear los primeros caracteres del
nombre y buscarlo en una lista ms pequea de ficheros.

2.3. La entrada estndar y la salida estndar


Intentemos abordar un problema simple: conseguir un listado del directorio /usr/
bin. Si hacemos "ls /usr/bin", al ser un directorio con abundantes archivos, algunos
de los nombres de los ficheros se saldran por arriba de la pantalla (es un decir,
porque afortunadamente el texto todava no consigue salir del mundo virtual ms
que por medio de la impresora. Si en tu caso s sale por encima de la pantalla, sera
conveniente que te levantaras un rato de la silla e hicieras un parntesis en el trabajo).
Y ahora cmo se pueden ver todos los ficheros? A continuacin respondemos
ordenadamente esta cuestin, introduciendo algunos conceptos (im)prescindibles (a tu
juicio queda).

Pgina 142 de 384

Linux

2.3.1. Algunos conceptos (ms) de Unix


El sistema operativo Unix facilita mucho a los programas el uso del terminal. Cuando
un programa escribe algo en la pantalla, est usando algo llamado salida estndar.
Salida estndar, en ingls standard output o stdout, es la manera que tiene el programa
de escribirle cosas al usuario. El nombre por el que se indica un programa es entrada
estndar (stdin). Es posible que un programa se comunique con el usuario sin usar la
entrada o salida estndar, pero la mayora de los comandos que se tratan en este libro
usan stdin y stdout.
Por ejemplo, el comando "ls" imprime una lista de los directorios en la salida estndar,
que est normalmente "conectada" al terminal. Un comando interactivo, como el shell
lee los comandos de la entrada estndar.
En esta seccin, examinaremos tres modos de enredarse con la entrada y salida
estndar: redireccionar la salida, redireccionar la entrada, y las tuberas.

2.3.2. Redireccionar la salida


Un aspecto muy importante de Unix es la posibilidad de redireccionar la salida. Esto
permite que, en vez de ver los resultados de un comando, los salvemos en un fichero
o los enviemos directamente a una impresora. Por ejemplo, para redireccionar la
salida del comando "ls /usr/bin", se coloca un signo ">" al final de la lnea, y se indica el
fichero donde dejar la salida:
/home/fulanito$ ls
/home/fulanito$ ls -F /usr/bin > listado
/home/fulanito$ ls
listado
/home/fulanito$
Como se puede ver, en lugar de escribir los nombres de todos los ficheros, el comando
crea un fichero totalmente nuevo en el directorio actual. Echemos un vistazo a este
fichero usando el comando "cat".
"cat" es un comando de intil apariencia que copia lo que se escribe (entrada estndar)
al terminal (o salida estndar). Pero "cat" tambin imprime un fichero en la salida
estndar si se indica el fichero como parmetro. A pesar de todo, "cat" hace algunas
cosas interesantes cuando se redirecciona su salida. Qu hace el comando "cat
listado > fichero"? Normalmente, el "> fichero" dice "coge toda la salida del comando y

Plataforma de Teleformacin de IFES

Pgina 143 de 384

ponla en fichero". La salida del comando "cat listado" es el fichero listado. As hemos
inventado un nuevo (aunque no tan eficaz) mtodo de copiar ficheros.
Qu ocurre con el comando "cat > zorro"? Cuando zorro no existe todava, "cat"
lee cada lnea escrita en el terminal (entrada estndar) y la imprime de vuelta (salida
estndar) hasta que lee Ctrl+d . En este caso, la salida estndar se ha redireccionado
al fichero zorro. Ahora "cat" sirve como un editor rudimentario:
/home/fulanito$ cat > zorro
El rpido zorro marrn salta sobre el descuidado perro.
pulsa Ctrl+d
Ahora se ha creado el fichero zorro que contiene la frase "El rpido zorro marrn salta
sobre el descuidado perro". Un ltimo uso del verstil comando "cat" es concatenar
ficheros. "cat" imprimir cada fichero dado como parmetro, uno despus de otro.
El comando "cat listado zorro" imprimir el listado del directorio /usr/bin, y luego tan
brillante frase. As, el comando "cat listado zorro > listyzorro" crear un nuevo fichero
conteniendo los contenidos de listado y zorro.

2.3.3. Las tuberas


Muchos comandos Unix producen gran cantidad de informacin. Por ejemplo, es
normal que un comando como "ls /usr/bin" produzca ms salida que la que se puede
ver en pantalla. Para que se pueda ver toda la informacin de un comando como "ls /
usr/bin", es necesario usar otro comando Unix llamado "more".
"more" parar cada vez que la pantalla se llene de informacin. Por ejemplo, "more < /
etc/rc" mostrar el fichero /etc/rc como lo hara "cat /etc/rc", excepto que "more" permite
leerlo poco a poco. "more" tambin admite el comando "more /etc/rc", y esa es la forma
normal de invocarlo.
Sin embargo, eso no ayuda al problema de que "ls /usr/bin" muestre ms informacin
de la que se pueda ver. Se podra hacer esto:
/home/fulanito$ ls /usr/bin > temp-ls
/home/fulanito$ more temp-ls
..
/home/fulanito$ rm temp-ls
Pero, Unix propone una forma ms directa de hacerlo. Se puede usar el comando "ls /
usr/bin | more".

Pgina 144 de 384

Linux

El carcter "|" es una tubera. Como una tubera de agua, una tubera Unix controla el
flujo. En lugar de agua, se controla el flujo de informacin.
Los filtros son programas muy tiles para usarse en conjuncin con las tuberas. Un
filtro es un programa que lee la entrada estndar, la cambia de alguna manera, y la
saca por la salida estndar. "more" es un filtro: lee los datos que coge de la entrada
estndar y los muestra por la salida estndar pantalla a pantalla, permitiendo leer
el fichero. "more" no es un gran filtro porque su salida no se puede enviar a otro
programa. Otro ejemplo, muy til, sera:
/home/fulanito$ find / -name rana | more
Realiza la bsqueda en el directorio raz (en toda la particin) de todos los archivos y
directorios denominados rana y dirige la salida al comando "more", es decir muestra la
salida pgina por pgina si los resultados desbordaban la capacidad de la pantalla.
Otros filtros incluyen los programas "cat", "sort", "head", y "tail". Por ejemplo, si se
quiere leer slo las primeras diez lneas de la salida de "ls", se puede usar "ls /usr/bin |
head" (del ingls cabeza) "tail" por el contrario (del ingls cola) se usara para las diez
ltimas. Y "sort" ordenara (para ms informacin ejecutar en shell "man sort")

Plataforma de Teleformacin de IFES

Pgina 145 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.2. SHELL

2.4. Multitarea
2.4.1. Usando el control de trabajos
Control de trabajos se refiere a la habilidad de situar procesos (esencialmente, otra
palabra para programas en ejecucin) en background (segundo plano) y colocarlos
de vuelta en foreground (primer plano). Esto es como decir, que se quiere ser capaz
de ejecutar algo mientras se hacen otras cosas, pero que estn ah otra vez cuando
se les quiera decir algo o pararlas. En Unix, la principal herramienta para el control de
procesos es el shell. Seguir la pista de los procesos por ti, si aprendes a hablar su
lenguaje.
Las dos palabras ms importantes en ese lenguaje son "fg", para primer plano, y
"bg", para segundo plano. Para entender como funcionan, usa el comando "yes" en el
indicador del sistema.
/home/fulanito$ yes
Esto produce el maravilloso efecto de desplazar una larga columna de yes por la parte
izquierda de la pantalla, tan rpido que no se pueden seguir. Para pararlo, se podra
pulsar Ctrl+c y matarlo, pero esta vez presionars Ctrl+z . Parece haberse detenido,
pero saldr un mensaje antes del indicador de sistema, ms o menos parecido a este:
[1]+ Stopped yes
Significa que el trabajo yes se ha suspendido en el segundo plano. Se puede hacer
que siga ejecutndose tecleando "fg" en el indicador de sistema, que lo pondr en
primer plano otra vez. Si se desea, se pueden hacer otras cosas antes, mientras
est suspendido. Prueba unos cuantos "ls"o algo antes de ponerlo en primer plano
nuevamente. Una vez que ha vuelto al primer plano, los yes empezarn a salir otra vez,
tan rpido como antes.
No hay que preocuparse de que si mientras ha estado suspendido el sistema ha
"almacenado" ms yes para enviarlas a la pantalla: cuando un trabajo se suspende el
programa entero no se ejecuta hasta que se le invite a volver a la vida. (Ahora pulsa
Ctrl+c para matarlo de veras).
Analicemos ahora el mensaje que obtuvimos del shell:
[1]+ Stopped yes
El nmero entre corchetes es el nmero de trabajo de este proceso, y se usar cuando
se necesite referenciarlo especficamente. (Naturalmente, desde el momento que

Pgina 146 de 384

Linux

tengamos en ejecucin mltiples trabajos, se necesita un modo de acceder a cada


uno). El "+" siguiente indica que ese es el "trabajo actual", esto es, el proceso ms
reciente que se ha movido del primer plano al segundo.
Si se tecleara "fg", se pondra el trabajo con el "+" en primer plano otra vez. La
palabra Stopped significa que el trabajo est "parado". El trabajo no est muerto, pero
actualmente no se ejecuta. Linux lo ha guardado en un estado especial de suspensin,
listo para saltar a la accin cuando alguien lo solicite. Finalmente, el yes es el nombre
del trabajo que se ha detenido.
Antes de seguir adelante, mataremos este trabajo y lo arrancamos otra vez de forma
diferente. El comando se llama "kill" y se usa del siguiente modo:
/home/fulanito$ kill %1
[1]+ Stopped yes
/home/fulanito$
Ese mensaje sobre el proceso que indica "parado" otra vez induce a error. Para saber
si an est vivo (eso es, tanto en ejecucin como congelado en un estado suspendido),
teclea "jobs":
/home/fulanito$ jobs
[1]+ Terminated yes
/home/fulanito$
Ahora ya lo sabes: el trabajo ha terminado (Es posible que el comando "jobs" no
muestre nada, lo que simplemente significa que no hay trabajos ejecutndose en
segundo plano. Si se acaba de matar un trabajo, y al teclear "jobs" no muestra
nada, se tiene la seguridad de que el comando "kill" se ha ejecutado correctamente.
Normalmente indicar que el trabajo ha terminado.)
Ahora, ejecuta yes de nuevo, de esta forma:
/home/fulanito$ yes > /dev/null
Al conocer ya la idea de redireccin de entrada y salida, sabrs que se est enviando la
salida de yes a un fichero especial llamado /dev/null. /dev/null es un agujero negro que
se,traga cualquier salida que se le enve.
Despus de teclear esto, no se recuperar el indicador de sistema, pero tampoco
saldr esa columna de yes. Sin embargo la salida se est enviando a /dev/null, el
trabajo an se ejecuta en primer plano. Como siempre, se puede suspender pulsando
Ctrl+z. Hazlo ahora para volver al indicador del sistema.
/home/fulanito$ yes > /dev/null
["yes" se ejecuta, y a continuacin se pulsa Ctrl+z]

Plataforma de Teleformacin de IFES

Pgina 147 de 384

[1]+ Stopped yes >/dev/null


/home/fulanito$
Hay alguna forma de ponerlo en ejecucin en segundo plano, mientras deja el
indicador del sistema para trabajar de forma interactiva? El comando para hacer eso es
"bg":
/home/fulanito$ bg
[1]+ yes >/dev/null &
/home/fulanito$
Ahora, debers ejercitar tu confianza en los dems: despus de teclear "bg", el trabajo
"yes > /dev/null" habr continuado con su ejecucin otra vez, pero esta vez en segundo
plano/invisiblemente. De hecho, si haces alguna cosa en el prompt, como "ls", te
dars cuenta de que tu mquina se ha ralentizado un poco (generar y descargar
continuamente una cadena preparada de "yes" lleva algo de tiempo, al fin y al cabo)
Aparte de esto, no hay ningn otro efecto. Se puede hacer lo que se desee en el
indicador del sistema, y yes continuar de forma autnoma y transparente enviando su
salida al agujero.
Ahora hay dos formas diferentes de matarlo (es la traduccin literal del comando..):
con el comando "kill" que ya se explic, o situar el trabajo en primer plano de nuevo
e interrumpirlo con una interrupcin, Ctrl+c. Probemos esta segunda forma, slo para
entender la relacin entre "fg" y "bg" un poco mejor.
/home/fulanito$ fg
yes >/dev/null
[ahora esta en primer plano. Imagina que pulsamos Ctrl+c para terminarlo]
/home/fulanito$
Bueno, se acab. Ahora, ejecuta unos cuantos trabajos simultneamente, como estos:
/home/fulanito$ yes > /dev/null &
[1] 1024
/home/fulanito$ yes | sort > /dev/null &
/home/fulanito$ yes | uniq > /dev/null
[y aqu, pulsa Ctrl+z para suspenderlo, por favor]
[3]+ Stopped yes | uniq >/dev/null
/home/fulanito$
La primera cosa que te debe llamar la atencin de estos comandos es la terminacin
"&" al final de los dos primeros. Poner un "&" despus del comando indica al shell que
los ejecute en segundo plano desde el principio. (Es una forma de evitarse tener que
ejecutar el programa, pulsar Ctrl+z, y luego teclear "bg".)

Pgina 148 de 384

Linux

As, estos dos comandos han empezado a ejecutarse en segundo plano. El tercero est
suspendido e inactivo en este momento. Te puedes dar cuenta de que la mquina se
ha vuelto ms lenta, ya que los que se estn ejecutando requieren un poco de tiempo
de CPU. Cada uno indica su nmero de trabajo. Los dos primeros tambin muestran
sus nmeros de identificacin de proceso, o PID, despus del nmero de trabajo. Los
PIDs normalmente no son algo que se necesite conocer, pero a veces s vienen bien.
Matemos el segundo, ya que creo que est ralentizando tu mquina. Se puede teclear
"kill %2", pero eso sera demasiado fcil. En su lugar, haz esto:
/home/fulanito$ fg %2
yes | sort >/dev/null
[pulse Ctrl+c para matarlo]
/home/fulanito$
Como ves, "fg" toma parmetros empezando con "%". De hecho, se podra teclear slo
esto:
/home/fulanito$ %2
yes | sort >/dev/null
[pulse Ctrl+c para matarlo]
/home/fulanito$
Y funcionar igual porque el shell automticamente interpreta un nmero de trabajo
como una peticin para poner ese trabajo en primer plano. Ahora teclea "jobs" para ver
qu trabajos quedan en ejecucin:
/home/fulanito$ jobs
[1]- Running yes >/dev/null &
[3]+ Stopped yes | uniq >/dev/null
/home/fulanito$
El "-" indica que ese trabajo nmero 1 es segundo en la lista para ser puesto en el
primer plano, si slo se teclea "fg" sin dar parmetros. El "+" indica que el trabajo
especificado es el primero en la lista. Un "fg" sin parmetros pondr al trabajo nmero
3 en el primer plano. Sin embargo, se puede acceder a l llamndolo, si se desea,
mediante:
/home/fulanito$ fg %1
yes >/dev/null
[ahora pulse Ctrl+z para suspenderlo]
[1]+ Stopped yes >/dev/null
/home/fulanito$
Al cambiar al trabajo nmero 1 y luego suspenderlo han cambiado las prioridades de
todos los trabajos de usuario. Esto se puede ver con el comando "jobs":

Plataforma de Teleformacin de IFES

Pgina 149 de 384

/home/fulanito$ jobs
[1]+ Stopped yes >/dev/null
[3]- Stopped yes | uniq >/dev/null
/home/fulanito$
Ahora, los dos estn parados (porque los dos se han suspendido con Ctrl+z), y el
nmero 1 es el siguiente en la lista a entrar en primer plano. Esto es as porque se le
puso en el primer plano manualmente, y luego fue suspendido. El "+" siempre se refiere
al trabajo ms reciente que ha sido suspendido del primer plano. Se puede continuar
con su ejecucin otra vez:
/home/fulanito$ bg
[1]+ yes >/dev/null &
/home/fulanito$ jobs
[1]- Running yes >/dev/null
[3]+ Stopped yes | uniq >/dev/null
/home/fulanito$
Fjate que ahora est en ejecucin, y el otro trabajo se ha movido en la lista y tiene el
"+".
Ahora lo matamos para que el sistema no est permanentemente ralentizado por
procesos que no hacen nada.
/home/fulanito$ kill %1 %3
[3] Terminated yes | uniq >/dev/null
/home/fulanito$ jobs
[1]+ Terminated yes >/dev/null
/home/fulanito$
Aparecern varios mensajes sobre la finalizacin de los trabajos.

2.4.2. Teora del control de trabajos


Es importante entender que el control de procesos lo hace el shell. No hay ningn
programa en el sistema llamado "fg"; por eso, "fg", "bg", &, "jobs", y "kill" son internos al
shell.
Por otro lado, cada nmero de trabajo de usuario slo tiene significado para ese
usuario: mi trabajo nmero [1] y tu trabajo nmero [1] son probablemente dos procesos
totalmente diferentes. De hecho, si se est conectado ms de una vez, cada uno de los
shells tendr datos nicos sobre el control de trabajos, as como tambin un usuario
puede tener dos trabajos diferentes con el mismo nmero ejecutndose en dos shells
diferentes.

Pgina 150 de 384

Linux

La manera segura de referenciarlos es usar el nmero IDentificador de Proceso (PID).


Estos nmeros abarcan todo el sistema. Cada proceso tiene su propio, exclusivo
nmero. Dos usuarios diferentes pueden referenciar un proceso por su PID y saber que
estn hablando sobre el mismo proceso (asumiendo que estn conectados en la misma
mquina).
Echmosle un vistazo a un comando ms para entender que son los PIDs. El comando
"ps" lista todos los procesos en ejecucin, incluyendo el shell. Prubalo. Tiene tambin
unas cuantas opciones, de las cuales las ms importantes podran ser -a, -u, y -x.

La opcin -a lista los procesos pertenecientes a algn usuario, no slo los


suyos propios.

La -x lista los procesos que no tienen un terminal asociado a ellos.

Finalmente, la -u da informacin adicional sobre los procesos y es


frecuentemente muy til.

Para hacerse una idea de lo que realmente est haciendo el sistema, se ponen todos
juntos con:
ps -aux
Se pueden ver los procesos que usan ms memoria mirando la columna %MEM, y ms
CPU mirando a la columna %CPU. (La columna TIME lista la cantidad total de tiempo
de CPU usado.)
Otra nota rpida sobre los PIDs. "kill", aparte de tomar opciones de la forma
%numerodetrabajo, toma opciones de los PIDs en crudo. Esto es, si lanzas un "yes
> /dev/null" en segundo plano, ejecutas "ps", y buscas el yes. Luego tecleas "kill PID",
siendo PID el que corresponde a nuestro proceso objetivo (yes). ste se interrumpir al
pulsar Intro.

Plataforma de Teleformacin de IFES

Pgina 151 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.2. SHELL

2.5. Consolas virtuales o cmo estar en varios lugares a la vez


Linux da soporte para consolas virtuales. Son una manera de hacer que una simple
mquina aparezca como mltiples terminales, todos conectados al mismo ncleo
Linux. Usar las consolas virtuales es una de las cosas ms simples en Linux: hay "hot
keys" (combinaciones de teclas) para cambiar entre las consolas rpidamente. Para
probarlo -una vez iniciado Linux, claro- pulsa la combinacin de teclas Alt+F2.
Te encontrars con otra solicitud de comando/identificacin. No te alarmes: ahora ests
en la consola virtual (VC) nmero 2. Conctate con el mismo u otro usuario/contrasea
y haz algunas cosas: unos cuantos "ls" o lo que sea para confirmar que es un shell
real. Ahora puedes volver a la VC nmero 1, pulsando Alt+F1. Te puedes mover a una
tercera VC, de la misma forma (Alt+F3).
Generalmente los sistemas Linux vienen con un mnimo de cuatro VC activadas
por defecto. Aumentarlas implica editar uno o dos ficheros en el directorio /etc. Sin
embargo, cuatro deben ser suficientes para la mayora de las personas.
Una vez las haya usado, las VC probablemente se convertirn en una herramienta
indispensable para tener varias tareas ejecutndose a la vez o varias categoras de
tareas organizadas. Por ejemplo en la VC2 estoy trabajando, en la VC2 me estoy
comunicando con mis amigos y en la VC3 estoy jugando, tantas categoras como
particiones tengas en en el disco duro de tu cerebro, por ejemplo.

Modulo 3: Shell
Unas preguntas para a ver si te has ledo la leccin...
Pregunta 1:
Programa informtico lector de lneas de texto que un usuario puede utilizar
para lanzar rdenes -en forma de comandos- a un sistema operativo y recibir
respuestas de l.
Respuesta correcta: Shell
Pregunta 2:
Que funcin tiene el comodin * ?

Nos completa el comando para no tener que teclearlo


Sustituye un caracter por cualquier cosa

Pgina 152 de 384

Linux

Representa cualquier otro carcter o cadena de caracteres.

Respuesta correcta: Representa cualquier otro carcter o cadena de caracteres.


Pregunta 3:
Redireccionar la salida del comando "ls /usr/bin" a un archivo llamado "listado"
Respuesta correcta: ls -F /usr/bin > listado
Pregunta 4:
Que es una tuberia ?

Una tubera consiste en una cadena de procesos conectados de forma tal


que la salida de cada elemento de la cadena es la entrada del siguiente
Es un comando que para la pantalla cada vez que se llena de informacion
Son los tubos por donde pasa la informacin

Respuesta correcta: Una tubera consiste en una cadena de procesos conectados de


forma tal que la salida de cada elemento de la cadena es la entrada del siguiente
Pregunta 5:
Que orden utilizarias para matar un proceso ?

remove 1234
Kill 1234
delete 1234

Respuesta correcta: Kill 1234


Pregunta 6:
Que conbinacin de teclas (hot keys) tienes que pulsar para cambiar a la
cnsola virtual 2?
Respuesta correcta: Alt+F2

Plataforma de Teleformacin de IFES

Pgina 153 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA

U.D.3. Redes
Introduccin
GNU/Linux es un sistema operativo plenamente integrado en la redes. Naci por y
para la red, ha sido desarrollado en red y a travs de Internet y su difusin, evolucin
y futuro casi son inconcebibles sin la existencia de las redes. Y a la inversa, la Internet
que conocemos sera casi inconcebible sin el software libre y los sistemas operativos
descendientes de UNIX, entre ellos GNU/Linux de forma destacada.
Cuando instalamos GNU/Linux en un ordenador, la primera accin que realiza, una vez
que tiene el ordenador controlado, es ir a buscar la salida y conexin a la red; como la
tortuga recin nacida que tras romper el cascarn en la playa va directa a su encuentro
con el mar. El software libre lleva las redes y concretamente Internet en sus instintos
ms profundos.
Internet es tambin una pieza bsica para la evolucin de nuestro sistema. Una vez
que ste ha sido instalado, mantiene contacto regular con el repositorio de programas,
al cual los desarrolladores aaden va Internet nuevas versiones de los programas que
utilizamos, as como parches de seguridad cada vez que se detecta un problema en
alguna aplicacin. Siempre que queramos, podemos contrastar a travs de Internet las
versiones de los programas que tenemos instalados con las del repositorio, con objeto
de realizar las actualizaciones oportunas.
Todo esto a travs de las redes. Y no slo GNU/Linux, sino tambin el escritorio
GNOME ha sido concebido en red y para la red. No en vano el origen de su nombre es
un acrnimo en el que la N responde a Network (red, en ingls).
Por todos estos motivos nuestro sistema est preparado como el mejor para conectarse
a la redes y en especial a Internet. Dependiendo del tipo de conexin, esta seccin de
la Gua no tiene nada que aportar a un buen nmero de usuarios: el sistema encontrar
de forma automtica la salida a Internet, lo que se puede comprobar fcilmente
abriendo un navegador o cualquiera de las numerosas utilidades que nuestro sistema
trae instaladas de serie.
Pero pueden aparecer problemas por el camino. Al igual que ocurra con los
dispositivos, los inconvenientes se debern principalmente a la incompatibilidad de
hardware, a la no disponibilidad de alternativas para GNU/Linux de los drivers no-libres
que los fabricantes ponen a punto para MS Windows o Mac OS X. La vacuna a este

Pgina 154 de 384

Linux

problema sigue siendo la misma: hemos de informarnos sobre la compatibilidad antes


de comprar un mdem, una tarjeta inalmbrica o cualquier otro dispositivo de salida
a la red. Tambin, antes de contratar una conexin a Internet con una operadora o un
proveedor de servicios de acceso, hemos de consultar la viabilidad de sus productos
para salir a Internet desde Linux.

Plataforma de Teleformacin de IFES

Pgina 155 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.3. Redes

3.1. Conexin sin hilos


Introduccin
Movilidad y banda ancha son los dos valores en alza en el mercado mixto de la
informtica de consumo y las telecomunicaciones domsticas. El producto de masas
ms pujante a raz de esta convergencia es el ordenador porttil conectado a una
red sin hilos (wireless). Al principio los porttiles eran cosa de nmadas y obreros
de la tecla resignados a llevarse el trabajo de la oficina a casa, pero en la actualidad
posiblemente los sedentarios sean mayora.
La burbuja inmobiliaria y sus exorbitados precios por metro cuadrado contribuye
a la pujanza de los porttiles. Muchos usuarios los prefieren a los ordenadores de
sobremesa por el hecho de ocupar menos espacio y poder ser apartados de la vista.
Estudiantes en pisos compartidos, parejas jvenes en viviendas de reducido tamao,
hijos de clase media confinados en su cuarto y padres de todas las clases vctimas del
marketing se suman da a da al universo de usuarios poseedores de un porttil.
Quienes descubren las bondades de las tarjetas inalmbricas (wireless o wi-fi del
ingls wireless fidelity) casi nunca vuelven atrs. La demanda incluso se incrementa
en los ordenadores de sobremesa. A nadie le gusta tener cables mal escondidos por
la casa. Pero otro factor clave es la magia que rodea a esto del wireless: conectas y
funciona. La buena noticia es que en GNU/Linux los desarrolladores de software libre
figuran en la punta de lanza de la adopcin de esta tecnologa.

3.1.1. Instalar una tarjeta inalmbrica


Si disponemos de una tarjeta wireless compatible y la red sin hilos es abierta y est
debidamente configurada, la lectura de este apartado casi sobra. Instalando el sistema
operativo con la tarjeta conectada, sta ser detectada y configurada, conectndose
ella solita a Internet.

Pgina 156 de 384

Linux

Desgraciadamente, hoy da no son muchos los fabricantes que se molestan en


explicitar su compatibilidad con GNU/Linux, aunque cada vez encontramos ms
dispositivos compatibles, y en las tiendas de informtica lo ms probable es que
obtengamos un no s / no contesto por parte de los vendedores. Hay listados bastante
completos de modelos de tarjetas compatibles con GNU/Linux sobre soporte pleno
desde el kernel. Posiblemente la ms completa es la mantenida en Linux wireless LAN
Support Una estrategia social bastante infalible es la de preguntar a otros usuarios de
software libre satisfechos con su tarjeta inalmbrica y optar por alguna de ellas.
La clave de la compatibilidad de una tarjeta inalmbrica se basa en su chipset o
microchip que la controla y que debe dialogar fluidamente con nuestro sistema
operativo. Este dato aparece en sus caractersticas tcnicas, a veces incluso en la caja
del fabricante. Un buen vendedor debera conocer el chipset de las tarjetas que ofrece.

Plataforma de Teleformacin de IFES

Pgina 157 de 384

Conociendo el chipset podemos saber qu grado de compatibilidad podemos esperar


de la tarjeta.
Desde el punto de vista del usuario, vamos a hablar de tres grupos de compatibilidad:

Tarjetas que disponen de drivers (libres o no) empaquetados y a punto de


ser integrados al kernel: funcionan de maravilla.

Tarjetas que no disponen de drivers para GNU/Linux pero s soporte


NDIS para MS Windows: hay un truco para hacerlas funcionar. Aun as,
mejor optar por las primeras.

Resto de tarjetas: quizs un usuario avanzado podr ponerlas en marcha,


pero si ests haciendo este curso posiblemente este tipo de emociones
fuertes no sea para ti. Las posibilidades de fracaso son enormes. Veamos
los dos primeros grupos con ms detalle.

3.1.2. Tarjetas con drivers para GNU/Linux


Lo ms sencillo es disponer de una tarjeta con driver disponible para GNU/Linux,
ya empaquetado y listo para operar con el kernel. Algunos chipsets disponen de
controladores libres ya integrados en el kernel, que permitirn que la tarjeta sea
reconocida y configurada si la tenemos insertada durante la instalacin del sistema
operativo o incluso si las conectamos en fro, antes de encender el ordenador. Son los
ms recomendados.

Pgina 158 de 384

Linux

En otros casos dispondremos de controladores no libres pero s disponibles en los


repositorios. Si tenemos suerte, este tipo de tarjetas tambin sern inmediatamente
reconocidas y, en el peor de los casos, funcionarn cuando hayamos compilado
manualmente el paquete con el correspondiente driver. Una vez instalado el paquete,
funcionan sin problemas.
Si podemos relacionar a nuestra tarjeta con nombres como Prism54, Atheros/MadWifi,
Intel Pro Wireless, Atmel, Ralink/Rt2x00, Orinoco, Airo, HostAP, TI/Acx o Wlan-NG
vamos por el buen camino.

3.1.3 El envoltorio NDIS


Si el anterior paso no es posible, nos queda la esperanza de poner en funcionamiento
nuestra tarjeta con el llamado NdisWrapper. NDIS es, resumiendo mucho, un driver
general de Microsoft utilizado para las comunicaciones en red con MS Windows.
Muchos fabricantes de tarjetas inalmbricas se preocupan en ofrecer un soporte NDIS.
Plataforma de Teleformacin de IFES

Pgina 159 de 384

NdisWrapper consigue una ingeniosa rama de compatibilidad envolviendo (wrap)


este driver de Windows para convertirlo en un controlador operativo para GNU/
Linux.
Esta solucin es criticada por contener un elemento no-libre en su seno, y sobretodo
por no fomentar el que los fabricantes desarrollen controladores libres para sus tarjetas.
Adems, podemos tener problemas imprevistos por el hecho de depender de un factor
externo como es un driver para MS Windows. Si podemos escoger, mejor tirar por el
grupo anterior pero si no hay ms remedio...

Para obtener este envoltorio debemos instalar los paquetes ndiswrapper-source y


ndiswrapper-utils. Para ello es recomendable utilizar la aplicacin SYNAPTIC que viene
incluida con el software bsico de nuestro sistema operativo Ubuntu.

3.1.4. Configuraciones adicionales


Aunque en determinadas circunstancias la tarjeta sabr conectarse sola, lo ms
probable es que debamos especificar una configuracin determinada para que su
entrada sea aceptada por la red. En principio, lo ms lgico es que la red requiera una

Pgina 160 de 384

Linux

contrasea de acceso. Tambin puede suceder que haya varias redes disponibles
y nos interese entrar en una de ellas en concreto. Finalmente, tambin se puede dar el
caso de que el protocolo de acceso a la red no sea DHCP, el ms habitual y cmodo ya
que automatiza todo el proceso.
Tambin es posible (de hecho, bastante posible) que la primera vez que intentemos
conectar a travs de la tarjeta inalmbrica o wireless tengamos que activarla, para
lo cual hay que ir a la misma ventana de configuracin. Es decir, para operar con una
tarjeta no slo debemos tenerla instalada y reconocida por el sistema, sino que tambin
debe estar activada con los datos propios de la conexin.
Si tenemos los datos a mano, configurar el acceso a la red sin hilos es una tarea
sencilla:

Plataforma de Teleformacin de IFES

Pgina 161 de 384

(Accedemos a esta ventana de configuracin desde Sistema > Administracin > Redes)
Veremos los tipos de conexiones que tenemos disponibles en funcin de lo que el
sistema haya detectado durante el proceso de instalacin del mismo, de los otros
tipos de conexin que hayamos instalado manualmente a posteriori y los cables o
dispositivos que hayamos conectado antes del ltimo arranque o en caliente. Puede
aparecer una conexin de red, de mdem convencional, mdem ADSL o RDSI...

Pgina 162 de 384

Linux

Debera aparecer una Conexin inalmbrica. Si no es as debemos volver al punto


anterior y comprobar que nuestra tarjeta es compatible y que estn instalados los
paquetes necesarios para hacerla funcionar.
Si nos aparece la conexin sin hilos, nos aseguraremos de que el resto de tipos de
conexin estn desactivados, para garantizar que la conexin se est produciendo a
travs de la tarjeta wireless y no mediante otra va. Para su configuracin daremos los
siguientes pasos:

1. Seleccionamos la Conexin inalmbrica y si est desactivada pulsamos


en Activar.

2. Comprobamos si hay red abriendo el navegador de Internet. Si hemos


llegado hasta aqu lo ms probable es que el navegador no descargue
pgina alguna, pero por probar...

3. Si no hay conexin pulsamos en Propiedades.

4. Pulsamos en la opcin Activar esta conexin para poder editar los


campos.

5. En Nombre de la red (ESSID) nos aparecern las redes disponibles


en ese momento y como mnimo debera haber una, la nuestra. La
seleccionamos. Si no aparece ninguna red, o aparece slo la de
algn vecino, es que estamos fuera de cobertura (asumiendo que hay
linea telefnica y que el punto de acceso est encendido y funciona
correctamente, claro). Deberemos aproximarnos al punto de acceso de la
red sin hilos. Aunque las ondas atraviesan paredes, puertas y ventanas, todo
tiene un lmite. En casas o edificios grandes podemos perder cobertura si
hay un piso entero por medio, paredes gruesas, etc. Hay que ir probando,
o tambin se puede incrementar la potencia del punto de acceso con el
hardware correspondiente.

6. El Tipo de clave suele ser hexadecimal, y si no en texto corriente.

7. En Clave WEP introducimos la contrasea, si la hay, y si no, la dejamos


en blanco. Nosotros o nuestro administrador debera conocer la clave en
caso de que la red use seal encriptada. Al principio, las claves domsticas
eran casi siempre del tipo 1234567890, puesto que era difcil que hubiera
alguien dentro de la cobertura que intentara aprovecharse de nuestra red.
Hoy da, y especialmente en bloques de pisos y oficinas, la probabilidad
ya es ms alta. Parasitar redes sin autorizacin se ha convertido en algo
bastante habitual; incluso hay virus que saltan de una red a otra de forma

Plataforma de Teleformacin de IFES

Pgina 163 de 384

incontrolada. Por todo esto las claves se han reforzado, convirtindose en


secuencias ms largas y menos lgicas.

8. En Configuracin debemos seleccionar el protocolo de red utilizado. Si


se trata de DHCP (acrnimo), el punto de acceso nos asignar el resto
de datos automticamente y no tendremos que rellenar ms, pudiendo
clicar a Aceptar. Si accedemos a la red mediante una direccin IP esttica
deberemos introducir el resto de campos con los datos que nos suministre el
administrador de la red.

9. La Direccin IP es un nmero del tipo 192.168.0.23, viene a ser nuestro


DNI o nuestra matrcula en la red.

10. La Mscara de sub-red es casi siempre 255.255.255.0.

11. La Direccin de la puerta de enlace acostumbra a ser un nmero


similar al anterior y se corresponde con la direccin IP del punto de acceso.
Dependiendo de la red, nos podremos permitir algn pequeo error con
la direccin IP y la conexin funcionar, pero sin la direccin de pasarela
correcta no llegaremos a la red ni a Internet.

12. Una vez rellenados los campos pulsamos en Aceptar, y tras unos pocos
segundos volvemos a probar con el navegador.

Si ya podemos acceder a Internet, perfecto. Si an no, es posible que falte por


configurar el servidor de DNS, encargado de convertir las direcciones numricas
de los servidores (ej. 193.127.103.92) en los dominios de Internet a los que estamos
acostumbrados (ej. guias-ubuntu.ourproject.org). Si nos hemos conectado va DHCP
la conexin debera funcionar y deberamos tener asignado un servidor de DNS. Y si
hemos introducido una IP esttica nuestro administrador debera habernos facilitado la
direccin del servidor DNS tambin.
Podemos probar introduciendo en la barra de direcciones del navegador
http://216.239.57.104/ o http://212.85.32.12/ , lo que debera devolver pginas web
concretas. Si esto no sucede tenemos un problema. Repasemos los pasos dados
y si vemos que no funciona busquemos un administrador o entorno de soporte
donde consultar. Aunque antes conviene probar con un cable de red, siguiendo las
instrucciones que se explican ms adelante.
Para activar los nombres de dominios debemos acceder a la pestaa DNS e introducir
el o los Servidores DNS. Pueden referirse a direcciones numricas de la propia red
local, como la IP del punto de acceso (tipo 192.168.2.1), o bien a direcciones numricas

Pgina 164 de 384

Linux

externas, proporcionadas, generalmente, por las empresas proveedoras de servicios de


acceso a Internet.

Plataforma de Teleformacin de IFES

Pgina 165 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.3. Redes

3.2. Cable de red


Aunque lo wireless est de moda, muchos preferirn la conexin mediante cable de red
de toda la vida. De hecho, si tenemos problemas con la conexin sin hilos la medicina
ms inmediata es hacernos con un cable de red, ya que la mayora de puntos de
acceso vienen equipados con enchufes de red. Partimos de la base de que nuestro
ordenador tambin dispone de puerto de red, claro.

La conexin a travs de cable de red es posiblemente la que comporta una mayor


probabilidad de acierto. Como comentbamos, casi lo primero que hace el kernel una
vez que ha montado un sistema operativo mnimo es ir a buscar el puerto de red para,
desde all, zarpar hacia el hogar de su distribucin madre en Internet. Para tener la
conexin de red (ethernet) activada y configurada no hay nada como conectar el cable
con el hub o punto de acceso encendidos y conectados a la lnea telefnica antes de
iniciar la instalacin del sistema operativo.

Pgina 166 de 384

Linux

Si la conexin de red est configurada, slo tendremos que enchufar el cable de


red en fro o incluso en caliente para tener acceso a Internet. Si tenemos el cable
enchufado y todo el hardware en orden pero aun as no conseguimos bajar pginas
de Internet con el navegador, deberemos seguir casi las mismas Configuraciones
adicionales detalladas anteriormente con las redes sin hilos. La nica diferencia es que,
obviamente, no vamos a tener que definir redes ESSID ni contraseas WEP, ya que
nuestro acceso al hub o punto de acceso es directo va cable. Pero a partir del punto
octavo, Configuracin, procedemos a activar nuestra conexin exactamente igual que
hicimos para los dispositivos inalmbricos.

Plataforma de Teleformacin de IFES

Pgina 167 de 384

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.3. Redes

3.3. Mdem
Introduccin
La mencin y apartado a los mdems ADSL slo tiene sentido en distribuciones que
tengan el Asistente de Banda Ancha.
La conexin a travs de mdem fue la habitual y casi nica para la primera generacin
de usuarios particulares de la Internet con World Wide Web. Hoy da sigue siendo
la opcin bsica all donde no llega la banda ancha o el presupuesto para acceder a
ella la hace inviable. Tambin hay usuarios de mdem de alta velocidad conectados a
lneas ADSL o incluso RDSI.
Vamos a tratar los dos tipos de conexin con mdem ms habituales, el de linea
telefnica convencional y el de ADSL.

3.3.1 Los mdems de toda la vida


Piiiiiiiiii-poooooooooo-prfxfrfxffrxxx.... [silencio]
Para algunos esto es una onomatopeya que evoca la nostalgia de sus primeros
tiempos de Internet. Otrxs nunca oyeron este ruido en directo y quizs tan slo en
alguna pelcula o documental. Pero un buen nmero de usuarixs siguen iniciando su
paseo por Internet con esta hermosa onomatopeya, algunxs dirn incluso epopeya.
El mdem convencional se conecta a Internet llamando a un ISP o proveedor de
Internet a travs del cable telefnico de toda la vida. Hay mdems internos insertados
en la estructura del ordenador y hay mdems externos con colores y formas varias
y, casi siempre, con sus caractersticas lucecitas. A travs de un mdem externo se
puede conectar uno o varios ordenadores, y varios ordenadores pueden acceder a una
misma linea desde sus mdems internos siempre y cuando no llamen dos al mismo
tiempo. Hay mil combinaciones ms, algunas realmente low tech (chapuzas en una
traduccin libre al espaol), pero funcionales. Y es que la falta de mayores recursos ha
despertado la creatividad de muchos administradores de profesin o aficin durante
los aos en los que los ordenadores se abran con destornillador como si nada por
cualquier motivo.
El problema es que mientras esto suceda, la emergente comunidad de desarrolladores
de software libre se conectaba a Internet bsicamente a travs de redes universitarias

Pgina 168 de 384

Linux

o empresariales. Los mdems eran poco utilizados por estos pioneros bajo GNU/Linux,
en parte por la disponibilidad de ms ancho de banda va red, tambin por el hecho de
que la mayora de fabricantes de mdems mantuvieron cerrado el cdigo de sus drivers
propietarios, complicando el desarrollo de alternativas libres.
Hoy da se pueden establecer tres claros grados de compatibilidad de mdems con
GNU/Linux:

1. Los mdems externos conectados al puerto serie son compatibles con


GNU/Linux.

2. Si van conectados al puerto USB, el grado de compatibilidad se reduce


sensiblemente.

3. Si el mdem es interno, toquemos madera, armmonos de valor


y en ltima instancia visitemos el sitio de www.linmodems.org donde
encontraremos informacin til para afrontar una instalacin que se antoja
compleja.

Si nuestro mdem se encuentra soportado por GNU/Linux estos son los pasos a seguir:
Sistema > Administracin > Red

Plataforma de Teleformacin de IFES

Pgina 169 de 384

Si tenemos un mdem interno (o externo y conectado) compatible, veremos una


Conexin mdem. La seleccionamos y clicamos en Propiedades. Si no aparece
dirijmonos al entorno de soporte que ms alegras nos haya reportado. Vamos a
necesitar suerte y nimos.

En la pestaa General pulsamos en Activar esta conexin. Los siguientes


datos son bsicos y nos los debe haber facilitado nuestro proveedor de
acceso a Internet:

1. Nmero de telfono al que hay que llamar para establecer la


conexin.

2. Prefijo no se refiere tanto al prefijo de provincia o pas como a los


nmeros que debamos marcar para obtener tono de llamada si nos
encontramos detrs de una centralita. Si no hay centralita por medio
lo dejamos en blanco.

Pgina 170 de 384

Linux

3. Usuario y Contrasea, los que nos hayan asignado.

Pasamos a la pestaa Mdem. Asegurmonos que el mdem est


encendido.

1. Puerto del mdem se refiere a la conexin entre nuestro


ordenador y el mdem. Mejor empezar por Autodetectar. Si no da
resultado habr que probar con las opciones que nos aparezcan
en el men desplegable. Si no funciona con ninguna quiere decir
que nuestro ordenador no es capaz de encontrar el mdem, y si
es interno o externo y todo est bien conectado y encendido ya
podemos empezar con el proceso de oraciones y encomiendas.

2. Tipo de marcaje se refiere a cmo marca nmeros nuestro


telfono. Normalmente son tonos (el moderno pi-po-pe-po-po-popa) aunque puede suceder que an sean pulsos (el tactac-tactactactac... de los telfonos de antes).

3. Volumen nos permite escoger si queremos escuchar o no el


prtstscchhh de conexin o regular su volumen de reproduccin Para
empezar mejor tenerlo activado y medio-alto, con lo que sabremos
cmo va el proceso de conexin. Aunque de entrada pueda sonar
todo lo mismo, hay quien se atreve a diagnosticar un problema nada
ms que por el ruido de la conexin (por fortuna, en caso de existir
problemas el sistema nos reporta los informes en una ventana).

Pasamos a la ltima pestaa de Configuracin, donde tenemos un par de


opciones.

1. Establezca el mdem como la ruta predeterminada a Internet


nos interesa si el mdem es nuestro nico medio de acceso a la
red. Si lo tenemos slo para casos de emergencia en favor de otras
conexiones es mejor dejarla desactivada.

2. Reintenta la conexin en caso de que se corte o falle la conexin


hace eso mismo, y es til si nuestro proveedor tiene un servicio que
deja algo que desear.

Una vez completado el paseo, pulsamos a Aceptar y en la ventana inicial


seleccionamos la Conexin mdem y pulsamos en Activar. La conexin debera
empezar.

Plataforma de Teleformacin de IFES

Pgina 171 de 384

3.3.2. El Mdem ADSL


Los mdems ADSL acostumbran a utilizarse cuando hay un nico usuario tras una
conexin de banda ancha. En los entornos GNU/Linux no se encuentran muchos
usuarios que utilicen este tipo de conexin, sobre todo por la escasez de drivers libres
y sus consiguientes problemas de incompatibilidades. Lo normal es que un usuario con
ADSL tenga un punto de acceso o un hub. No obstante este tipo de mdems han sido
relativamente frecuentes en los primeros aos de servicios ADSL y es posible que sus
propietarios usuarios de MS Windows los quieran reutilizar en su paso al software libre.
Como siempre, el principal escollo es la compatibilidad de hardware. En el momento de
escribir estas lneas se puede afirmar que todos los mdems ADSL funcionan gracias
a firmware no-libre, aunque esto no impide que desarrolladores de buena voluntad
hayan encontrado vas para hacer funcionar un buen nmero de ellos bajo GNU/Linux.
Adems, la configuracin sencilla de estos aparatos depende tambin del proveedor
de servicios de Internet (ISP) que usemos para conectarnos, ya que son esos mismos
proveedores los que acostumbran a suministrarlos. Por tanto, a la hora de preguntar a
amistades, foros, etc, deberemos tener en cuenta no slo el modelo del mdem sino
tambin nuestro proveedor.

Pgina 172 de 384

Linux

Linux / MDULO 3. ADMINISTRACIN BSICA / U.D.3. Redes

3.4. Combinar diferentes ubicaciones


Si somos usuarios nmadas y nos conectamos con el mismo ordenador desde varios
lugares lo recomendable es utilizar varias ubicaciones para guardar las configuraciones
de cada lugar. Por ejemplo, igual en el trabajo tenemos una red cableada con IP fija, en
casa tenemos wireless con contrasea, con el vecino tenemos un convenio para utilizar
la red del otro en caso de emergencia con su otra contra contrasea, a veces vamos a
casa de amigos y guardamos sus configuraciones para llegar y conectar sin tener que
pedir datos de nuevo o buscar en chuletillas viejas...

Plataforma de Teleformacin de IFES

Pgina 173 de 384

Si utilizamos un mdem convencional tambin nos puede interesar tener varias


ubicaciones, una con nuestro proveedor de Internet habitual y otras con accesos de
otros proveedores para casos de emergencia.
Partimos de la misma ventana de Sistema > Administracin > Redes

1. Pulsamos en el desplegable superior Ubicacin.

2. Seleccionamos Crea una ubicacin.

3. Introducimos el Nombre de la ubicacin, tipo casa, trabajo, etc, y


pulsamos en Aceptar.

4. La configuracin que hagamos a partir de ese momento se asignar a esa


ubicacin. Una vez configuradas las conexiones pulsamos en Aceptar y se
cerrar la ventana de Redes, guardando nuestros datos.

Podemos tener tantas ubicaciones como deseemos. Para editar una ubicacin slo
tenemos que seleccionarla, realizar los cambios convenientes y guardar. Tambin
podemos eliminar ubicaciones seleccionando Suprime esta ubicacin en el mismo
men desplegable con el que la creamos.
Si llegados a este punto hemos conseguido conectar a Internet ya nos podemos
plantear una red domstica (incluso con slo un ordenador en casa).

Pgina 174 de 384

Linux

Linux / MDULO 3. ADMINISTRACIN BSICA

Resumen de comandos y teclas


Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Recuerda
Este recurso es de tipo Multimedia.
Tiene que conectarse a la plataforma para acceder a este recurso.

Autoevaluacin: Comandos
Unas preguntas sencillitas sobre las rdenes iniciales con el teclado.
Pregunta 1:
Cul es la orden para saber la fecha actual
Respuesta correcta: date
Pregunta 2:
Si queremos sacar el calendario del ao 1975 qu orden tendremos que darle al
sistema?
Respuesta correcta: cal 1975 o cal -m 1975
Pregunta 3:
Para ver la pgina del manual de la orden ls utilizaremos la orden:
Respuesta correcta: man ls
Pregunta 4:
Cuando estamos viendo el manual de la orden ls y queremos buscar qu hace la
opcin -r :

tecleamos -r directamente

tecleamos / y despus -r y retorno

Men buscar y escribimos -r

Men opciones y la buscamos por orden alfabtico


Respuesta correcta: tecleamos / y despus -r y retorno

Plataforma de Teleformacin de IFES

Pgina 175 de 384

Prctica: Redes
Este recurso es de tipo Prctica.
Tiene que conectarse a la plataforma para acceder a este recurso.

Prctica: Comandos
Este recurso es de tipo Prctica.
Tiene que conectarse a la plataforma para acceder a este recurso.

Prctica: Ficheros
Este recurso es de tipo Prctica.
Tiene que conectarse a la plataforma para acceder a este recurso.

Pgina 176 de 384

Linux

Linux

Evaluacin tercera
Este recurso es de tipo Evaluacin.
Debe conectarse a la plataforma para realizar la evaluacin. Recuerde que las
evaluaciones son obligatorias ya que determinan la nota final.

Plataforma de Teleformacin de IFES

Pgina 177 de 384

Linux

Evaluacin final del curso


Este recurso es de tipo Evaluacin.
Debe conectarse a la plataforma para realizar la evaluacin. Recuerde que las
evaluaciones son obligatorias ya que determinan la nota final.

Pgina 178 de 384

Linux

Linux

Enlaces de inters
Manual del gestor de arranque GRUB que Knoppix instalar automticamente en tu
disco duro si decide una instalacin permanente.
http://www.wikilearning.com/manual_de_grub-wkc-8999.htm
La pgina referencia (oficial..) del proyecto KDE en castellano.
http://www.kdehispano.org/
La pgina referencia (oficial..) del proyecto Gnome en castellano.
http://www.es.gnome.org/
LDP-ES/LuCAS: servicios editoriales para la documentacin libre en espaol.
Es el Linux Documentation Project en castellano: un proyecto de recopilacin de
documentacin y tambin de encuentro para la colaboracin..
http://es.tldp.org/
La enciclopedia libre: imprescindible..
http://es.wikipedia.org/wiki/Portada
Sitio en Espaol sobre la distribucin Debian GNU/Linux.
http://esdebian.org/
Un sistema operativo basado en Linux -una distribucin ms de Linux- altamente
recomendable. (Para no andar de una distribucin a otra elige ubuntu o no).
http://ubuntulinux.org/
La suite ofimtica alternativa al MSOffice.
http://www.openoffice.org/
Una pgina no oficial en castellano sobre Knoppix. La oficial "http://www.knoppix.com/"
est horriblemente traducida del alemn. Tambin tienes http://www.knoppix.net/ ..
http://www.victoralonso.com/knoppix/
El contenedor/depsito (del ingls repository) de proyectos en Cdigo Libre y otras
aplicaciones ms grande del mundo (dicen)..
http://sourceforge.net/
Es un Manual muy completo sobre el Particionado de un Disco Duro. Resolver
muchas dudas sobre este paso fundamental para la instalacin de un nuevo sistema
operativo como Linux..

Plataforma de Teleformacin de IFES

Pgina 179 de 384

http://www.saulo.net/pub/ddypart/

Pgina 180 de 384

Linux

Linux

Bibliografa
http://es.tldp.org (The Linux Documentation Project en Castellano). ..
Editorial ., . 2006.
http://www.fsf.org (Free Software Foundation, Inc). ..
Editorial ., . 2006.
http://es.wikipedia.org (Wikipedia en Castellano). ..
Editorial ., . 2006.
Sirviendo web desde la escuela.. ANTONIO SAORN, JOS J. GRIMALDOS, GINS
NGEL ESTEBAN, JOS ANTONIO MORGADO, MA.
Editorial ., . 2003.
Instalacin de Knoppix en el disco duro HOWTO.. DAVID MCNAB (TRADUCCIN:
QUIQUE, SINDOMINIO.NET).
Editorial ., . 2000.
Aprenda Linux como si estuviera en primero.. JAVIER GARCA DE JALN, IKER
AGUINAGA, ALBERTO MORA..
Editorial ., San Sebastin 2000.
OpenOffice.org Version 2 Product Specification.. JOHN MCGREESH..
Editorial ., . 2005.
Gua de Linux para el Usuario. LARRY GREENFIELD (TRADUCCIN PROYECTO
LUCAS).
Editorial ., . 1996.
Linux: Instalacin y Primeros Pasos.. MATT WELSH (TRADUCCIN: PROYECTO
LUCAS).
Editorial ., . 1996.
Manual de Knoppix. VCTOR ALONSO BARBERN..
Editorial ., . 2000.
Aprendiendo a aprender Linux. VLADIMIR TMARA, JAIME IRVING DVILA,
PABLO CHAMORRO, IGOR TMARA.
Editorial ., . 2000.

Plataforma de Teleformacin de IFES

Pgina 181 de 384

Linux

Glosario
Ahh,muy importante,puedo introducir texto con formato en este recurso!
'''Perfectamente posible!''' Cmo se ha comentado en la demostracin del recurso
de edicin anterior, el correspondiente a las FAQ ,podemos hacer uso de diferentes
"herramientas" en la edicin de un determinado curso como : '''texto en negrita'''
##texto tipo cdigo listas para enumerar como: *una cosa *dos cosas *tres cosas
* ........ Lo que a continuacin viene podra servirnos como ejemplo de Glosario
de un supuesto curso de la Plataforma ,en este caso ,un curso de Linux. Como
se acaba de comentar,podemos y debemos presentar el texto de una forma ms
atractiva ,complementndolo con diferentes formatos....
alias
Orden interna de bash. Permite sustituir una cadena por una sola palabra. Esto nos
permite poner el nombre que queramos a un comando junto con sus parmetros.
Ahorra tiempo en el trabajo diario, por lo que su uso es altamente recomendado. Puede
ser algo tan sencillo como: alias rm='rm -i'. Por lo que cada vez que teclearamos rm el
shell lo sustituira por rm -i.
Apache
Servidor de pginas web. Hoy por hoy lider del mercado de servidores, por delante de
soluciones propietarias.
background
Segundo plano. Se habla de proceso en segundo plano cuando se ejecuta sin nuestra
interactividad o lo pasamos a modo suspendido. Es til,si por ejemplo, estamos
compilando un programa grande que nos deja inutilizada la consola mientras dura el
proceso de compilacin. Pasndolo a segundo plano, el proceso se completara, pero
nosotros podramos seguir trabajando.
bash
(Bourne Again Shell) Intrprete de comandos. Es el shell por defecto en la mayora de
las distribuciones de GNU/Linux de hoy en da. Se encarga de interpretar las ordenes
que le demos para su proceso por el kernel.
boot
Proceso de arranque en un sistema informtico
BSD

Pgina 182 de 384

Linux

Berkeley Software Distribution. Adaptacin del UNIX original de AT&T por la


universidad de Berkeley.
case sensitivity
GNU/Linux distingue entre minsculas y maysculas, por lo que deberemos tener
cuidado a la hora de teclear ordenes o nombres de ficheros.
compilar
Proceso por el cual se "traduce" un programa escrito en un lenguaje de programacin a
lo que realmente entiende el ordenador.
consola
Una consola la forman el teclado y el monitor del equipo donde tenemos instalado
GNU/Linux . No confundir con terminal.
cron
demonio que usa el administrador para delegar ciertas tareas que pueden ser
ejecutadas sin su participacin. Este demonio puede ser programado para ejecutar las
tareas a intervalos variables, anualmente, semanalmente, diariamente etc. Sus tareas
tpicas suelen ser el borrado de ficheros temporales, conexiones con otros equipos,
backups, etc.
cuenta
Una cuenta en un sistema Unix/Linux puede ser algo as como la llave de un taller
comunitario. Es decir, tenemos una llave personal que nos permite acceder a ese
taller y utilizar algunas de las herramientas del mismo. Donde adems tenemos que
atenernos a las normas que rijan en ese taller.
cuota
Es un sistema del que se vale el administrador, para regular el espacio que los
diferentes usuarios de un sistema ocupan con sus ficheros en disco.
demonio
Aparte del significado que todos conocemos, en Unix/Linux se conoce como un
programa que permanece en segundo plano ejecutndose continuamente para dar
algn tipo de servicio. Ejemplos de demonio, son los servidores de correo, impresora,
sistemas de conexin con redes etc.
display
Variable de entorno, cuyo valor apunta al servidor Xwindow del usuario que lo est
ejecutando.
Emacs
Plataforma de Teleformacin de IFES

Pgina 183 de 384

Editor de texto. Aunque es su principal funcin, Emacs es hoy en da un programa


muy extenso y con muchas utilidades, gracias a su soporte de plug-ins en lenguaje
LISP. Desde Emacs podrs contestar el correo, leer las noticias de USENET, compilar
programas, jugar al tetris... Requiere un periodo de aprendizaje largo.
enlaces
Los enlaces o links permiten tener "copias" de un mismo archivo, ocupando slo el
espacio del archivo real. Es decir, el enlace no es ms que otro archivo que apunta al
original.
enlightenment
Gestor de ventanas. Muy espectacular, a la vez que algo inestable y consumidor de
recursos nato.
entrada/salida estndar
Por defecto la entrada de datos estndar se establece en el teclado y la salida de
datos estndar en la pantalla del monitor, esto lo podemos variar a travs de tuberas
o redirecciones. Por ejemplo, podemos hacer que la entrada sea el ratn y la salida la
impresora.
ethernet
Son redes que permiten distribuir datos a travs de un solo cable por lo que necesitan
de un protocolo especial que evite la colisin de los paquetes de datos, ya que slo se
permite el envo de un solo paquete al mismo tiempo, encargndose el protocolo de su
reenvo en caso de la colisin de ambos.
expresiones regulares
Las expresiones regulares o "regexp" permiten definir el patrn de anlisis en una
cadena de texto. De forma que a la hora de modificarlas, borrarlas, o lo que queramos
hacer con ellas, sea de acuerdo a unas reglas que definimos.
ext2fs
Sistema de ficheros utilizado en GNU/Linux . Permite el uso de permisos para los
ficheros y directorios, y tiende a fragmentarse mucho menos que los de otros sistemas
operativos.
filtro
Un filtro es un programa o conjunto de estos, que procesan una serie de datos
generando una salida modificada conforme a lo que nosotros le especifiquemos.
FSF

Pgina 184 de 384

Linux

Free Software Foundation. Fundacin que pretende el desarrollo de un sistema


operativo libre tipo UNIX. Fundada por Richard Stallman, empez creando las
herramientas necesarias para su propsito, de modo que no tuviera que depender
de ninguna compaia comercial. Despus vino la creacin del ncleo, que todava se
encuentra en desarrollo.
ftp
File Transfer Protocol. Servicio de Internet que permite el envo y la recepcin de
ficheros. Para su uso necesitamos disponer de una cuenta en la mquina que va a
recibir o enviar los ficheros. Si bien hay multitud de mquinas en Internet que permiten
el uso de sus sistemas utilizando una cuenta annima y validando el password con
nuestra direccin de correo.
gcc
GNU C Compiler. El compilador estndar de la FSF.
getty
Procesos que controlan cada una de las terminales que estn conectadas al sistema,
o las terminales virtuales que podamos tener abiertas. Establecen las caractersticas
de los terminales y llaman al proceso encargado de validar la entrada al sistema de los
usuarios.
ghostcript
Programa encargado de la visualizacin de ficheros de texto con formato postcript.
GID
Group IDentification. En UNIX/LINUX se definen grupos para administrar las
herramientas a las que tienen acceso unos y otros, el pertenecer a un determinado
grupo nos puede permitir, por ejemplo, tener acceso a internet. La pertenencia a
algn grupo viene determinada por el numero GID establecido en el cuarto campo del
fichero /etc/passwd.
GNOME
GNU Network Object Model Environment. Entorno de escritorio basado en las libreras
GTK diseadas para el programa de retoque fotogrfico GIMP. Ofrece un entorno
amigable y la posibilidad de que las aplicaciones intercambien datos entre s.
GNU
Movimiento que persigue la libertad en el software. Son los creadores de la mayora de
los programas que utilizan Linux, por eso piden que al sistema se le llame GNU/Linux,
no solamente Linux.

Plataforma de Teleformacin de IFES

Pgina 185 de 384

GNU
Gnu is Not Unix. Proyecto de la FSF para crear un sistema UNIX libre.
GNU/Linux
Sistema operativo compuesto de las herramientas GNU de la FSF y el ncleo
desarrollado por Linus Torvalds y sus colaboradores.
GPL
General Public License. Una de las mejores aportaciones de la FSF. Es una licencia
que protege la creacin y distribucin de software libre.
groff
Versin GNU del programa nroff para el formateo de textos. Las pginas del manual en
lnea han sido escritas con este formato.
host
Nombre de un ordenador en una red.
http
HyperText Transfer Protocol.Protocolo de red para la transferencia de pginas de
hipertexto, o lo que es lo mismo, paginas web como sta
HURD
Nombre del ncleo del sistema que sigue desarrollando la FSF dentro del proyecto
GNU.
inetd
Demonio encargado de mantener en escucha determinados puertos y de llamar a
determinados programas en funcin de las seales recibidas.Por ejemplo, atiende a las
llamadas de telnet, finger o ftp.
init
Init es el primer proceso que se ejecuta en un sistema UNIX/Linux y el que inicia
todos los procesos getty. Tiene varios estados, llamados niveles de ejecucion, que
determinan los servicios que pueden ofrecer. Por ejemplo, dependiendo del nivel
de ejecucion podemos establecer la posibilidad de poner la maquina en modo
monousuario, impidiendo la posibilidad de acceso a otras personas.
initdefault
El valor de initdefault establece el nivel de ejecucin por defecto de entrada al sistema.
inode

Pgina 186 de 384

Linux

Todos los archivos en UNIX/Linux tienen un inode que mantienen informacin referente
al mismo, tal como situacin, derechos de acceso, tamao o tipo de fichero.
job
Orden interna de bash que muestra los trabajos pendientes que tengamos en segundo
o primer plano.
KDE
K Desktop Environment. Entorno de escritorio que integra gestor de ventanas propio
y una barra de tareas y que al igual que GNOME permite la interaccin entre sus
aplicaciones. Programado en C++ y con la base de librerias QT+ ha sido vctima de
crticas por parte de la comunidad GNU/Linux, ya que estas libreras eran propiedad de
una empresa comercial.
kernel
Programa ncleo que se encarga de que funcionen el resto de los programas, que
tengan acceso al disco duro, a la memoria, a la red, etc. Son kernels Linux, FreeBSD,
NetBSD, Hurd, etc.
kernel
Vase ncleo
kerneld
Demonio para la carga dinmica de mdulos. Cuando necesitamos el uso de un
determinado dispositivo, no es necesario tener su controlador todo el tiempo cargado
en memoria, por lo que este demonio se encarga de enlazarlo con el resto del ncleo.
LaTeX
Lenguaje para el formateado de textos. Muy potente y completo.
lilo
LInux LOader. Programa que nos permite elegir que sistema operativo arrancar, en el
caso de tener varios.
Linus Torvalds
Estudiante finlands creador del nucleo de GNU/Linux. Actualmente, el desarrollo del
ncleo, depende de unos cientos de personas, incluido Linus.
Linux
Ncleo del sistema operativo GNU/Linux
login

Plataforma de Teleformacin de IFES

Pgina 187 de 384

Programa encargado de la validacin de un usuario a la entrada al sistema. Primero


pide el nombre del usuario y despus comprueba que el password sea el asignado a
ste.
loopback
Sistema de trabajo en red en modo local. Con este sistema podemos trabajar en red
con nuestro propio ordenador; su utilidad radica en probar programas de seguridad,
leer las noticias o el correo de los servidores instalados en nuestro ordenador o
simplemente poder ejecutar Xwindow.
lpd
Demonio encargado de asistir a las peticiones de impresin por parte del sistema.
LuCaS
Organizacin de voluntarios dedicada a la traduccin de documentacin del sistema
GNU/Linux al castellano.
man
Manual en lnea del sistema. Aqu puedes buscar casi cualquier cosa relacionada con
el sistema, sus comandos, las funciones de biblioteca, etc.
mbr
Master Boot Record. Tabla de informacin referente al tamao de las particiones.
mdulos
Porciones de cdigo que se aaden en tiempo de ejecucin al kernel para el manejo de
dispositivos o aadir funciones al ncleo.
monousuario
Sistema informtico que slo admite el trabajo con una persona.
montar
Poner un dispositivo o un sistema de ficheros en disposicin de ser usado por el
sistema.
motif
Librera de funciones para el desarrollo de aplicaciones grficas. Son de caracter
comercial, aunque existe una implementacin libre llamada lesstif
mta
Mail Transfer Agent.Programa encargado del transporte de correo electrnico. Es
el encargado de deliverar las direcciones y de transportarlas hacia su correcta

Pgina 188 de 384

Linux

ubicacin, dentro de nuestra red local o en Internet. Los ms usados en Linux son
Sendmail,qmail,postfix y exim.
mtools
Conjunto de herramientas para la administracin de ficheros, disquetes o discos duros
con el sistema de archivos de msdos.
mua
Mail User Agent. Programa encargado de la lectura y composicin de mensajes de
correo electrnico. Algunos tipicos en Linux son: Mutt,Kmail,Pine,Balsa.
multitarea
Capacidad de un sistema para el trabajo con varias aplicaciones al mismo tiempo.
multiusuario
Capacidad de algunos sistemas para ofrecer sus recursos a diversos usuarios
conectados a travs de terminales.
nntp
Network News Transfer Protocol.Protocolo de transmisin para el envo y recepcin de
los grupos de noticias de USENET.
ncleo
kernel traducido al espaol, normalmente se utiliza el trmino kernel.
ncleo
Parte principal de un sistema operativo, encargado del manejo de los dispositivos, la
gestin de la memoria, del acceso a disco y en general de casi todas las operaciones
del sistema que permanecen invisibles para nosotros.
password
Palabra clave personal, que nos permite el acceso al sistema una vez autentificada con
la que pose el sistema en el fichero passwd.
path
Variable del entorno, cuyo valor contiene los directorios donde el sistema
buscar cuando intente encontrar un comando o aplicacin. Viene definida en los
ficheros .bashrc o .bash_profile de nuestro directorio home.
permisos
Todos los archivos en UNIX/Linux tienen definido un set de permisos que permiten
establecer los derechos de lectura, escritura o ejecucin para el dueo del archivo, el
grupo al que pertenece y los dems usuarios.

Plataforma de Teleformacin de IFES

Pgina 189 de 384

PID
Process IDentification. Nmero que identifica un proceso en el sistema; este numero es
nico para cada proceso.
posix
Es un estndar con una serie de normas definidas para permitir la portabilidad entre
diferentes sistemas UNIX. GNU/Linux cumple con este estndar.
postscript
Formato profesional de impresin para impresoras de gama alta.
ppp
Point to Point Protocol. Protocolo de transmisin de datos, utilizado en la mayoria de las
conexiones a internet domesticas.
proceso
Programa en ejecucin en un sistema informtico.
prompt
El prompt es lo siguiente que vemos al entrar al sistema, una linea desde donde el
sistema nos indica que esta listo para recibir ordenes, que puede ser tan sencilla como:
$ o algo mas compleja como: amphora:1505200:home/israel:$
redireccin
Con los operadores de redireccin podemos dirigir la salida de un proceso hacia un
dispositivo diferente al estandar o a un fichero.
respawn
Parametro para el proceso init que indica la necesidad de volver a arrancar el programa
implicado, una vez finalizado o muerto por alguna causa.
root
Persona o personas encargadas de la administracin del sistema Tiene TODO
el privilegio para hacer y deshacer, por lo que su uso para tareas que no sean
absolutamente necesarias es muy peligroso.
sed
Editor de flujo. Sed se utiliza en la manipulacin de cadenas de texto de acuerdo a
unas reglas especificadas.
seales
Las seales son eventos que se hacen llegar a un proceso en ejecucin para su
tratamiento por este. Las seales las podemos mandar nosotros u otros programas a

Pgina 190 de 384

Linux

otros programas. Tienen diferentes valores, y en funcin a esos valores el proceso que
las recibe actua de una manera u otra.
setuid
Establece la identidad del usuario del proceso en curso. Si bien es muy comn oir
hablar del bit set-uid.Este bit establece permisos de root para el programa que que
lo posea, por lo que cualquier usuario puede utilizar ese programa con los mismos
privilegios que el administrador. Es facilmente identificable por la "s" que aparece en
vez de la "x" en los permisos del archivo.
shell
literalmente concha, caparazn. Es el programa que envuelve el ncleo y que se
relaciona con el usuario, se aplica a los programas que esperan que el usuario escriba
una orden y se la pasan al resto del sistema para que la ejecute. Diferentes shells en
Linux son Bash, Ksh, Csh.
shell
Traducido del ingls concha o caparazn. El shell es el intrprete de comandos que
se establece entre nosotros y el kernel. Hay muchos tipos de shell cada uno con sus
propias caractersticas, sin embargo el estandar en GNU/Linux es el shell bash ya que
es el que forma parte del proyecto GNU.
smtp
Simple Mail Transfer Protocol. Ms claro el agua.
superusuario
Ver root.
swap
Memoria virtual. Espacio de disco duro que utiliza el kernel en caso de necesitar mas
memoria de la que tengamos instalada en nuestro ordenador.
telnet
Servicio que nos permite la conexin a otro ordenador de la red, pasando nuestro
sistema a ser una terminal de ese ordenador.
terminal
Una terminal es un teclado y una pantalla conectados por cable u otro medio a un
sistema UNIX/Linux, haciendo uso de los recursos del sistema conectado.
tubera

Plataforma de Teleformacin de IFES

Pgina 191 de 384

Las tuberas son como conexiones entre procesos. La salida de un proceso la


encadenamos con la entrada de otro, con lo que podemos procesar unos datos en una
sola lnea de comando.
uid
User IDentification. Nmero que identifica al usuario frente al sistema.
unix
Sistema operativo creado por AT&T a mediados de los 70.
vi
Editor de texto muy potente aunque algo complejo al principio. Es el editor por defecto
en casi todas las distribuciones. Hay versiones mejoradas (vim) o versiones para X
Xvim.
WindowMaker
Gestor de ventanas con buena apariencia y poco consumidor de recursos.
windowmanager
Gestor de ventanas.Programa que se encarga de dar apariencia a los programas que
se ejecutan bajo Xwindow, tambin se encarga de maximizar/minimizar ventanas,
ponerles el marco, un fondo al escritorio...
X Xwindow
Entorno grfico. Es el programa que se encarga de dibujar en pantalla todo lo que
le solicitan los procesos que corren bajo este entorno. Tiene la facultad de visualizar
programas que estn siendo ejecutados en otro ordenador de la red.
X11R6
ltima versin utilizada del sistema de ventanas Xwindow.
xterm
Terminal virtual que funciona bajo el sistema de ventanas Xwindow.

Pgina 192 de 384

Linux

Linux

F.A.Q.
Introduccin e informacin general
Qu es Linux?
LINUX es un sistema operativo compatible '''Unix'''. Dos caractersticas muy peculiares
lo diferencian del resto de los sistemas que podemos encontrar en el mercado; la
primera, es que es libre.Esto significa que no tenemos que pagar ningn tipo de licencia
a ninguna casa desarrolladora de software por el uso del mismo; la segunda, es que el
sistema viene acompaado del ''cdigo fuente''. El sistema lo forman el '''Ncleo''' (leer
seccin Kernel/Nucleo) del sistema ,ms un gran nmero de '''programas / libreras'''
que hacen posible su utilizacin. Linux se distribuye bajo la ''GNU General Public
License'', por lo tanto, el cdigo fuente tiene que estar siempre accesible. El sistema ha
sido diseado y programado por multitud de programadores alrededor del mundo. El
ncleo del sistema sigue en continuo desarrollo bajo la coordinacin de Linus Torvalds,
la persona de la que parti la idea de este proyecto, a principios de la decada de los
noventa. Da a da, ms y ms programas estn disponibles para este sistema, y la
calidad de los mismos aumenta de versin a versin. La gran mayora de los mismos
vienen acompaados del cdigo fuente y se distribuyen gratuitamente bajo los trminos
de licencia de la ''GNU Public License''. En los ltimos tiempos, ciertas casas de
software comercial han empezado a distribuir sus productos para Linux y la presencia
del mismo en empresas aumenta rpidamente por la excelente relacin calidad-precio
que se consigue con Linux. Las plataformas en las que en un principio se puede utilizar
Linux son 386-, 486-. Pentium, Pentium Pro, Pentium II,Amiga y Atari; tambin existen
versiones para su utilizacin en otras plataformas, como Alpha, ARM, MIPS, PowerPC
y SPARC.
Historia de Linux
LINUX hace su aparicin a principios de la dcada de los noventa .Era el ao 1991 y
por aquel entonces ,un estudiante de informtica de la Universidad de Helsinki llamado
Linus Torvalds empez, como una aficin y sin poderse imaginar a lo que llegara
este proyecto, a programar las primeras lneas de cdigo de este sistema operativo
llamado LINUX. Este comienzo estuvo inspirado en MINIX, un pequeo sistema Unix
desarrollado por Andy Tanenbaum. Las primeras discusiones sobre Linux fueron en
el grupo de noticias comp.os.minix.En estas discusiones se hablaba sobre todo del
desarrollo de un pequeo sistema Unix para usuarios de Minix que queran ms. Linus
nunca anunci la versin 0.01 de Linux (agosto 1991). Esta versin no era ni siquiera

Plataforma de Teleformacin de IFES

Pgina 193 de 384

ejecutable;solamente inclua los principios del ncleo del sistema, estaba escrita en
lenguaje ensamblador y asuma que uno tena acceso a un sistema Minix para su
compilacin. El 5 de octubre de 1991 Linus anunci la primera version "Oficial" de
Linux, versin 0.02. Con esta versin Linus pudo ejecutar Bash (GNU Bourne Again
Shell) y gcc (El compilador GNU de C),pero no mucho ms funcionaba. En este estado
de desarrollo ni se pensaba en los trminos soporte, documentacin, distribucin .....
Despus de la version 0.03, Linus salt en la numeracin hasta la 0.10. Ms y ms
programadores a lo largo y ancho de internet empezaron a trabajar en el proyecto
y, despus de sucesivas revisiones, Linus increment el nmero de versin hasta la
0.95 (Marzo 1992). Ms de un ao despus (diciembre 1993), el ncleo del sistema
estaba en la version 0.99 y la versin 1.0 no lleg hasta el 14 de marzo de 1994. Desde
entonces no se ha parado de desarrollar.La versin actual del ncleo es la 2.6 y sigue
avanzando da a da con la meta de perfeccionar y mejorar el sistema.
Caractersticas de Linux
Aqu tenis una lista bastante completa con las caractersticas de LINUX [Fuente:
Infosheet-Como. Autor: Ivan Casado] . * Multitarea: La palabra multitarea describe
la habilidad de ejecutar varios programas al mismo tiempo. LINUX utiliza la llamada
multitarea preeventiva, la cual asegura que todos los programas que se estn utilizando
en un momento dado sern ejecutados, siendo el sistema operativo el encargado de
ceder tiempo de microprocesador a cada programa. * Multiusuario:muchos usuarios
usando la misma mquina al mismo tiempo. * Multiplataforma: Las plataformas en
las que en un principio se puede utilizar Linux son 386-, 486-, Pentium, Pentium
Pro, Pentium II,Amiga y Atari.Tambin existen versiones para su utilizacin en otras
plataformas, como Alpha, ARM,MIPS, PowerPC y SPARC. * Multiprocesador: Soporte
para sistemas con ms de un procesador;est disponible para Intel y SPARC. *
Funciona en modo protegido 386. * Proteccin de la memoria entre procesos, de
manera que uno de ellos no pueda colgar el sistema. * Carga de ejecutables por
demanda: Linux slo lee del disco aquellas partes de un programa que estn siendo
usadas actualmente. * Poltica de copia en escritura para la comparticin de pginas
entre ejecutables: esto significa que varios procesos pueden usar la misma zona de
memoria para ejecutarse. Cuando alguno intenta escribir en esa memoria, la pgina
(4Kb de memoria) se copia a otro lugar. Esta poltica de copia en escritura tiene dos
beneficios: aumenta la velocidad y reduce el uso de memoria. * Memoria virtual usando
paginacin (sin intercambio de procesos completos) a disco: a una particin o un
archivo en el sistema de archivos, o ambos, con la posibilidad de aadir ms reas de
intercambio sobre la marcha .Un total de 16 zonas de intercambio de 128Mb de tamao
mximo pueden ser usadas en un momento dado con un lmite terico de 2Gb para
intercambio. Este lmite se puede aumentar fcilmente con el cambio de unas cuantas
lneas en el cdigo fuente. * La memoria se gestiona como un recurso unificado para
los programas de usuario y para la cach de disco, de tal forma que toda la memoria

Pgina 194 de 384

Linux

libre puede ser usada para cach, y sta puede a su vez ser reducida cuando se
ejecuten grandes programas. * Libreras compartidas de carga dinmica (DLL's) y
libreras estticas. * Se realizan volcados de estado (core dumps) para posibilitar los
anlisis post-mortem, permitiendo el uso de depuradores sobre los programas ,no slo
en ejecucin sino tambin tras abortar estos por cualquier motivo. * Compatible con
POSIX, System V y BSD a nivel fuente. * Emulacin de iBCS2, casi completamente
compatible con SCO, SVR3 y SVR4 a nivel binario. * Todo el cdigo fuente est
disponible, incluyendo el ncleo completo y todos los drivers, las herramientas de
desarrollo y todos los programas de usuario; adems todo ello se puede distribuir
libremente. Hay algunos programas comerciales que estn siendo ofrecidos para
Linux actualmente sin cdigo fuente, pero todo lo que ha sido gratuito sigue siendo
gratuito. * Control de tareas POSIX. * Pseudo-terminales (pty's). * Emulacin de 387
en el ncleo, de tal forma que los programas no tengan que hacer su propia emulacin
matemtica. Cualquier mquina que ejecute Linux parecer dotada de coprocesador
matemtico. Por supuesto, si el ordenador ya tiene una FPU (unidad de coma flotante),
esta ser usada en lugar de la emulacin, pudiendo incluso compilar tu propio kernel
sin la emulacin matemtica y conseguir un pequeo ahorro de memoria. * Soporte
para muchos teclados nacionales o adaptados y es bastante fcil aadir nuevos
dinmicamente. * Consolas virtuales mltiples: varias sesiones de login a travs de
la consola entre las que se puede cambiar con las combinaciones adecuadas de
teclas (totalmente independiente del hardware de video). Se crean dinmicamente y
puedes tener hasta 64. * Soporte para varios sistemas de archivo comunes, incluyendo
minix-1, Xenix y todos los sistemas de archivo tpicos de System V, y tiene un avanzado
sistema de archivos propio con una capacidad de hasta 4 Tb y nombres de archivos
de hasta 255 caracteres de longitud. * Acceso transparente a particiones MS-DOS (o
a particiones OS/2 FAT) mediante un sistema de archivos especial: no es necesario
ningn comando especial para usar la particin MS-DOS, sta parece un sistema de
archivos normal de Unix (excepto por algunas restricciones en los nombres de archivo,
permisos, y esas cosas). Las particiones comprimidas de MS-DOS 6 no son accesibles
en este momento, y no se espera que lo sean en el futuro. El soporte para VFAT (WNT,
Windows 95) ha sido aadido al ncleo de desarrollo y estar en la prxima versin
estable. * Un sistema de archivos especial llamado UMSDOS que permite que Linux
sea instalado en un sistema de archivos DOS. * Soporte en slo lectura de HPFS-2
del OS/2 2.1 * Sistema de archivos de CD-ROM que lee todos los formatos estndar
de CD-ROM. * TCP/IP, incluyendo ftp, telnet, NFS, etc. * Appletalk. * Software cliente y
servidor Netware. * Lan Manager / Windows Native (SMB), software cliente y servidor.
* Diversos protocolos de red incluidos en el kernel: TCP, IPv4, IPv6, AX.25, X.25, IPX,
DDP, Netrom, etc.
Linux Copyright

Plataforma de Teleformacin de IFES

Pgina 195 de 384

El copyright del '''kernel''' de Linux pertenece a '''Linus Torvalds'''. ste se distribuye


bajo la GNU General Public License.Esto significa bsicamente que cualquiera puede
libremente copiarlo, cambiarlo y distribuirlo, pero sin posibilidad de aplicar restricciones
en futuras distribuciones y teniendo que incluir el cdigo fuente. Las licencias de los
programas y aplicaciones que acompaan al ncleo varan;muchos pertenecen al
proyecto '''GNU''' y se distribuyen bajo '''GPL'''.
Fuentes
Las presentes FAQ se han seleccionado de http://www.linux-es.org/Faq/Files/Html/
FAQ_Linux_V2.0.2.html

Antes de la instalacin
Es Linux para m?
Aunque parezca muy simple,esta pregunta conlleva otra serie de cuestiones anejas
que hemos de considerar para responder con verosimilitud al profano en este sistema.
Por otra parte,aunque convencidos abogados de este sistema operativo frente a
los que no son de cdigo abierto, tambin hemos de aceptar las limitaciones del
mismo con respecto a los nuevos usuarios. En un principio,linux era para gurs,
hackers y desarrolladores...y hay muchos que piensan que debera seguir siendo
as. No obstante, las facilidades que tanto en instalacin, configuracin y gestin
del sistema,han proporcionado las distribuciones en sus versiones ms recientes
han acercado mucho al usuario final al mundo linux. Cuando pensamos en esta
FAQ lo hicimos considerando que los "novatos" en este sistema podan ser de
diversas procedencias: algunos podran ser grandes conocedores de informtica,
programadores y administradores de sistemas "no-linux",quienes se adaptaran
fcilmente; otros podran ser usuarios finales de algn otro sistema operativo, que
utilizan el ordenador para correr aplicaciones, como algunos conductores usan el
vehculo slo como medio para acceder a lugares lejanos en tiempos cortos, pero no
quieren saber nada de mecnica ni electricidad del automvil... Al preguntarnos ,es
linux para m? ,queremos decir ms bien,me conviene usar Linux? Para qu lo
quiero? Hemos ledo muchos libros y un gran nmero de documentos acerca de linux
en relacin con el usuario. Uno de ellos, titulado "Linux for the masses and other
popular myths" de Todd Burgess, trata en profundidad el tema de los trnsfugas
de sistemas operativos por cuestiones de moda (Cool people use Linux = la gente
gai usa linux) y nos dice usa linux: * Si lo requiere la aplicacin que necesitas * Si
deseas aumentar tu conocimiento acerca de sistemas operativos * Si no te importa
investigar "per se", como imperativo categrico. No uses linux: * Si no ests ducho
en sistemas operativos * Slo porque no es Microsoft * Si piensas que por eso eres
ms gai, inteligente o mejor que el usuario medio.En una lnea similar, encontramos
otro interesante documento que mantena que no deberamos usar linux: * Si nuestras

Pgina 196 de 384

Linux

necesidades estn cubiertas con nuestro sistema actual y pensamos que continuar
as en el futuro. * Si trabajamos en un ambiente comercial/industrial/profesional donde
no se usa linux y no disponemos de apoyo tcnico por parte de nuestra plantilla
tcnica ni pensamos poder proporcionar dicho apoyo nosotros mismos. * Si alguna
aplicacin importante y necesaria para nuestro trabajo no est disponible en linux
ni hay sustitutos adecuados. Mucha gente que lea esta FAQ en el futuro, provendr
del ambiente Microsoft (Windows 95/98/NT/00 ). En tal caso, aqullos que usaren su
computador bsicamente para el procesamiento de textos y el empleo de hojas de
clculo, deberan quedarse como estn. A pesar de todos sus fallos, Windows es fcil
de usar, ms an de aprender y dispone de una ingente cantidad de software. Los
que tienen otras ambiciones, pueden plantearse cambiar a linux por 10 importantes
razones(http://www.reichel.net/opensource/linuxtop10.html ): 1.Las distribuciones de
Linux no son costosas: pueden obtenerse gratis de los lugares apropiados de internet o
bien comprar los CDs por muy poco dinero comparado con otros sistemas comerciales.
2. Linux es un sistema operativo completo con tres grandes caractersticas: estable
(es muy raro que colapse una aplicacin en linux), fidedigno (un servidor linux puede
funcionar durante cientos de das sin necesidad de reiniciarse, lo que no es comn en
sistemas Windows) y extremadamente potente. 3.Tiene un entorno de programacin
completo,incluyendo C, C++, compiladores Fortran, utilidades como Qt y lenguajes
de guiones (scripts) como Perl, gwak y sed. (un simple compilador C para Windows
cuesta cientos de dlares) 4.Presenta una excelentes prestaciones para conexin
en red, permitiendo compartir PPUs y mdems. 5.Constituye el entorno ideal para
hacer funcionar servidores web (Apache) o FTP (oran). 6.Adems del software "libre",
hay tambin bastante software comercial para linux. 7. Se actualiza y mantiene
fcilmente (a diferencia de Windows). 8. Admite mltiples procesadores como norma.
9. Es realmente multitarea (a diferencia de Windows). 10.Tiene un excelente servidor
X-windows y numerosos gestores de ventanas X. y adems, por instalar linux no
tendremos que renunciar a Windows: es posible gestionar linux + otros sistemas
operativos en el mismo ordenador. Para terminar, me gustara copiar literalmente
un trozo de la introduccin de un libro titulado "Manual Avanzado de linux" de Ral
Montero Rivero (Ed. Anaya) que viene como anillo al dedo al nuevo usuario de
nuestro sistema: "Aprenders qu es linux, sus virtudes y sus defectos, cmo puedes
conseguirlo, qu distribucin elegir a la hora de instalarlo, cmo administrar tu sistema
correctamente, cmo trabajar con X-windows, cmo conectarte con l a Internet...Pero
no todo va a ser tan fcil con linux, porque como comprobars, no es un sistema hecho
para cobardes. Tendrs que ser valiente". Si te da miedo formatear tu disco duro,
linux no es para ti. Si te acobarda tener que reinstalar todo de nuevo slo porque has
cometido un pequeo error en el proceso de instalacin, abandona y no sigas. Si te
aterra la mera idea de particionar tu disco duro, apaga y vmonos. Y si te vas a pasar
todo el rato pensando que al configurar la frecuencia de tu monitor para que funcione

Plataforma de Teleformacin de IFES

Pgina 197 de 384

X windows, te lo puedes cargar, mejor que vuelvas a tu Windows de siempre. Ahora


seguro que ya sabes si linux es para ti... Bienvenido!
Cunto espacio necesito en mi disco duro para instalar Linux?
Esto depende en gran medida de la cantidad de programas/paquetes que quieras
instalar, del espacio que reserves para swap (espacio de intercambio) y del espacio
libre que quieras tener para datos/documentos. Hay que puntualizar que los datos que
se dan en esta subseccin hacen referencia al sistema en s, ms programas. * Una
instalacin super mnima,necesitar alrededor de unos 10MB. * Una instalacin mnima
con las X includas, alrededor de los 80Mb. * Para tener un sistema completo (sistema/
libreras/programas/aplicaciones/espacio para almacenamiento de datos),funcional
y siendo realistas, habra que tener de 500Mb a 1,5Gb de espacio en el disco duro.
Como en cualquier sistema, si quieres instalar todos los programas que pasen por tus
manos o si la cantidad de informacin con la que trabajas es muy grande, necesitars
ms y ms espacio y siempre te parecer poco el que tienes.
Cunta memoria necesito para usar Linux?
Esto depender tambin en gran medida del uso que le vayas a dar a tu
mquina.Cuanta ms memoria, mejor trabajar. Aqu tienes unos datos orientativos
sobre la cantidad de memoria necesaria: * Como mnimo se necesitan 4Mb de memoria
RAM para utilizar Linux.Esta cantidad es como se indica mnima y no apta para trabajar
con sistemas grficos. * Para trabajar con las X-windows de una manera decente
(depender del entorno grfico utilizado) se necesitar como mnimo 16Mb. * Para
un uso intensivo y para trabajar con programas que requieren muchos recursos,se
recomienda de 32Mb en adelante. Cuanta ms memoria se tenga, ms suelto trabajar
nuestro sistema y ms programas podremos tener cargados en memoria.
Funcionar mi equipo con linux?
Hoy en da la gran mayora de hardware est soportado por Linux,as que no deberiais
tener problemas.De todas maneras, existen configuraciones que no estn soportadas
y quizs ltimos modelos de tarjetas grficas, controladoras, etc, que tampoco
lo estn.Da a da se trabaja para dar soporte a nuevo hardware y lo que no este
soportado hoy, probablemente est soportado muy pronto. En un pasado,muchas
casas de productos no apoyaban a linux,con el consiguiente retraso en el soporte a
estos productos con respecto a otros sistemas operativos, pero ltimamente esto est
cambiando rpidamente.Si queris comprobar si vuestro hardware est soportado por
linux o no, leed el Hardware-Howto,un documento con el hardware soportado por linux.
Tambin os podis pasar por esta excelente web, Linuxhardware.net, donde podris
consultar sobre vuestro hardware.
Cmo consigo Linux?

Pgina 198 de 384

Linux

Linux es una sistema de libre distribucin por lo que podis encontrar todos los ficheros
necesarios para su funcionamiento en multitud de servidores conectados a Internet.
Casi todos los principales distribuidores de Linux ofrecen la posibilidad de bajarse
sus distribuciones va FTP. Otra alternativa para los que van a instalar el sistema por
primera vez son las llamadas "Distribuciones" de Linux. Una distribucin no es otra
cosa que una recopilacin de programas y ficheros, organizados y preparados para
su instalacin. Estas distribuciones se pueden obtener a travs de Internet,como ya
hemos explicado, pero tambin se encuentran en varios CDes conteniendo todos
los ficheros necesarios para instalar un sistema Linux bastante completo y, en la
mayora de los casos, un programa de instalacin que nos ayudar en la tarea de una
primera instalacin. Existen varias distribuciones creadas por diferentes empresas a
unos precios bastantes asequibles las cuales deberiais poder encontrar en tiendas de
informtica o libreras.En el peor de los casos siempre podis encargarlas directamente
por Internet a las empresas que las crean.A veces las revistas de informtica sacan
una edicin bastante aceptable de alguna distribucin.Si vais a instalar el sistema por
primera vez os recomiendo haceros con una de estas distribuciones y en un futuro,
cuando queris actualizar el sistema con las ltimas versiones y actualizaciones
del ncleo y programas que utilicis, usad Internet. Para ms informacin sobre
las distintas distribuciones de Linux podis leer la Linux Distribution HOWTO. A
continuacin tenis una lista con las principales distribuciones: * Redhat Pagina web:
http://www.redhat.com FTP principal: ftp://ftp.redhat.com/pub/ * Debian Pagina web:
http://www.debian.org/ FTP principal: ftp://ftp.debian.org/debian/ * SuSE Pagina web:
http://www.suse.de/es/ FTP principal: ftp://ftp.suse.com/ * Caldera Openlinux Pagina
web: http://www.caldera.com/ FTP principal: ftp://ftp.caldera.com/pub/OpenLinux/ *
Slackware Pagina web: http://www.slackware.com/ FTP principal: ftp://ftp.cdrom.com/
pub/linux/slackware * Eurielec Pagina web: http://www.eurielec.etsit.upm.es/linux/ FTP
principal: ftp://ftp.dit.upm.es/linux/ * Esware Pagina web: http://www.esware.com/ FTP
principal: ftp://ftp.hardlogic.es/pub/
Qu distribucin es la mejor?
Esta pregunta se podra denominar "la pregunta del milln".Son muchos los usuarios
que la hacen y la respuesta no es fcil de hacer.Como ya se ha explicado en la seccin
Que es Linux?, un sistema Linux est formado por el ncleo (Leer seccion kernel/
nucleo) ms una serie de programas y libreras que hacen posible tener un sistema
productivo y operativo. Tanto el ncleo, como las libreras y programas necesarios
estn disponibles libremente en internet. Con esto, cualquiera con conocimientos,
puede instalarse un sistema Linux sin necesidad de adquirir una distribucin, o crear
una nueva distribucin desde cero.No hace falta decir que hacer esto es una tarea que
requiere muchos conocimientos y tiempo. Lo que hacen las empresas que crean una
distribucion es precisamente esto, poner todos los componentes necesarios juntos,
con esto nos evitamos el tener que hacerlo nosotros. Las distribuciones suelen traer un

Plataforma de Teleformacin de IFES

Pgina 199 de 384

programa de instalacion, generalmente creado por la empresa que crea la distribucion,


manuales con documentacion, una serie de programas/librerias para poder usar el
sistema, un kernel, y en algunas ocasiones aplicaciones diversas y soporte tecnico.
Sabido esto, podemos afirmar que la diferencia entre una distribucin u otra es la
calidad de lo includo en la misma. Algunos programas de instalacin pueden ser
ms intuitivos que otros o ms faciles de utilizar.La calidad de la documentacin,que
el conjunto de programas/librerias estn bien testeados y funcionen bien juntos
(diferentes versiones, libreras, etc),soporte eficiente, etc,el kernel es el mismo en
todas las distribuciones,excepto en la version,es decir, una distribucin A con el kernel
2.2.9 y otra distribucin distinta B con el kernel 2.2.9 estn utilizando exactamente
el mismo kernel,el kernel es comn a todas las distribuciones y no existe un kernel
para una distribucin y otro para otra. A continuacin tenis unos comentarios sobre
las distribuciones ms usadas. No son en absoluto todas, pero s son las que forman
el mayor porcentaje de sistemas Linux instalados. Redhat: * Ms extendida, buena
calidad. * Fcil de instalar,incluye programas de configuracin que simplifican ciertas
tareas. * Buena documentacin (en ingls). * Buen seguimiento de fallos y correcciones
de los mismos pueden bajarse de su web. Debian: * Muy buena calidad. No est
sometida a presiones comerciales,cuidan mucho la calidad antes de su lanzamiento.
* Definida tpicamente como la distribucin de los usuarios avanzados. Puede ser un
poco difcil de instalar para el usuario iniciado y sin conocimientos de informtica. *
Buena documentacin (en ingls). * Buen seguimiento de fallos y correcciones de
los mismos pueden bajarse de su web. SuSE: * Buena calidad germana. * Fcil de
instalar, incluye programas de configuracin que simplifican ciertas tareas. * Buena
documentacin (gran parte en castellano). * Buen seguimiento de fallos y correcciones
de los mismos pueden bajarse de su web. Caldera: * Buena calidad. * Fcil de instalar.
* Buena documentacin (en ingls). * Buen seguimiento de fallos y correcciones de los
mismos pueden bajarse de su web Slackware: * Esta distribucin fue de las primeras
y durante un largo tiempo fue la que ms se utiliz.Ha tenido un tiempo en que no se
ha actualizado mucho y eso le ha hecho perder seguidores.Parece que ha vuelto con
fuerza. * Un poco ms complicada de configurar que la media. * Documentacin en
ingls.
Puedo tener ms de un sistema operativo en mi equipo?
La respuesta es s,no es ningn problema el tener ms de un sistema operativo en
tu mquina. Es ms,hay mucha gente que tiene incluso 3 y 4 sistemas.Para hacer
esto hay que tener claro cmo se instalan los sistemas que queremos tener, cmo
realizar particiones en el disco duro (Leer seccin durante la instalacin) y en qu orden
deberamos instalarlos para que no tengamos problemas. Existen unos documentos
Howtos y MiniHowtos que explican muy bien cmo tener diferentes sistemas en tu
ordenador; los podris encontrar en cualquier servidor que contenga la documentacin
de Linux. Ms informacin en la subseccin "Dnde encuentro documentacion sobre

Pgina 200 de 384

Linux

linux?": * Linux-DOS-Win95-OS2 * Linux + FreeBSD * NT Loader+Linux * Linux+Win95


* Loadlin+Win95
Funcionan mis programas/juegos para Windows en Linux?
Como primera afirmacin,podemos decir que no:tus programas para Windows
no funcionarn en Linux. Windows y Linux/Unix no son compatibles y programas
compilados en una u otra plataforma no funcionarn en otra plataforma que no sea
en la que el programa se compil para su utilizacin. Como segunda afirmacin,
podemos decir que en algunos casos es posible ejecutar programas para Windows
en Linux, si hacemos uso de un emulador de windows para Linux. Un emulador es un
programa que se ejecuta en Linux y que crea una mquina virtual windows, engaando
al programa windows, que creer que se est ejecutando en un sistema Windows.
Existen dos emuladores de uso comn, '''Wine''' (libre) y '''WMware''' (comercial).De
estos dos parece ser que '''WMware''' es de una calidad superior y que funcione sin
grandes problemas. Podramos aconsejar el no usar emuladores para evitar problemas.
A no ser que tengas necesidad de usar una aplicacin muy especial,existen versiones
de programas con caractersticas similares a los de Windows,nativos de Linux, con lo
que probablemente te funcionen mejor,ms rpido y no te consuman tantos recursos.
La eleccin es vuestra .
Qu tengo que saber antes de instalar linux?
Introduccin : Si nos ceimos a esta FAQ, en la seccin 1 se proporciona una
informacin de carcter general acerca de qu es Linux, su historia, caractersticas,... .
En la segunda seccin se aaden otros aspectos fundamentales como ,para qu
quiero linux? Qu espacio y memoria necesito? Funcionar en mi equipo? (si lo
tengo) Cmo lo consigo? Qu distribucin es la que ms me conviene? etc... Lo
que se ha abordado en esta seccin son los datos relativos al sistema donde vamos a
instalar linux. Muchos usuarios desconocen por completo qu es lo que estn usando:
no saben qu placa base tienen, ni qu tipo de memoria, qu tarjeta de vdeo, si su
ratn es serie o ps2, ...y por supuesto otras ms sutiles como el refresco vertical de la
pantalla de su monitor. Es necesario conocer el tipo de hardware de nuestro sistema
informtico para ver si es compatible con la distribucin de linux que vamos a instalar.
Hay un par de libros de la editorial Anaya que son excelentes para prepararse: * Patrick
Volkerding, Kevin Reichard y Eric Foster-Johnsos, Instalacin y configuracin de Linux,
Anaya, Madrid, 1999 * Naba Barkakati, RedHat Linux a fondo, Anaya, Madrid,1999
Antes de instalar Linux hay que preparar el PC para la instalacin. Puede que ya
dispongamos de un PC con algn sistema operativo instalado como MS-DOS, Windows
o OS/2 o puede ocurrir que vayamos a comprarnos un PC nuevo para instalar Linux
en l. En este ltimo caso podremos elegir el hardware y los perifricos compatibles
con linux. De todos modos, en el apartado siguiente, nos dedicaremos a considerar el
hardware soportado por el sistema operativo linux. Los componentes fundamentales

Plataforma de Teleformacin de IFES

Pgina 201 de 384

En la tabla adjunta se indican los requerimientos mnimos (M) y ptimos (O) para los
componentes ms tpicos de un PC * Procesador : Intel 80386 (M); Pentium, i486 y
cualquier clnico de Intel (O) * RAM: 8 MB (M); de 32 MB a 2 GB * Tarjeta grfica:
VGA (M), SVGA o tarjeta soportada por las XFree86 (O) * Disco duro: 125 MB (M);
500 MB o ms (O) * Bus: Todos (M = O) * Lector CD-ROM: velocidad de x2 (M); x8 o
mayor (O) * Ratn: Microsoft, Logitech o compatible (M=O) * Tarjeta de red: Ninguna
(M); Cualquiera soportada (O) .A continuacin veremos todo desde un punto de vista
mucho ms pormenorizado. La Unidad Central de Procesos: Linux funcioma bien
con cualquier procesador a partir de i386, especialmente i486, Pentium, Pentium
Pro Pentium II/III y los Intel compatibles AMD y Cyrix. No funcionar con ningn i286
o inferior porque no son de 32 bits (aunque existen proyetos por ah para hacerlo
funcionar en 8086 /80286). Buses: Linux los admite todos: ISA, VLB, EISA, PCI, PS/2
y MCA (este ltimo desde la versin 2.0.7). Hay dos placas base que no funcionan
con linux: la Supermicro P5MMA y la Supermicro P5MMA98. Para que lo hagan es
necesario descargar de la red BIOS adecuadas: ftp.supermicro.commma9051.zip y
ftp.supermicro.com/a98905.zip/ Memoria RAM: para que el sistema con X-windows
funcione decentemente debera disponer de al menos 16 MB de RAM. Como mximo
puede gestionar 2 GB de RAM, pero a partir de 1 GB, pueden aparecer grandes
limitaciones en la celeridad si no se instala memoria cach adicional en el PC.
Si la memoria es superior a 64 MB habr de indicarse al sistema en el fichero de
configuracin de LILO /etc/lilo.conf como una lnea (esto no es necesario a partir de la
serie 2.2.x del kernel); p.ej., si tenemos 128 MB pondremos ## append="mem=128M"
Discos duros: Linux funciona con cualquier disco duro compatible con el BIOS del PC.
Para instalar linux en el PC, no vendra mal disponer de una particin de alrededor
de 1 GB para el linux native. Si se usa un disco duro de gran capacidad (que tenga
ms de 1024 cilindros), entonces habremos de situar LILO, el kernel y los archivos
de configuracin en los primeros 1023 cilindros. Realmente linux no trabaja con los
discos directamente, sino con los controladores del disco. Linux funciona con todos los
controladores IDE e IDE/ATAPI, ciertos controladores EIDE (que gestionan hasta cuatro
dispositivos sean discos duros o CD-ROMs) y los controladores SCSI a excepcin de
los adaptadores SCSI de puerto paralelo. Miscelnea: La gran mayora del hardware
soportado por linux puede consultarse en las direcciones http://es.tldp.org/COMOINSFLUG/COMOs/Compatibilidad-Hardware-Como/ , http://www.xfree86.org/ y http://
linuxhardware.net/ . Todo sobre controladores EIDE, SCSI, Lectores y grabadores
CD-ROM, Unidades de cinta, Unidades extrables, ratones (trackballs y touchpads),
tarjetas de red (Ethernet, RDSI, Token-Ring, ARCnet...), tarjetas grficas includas en
la ltima lista de XFree86, tarjetas de sonido, dispositivos PCMCIA, etc. , se encuentra
en estas direcciones y deben consultarse para evitar sorpresas. El peligro de Windows:
Impresoras y modems: Existe un peligro en lo que respecta a ciertas impresoras
y modems llamados winprinters y winmodems que no funcionan en linux. Hay dos
tipos de impresoras que definitivamente no funcionan con linux: todas las impresoras

Pgina 202 de 384

Linux

Hewlett-Packard Desjet 820xx y la Sharp JX-9210 que slo funcionan con Windows
95. El resto son compatibles con linux, aunque en ciertos casos hace falta descargar
controladores (Canon BJC600/800; HP Deskjet 500/.../855C) o programas que mejoran
la calidad de impresin (como el free-lj4 para la serie HP Laserjet 4). El problema de
los winmodems es que parte del hardware es sustituido por software y ese software
solamente es de Windows, con lo cual no pueden funcionar en linux. Lo malo es
que al comprar un mdem nos venden un winmodem sin avisar. Si tenemos uno de
ellos lo mejor es reemplazarlo por otro que funcione en linux. Para ello lo mejor es
consultar en la direccin http://es.tldp.org/FAQ/FAQ_Linux/Html/FAQ_Linux-8.html para
escoger uno adecuado. Antes de la instalacin... Antes de comenzar la instalacin,
es necesario recoger la informacin necesaria para llevar a buen trmino el proceso:
* Controlador marca y modelo del CD-ROM * Marca y modelo de la tarjeta ethernet
* Modelo, fabricante y puerto usado por el ratn * Modelo Chipset y fabricante de la
tarjeta grfica * Servidor X compatible con la tarjeta grfica * Memoria de la tarjeta
grfica * Modelo, fabricante y datos de la tarjeta de sonido * Intervalos de trabajo de
barrido horizontal (kHz) y de refresco vertical (Hz) del Monitor. * Fabricante, modelo
y puerto serie usado por el mdem * Fabricante y modelo de impresora * Nombre
del computador * Nombre del dominio de red * Direccin IP asignada al computador
* Direccin de red de area local * Direccin de la mscara de red * Direccin de
transmisin de la red * Direccin del encaminador * Direccin del servidor de nombres
Todos estos datos sern necesarios para instalar convenientemente el hardware y
configurar las X-windows. Por ltimo, antes de comenzar sera bueno haber ledo un
poco de linux o -mejor an- tener un amigo que ya conozca el sistema y que se digne a
acompaarnos durante la instalacin y configuracin de nuestra distribucin.

Durante la instalacin
Dnde instalo Linux?
Linux se puede instalar en cualquier disco que tengas en tu sistema y en cualquier
particin del disco duro (primaria o extendida).No podrs tener Linux en una particin
compartida con otro sistema operativo.Linux necesita su propia particin/es para
funcionar.
Qu es una particin? Cmo creo una particin?
Particionar el disco duro es una manera de dividir el disco fsico en varios discos
lgicos. O lo que es lo mismo, al particionar un disco, dividimos el disco en varias
particiones independientes unas de otras, creando la ilusin de que tenemos diferentes
discos, cuando en realidad lo que tenemos es un solo disco fsico dividido en partes.
Una particin es una de estas partes (divisiones) del disco. Existen dos clases de
particiones: primarias y extendidas. En un disco slo podrs tener como mximo 4
particiones primaria y 1 extendida. En la particin extendida se podrn definir todas

Plataforma de Teleformacin de IFES

Pgina 203 de 384

(bueno,tambin existe un lmite, pero es alto) las unidades lgicas que queramos.
Con este sistema podemos tener una gran cantidad de particiones en nuestro disco.
Cualquier disco que tengamos en nuestro ordenador tiene al menos una particin
primaria,que en la mayora de los casos tiene un tamao equivalente al total del
disco. Unos ejemplos aclararn las cosas: * Un disco de 1Gb con una sola particin,
tendr una particin primaria de 1Gb (total del disco). * Ese mismo disco podra
tener 4 particiones primarias de 0.25Gb cada una,dando la ilusin de que tenemos 4
discos duros de 0.25Gb en vez de un solo disco de 1Gb. * Otra combinacin posible
podra ser 4 particiones primarias de 0.10Gb y 1 extendida con 6 unidades logicas
de 0.10Gb.En este caso parecera que tenemos 10 discos duros de 0.10Gb cada
uno.Las combinaciones son mltiples y variadas y dependern de nuestros gustos
y de lo que necesitemos. Casi todos los sistemas operativos traen un programa con
el que podemos crear,modificar, borrar las particiones de nuestro disco. En Ms-Dos/
Windows se llama FDISK. Este programa slo puede trabajar con particiones de MsDos/Windows. En Linux tambin se llama FDISK (/sbin/fdisk), pero es un programa ms
potente, capaz de trabajar y crear particiones tanto para Linux como otros sistemas
operativos. Si vas a trabajar con Linux, es recomendable el uso del FDISK que viene
con tu distribucin, para evitar problemas. Al contrario que Ms-Dos, Windows, OS/2,
las diferentes particiones en linux no se denominan C:, D:, E:, ...., etc. Existe una
denominacin propia. Si los discos son IDE: * /dev/hda: Disco duro IDE como master
en el canal IDE 1. * /dev/hda1: Particin primaria 1 en /dev/hda * /dev/hda2: Particin
primaria 2 en /dev/hda * /dev/hda3: Particin primaria 3 en /dev/hda * /dev/hda4:
Particin primaria 4 en /dev/hda * /dev/hda5: Particin extendida 1 en /dev/hda * /dev/
hda6: Particin extendida 2 en /dev/hda * ..... * ..... * /dev/hda16: Particin extendida 16
en /dev/hda * /dev/hdb: Disco duro IDE como esclavo en el canal IDE 1. * /dev/hdb1:
Particin primaria 1 en /dev/hdb * ........ * ........ * /dev/hdc: Disco duro IDE como master
en el canal IDE 2. * /dev/hdc1: Particin primaria 1 en /dev/hdc * ........ * ........ * /dev/
hdd: Disco duro IDE como esclavo en el canal IDE 2. * /dev/hdd1: Particion primaria 1
en /dev/hdd * ........ * ........ Si los discos son SCSI: * /dev/sda: Disco duro SCSI nr.1. * /
dev/sda1: Particin primaria 1 en /dev/sda * ........ * ........ * /dev/sdb: Disco duro SCSI
nr.2. * /dev/sdb1: Particin primaria 1 en /dev/sdb * ........ * ........ IMPORTANTE: Es
muy importante saber lo que se est haciendo cuando trabajis con programas que
modifican la tabla de particiones de un disco. Al cambiar la tabla de particiones de
vuestro disco, se pierden los datos contenidos en las particiones afectadas. Realizad
copias de seguridad de los datos que queris mantener antes de usar FDISK.
Por qu necesito diferentes particiones?
El particionar el disco es simplemente una manera de organizar tu disco duro.Podrs
organizarlo con una sola particin o en varias. Es el usuario el que deber decidir
cuntas particiones tendr su disco y el tamao de las mismas. Hay que recordar
que al menos hay que tener una particin primaria. Desventajas de tener vuestro

Pgina 204 de 384

Linux

disco dividido en diferentes particiones:ninguna. Ventajas de tener vuestro disco


particionado en varias particiones: * Si tenis un error/problema en una de ellas, las
dems no se vern afectadas. * Poder tener diferentes sistemas operativos en vuestra
mquina,totalmente independientes unos de otros. * Poder tener vuestros archivos de
datos en particiones totalmente independientes. * Poder borrar/cambiar el contenido de
una particin, sin que esto afecte a las dems.
Cuntas particiones necesito para Linux?
La respuesta rpida y fcil es: recomendable al menos dos,una para el sistema/datos
y otra para Swap.Usualmente se suelen tener tres, una para el sistema/programas
(/), otra para los datos (/home) y otra para swap. La respuesta larga y no tan fcil
es ms complicada de explicar:todo depender muchsimo del uso que se le vaya a
dar al sistema.Para sistemas que se utilicen de forma particular y por uno o pocos
usuarios bastar con las dos/tres particiones antes mencionadas;esto evitar los
problemas de saber qu cantidad de espacio necesitan las diferentes particiones y el
quedarnos sin espacio en alguna particion vital,mientras que nos sobra en otras.Para
sistemas servidores, con gran cantidad de servicios y usuarios, es muy recomendable
tener varias particiones/discos. Existe un documento (HOWTO: Multi Disk System
Tuning) muy bueno y quizs complicado para el principiante que explica cuntas
particiones, discos y qu tamao deberan tener en funcin del uso que se le vaya a dar
al sistema .Lo podis encontrar en http://www.nyx.net/~sgjoen/disk.html, o en cualquier
servidor con documentacin Howto.
Qu es la Swap ?
La swap es un espacio reservado en tu disco duro para poder usarse como una
extensin de memoria virtual de tu sistema. Es una tcnica utilizada desde hace tiempo
para hacer creer a los programas que existe ms memoria RAM de la que en realidad
existe. Es el propio sistema operativo el que se encarga de pasar datos a la swap
cuando necesita ms espacio libre en la RAM y viceversa. En Linux, la memoria total
disponible por el sistema estar formada por la cantidad de memoria RAM instalada +
la swap disponible. El acceso a la swap (disco duro) es ms lento que el acceso a la
memoria RAM, por lo que si nuestro ordenador est muy cargado de trabajo y hace un
uso intensivo de la swap, la velocidad del sistema disminuir.Un uso muy intensivo y
continuado de la swap es un indicativo de que necesitamos ms memoria en nuestro
sistema para que funcione desahogado con el uso que le estamos dando. En linux
generalmente se usa como mnimo una particin dedicada a swap (aunque tambin se
puede tener un fichero swap).
Cunta Swap necesito?
sta es otra pregunta que es difcil de contestar:todo depender del uso que se le vaya
a dar al sistema y del espacio libre que tengamos.Si vas a utilizar muchos programas

Plataforma de Teleformacin de IFES

Pgina 205 de 384

a la vez y tienes poca memoria RAM, necesitars ms swap;si tienes mucha RAM,
no necesitars tanta swap. Hay que recordar que un uso no intensivo de la swap
es normal y no afectar mucho a la velocidad del sistema,pero como hemos dicho
antes,un uso muy intensivo y continuado es un indicativo de que necesitamos ms
memoria RAM. No existe una frmula mgica para saber cunto espacio deberamos
reservar para swap.Hay que recordar que la memoria total disponible en Linux es
RAM + Swap.Como datos orientativos podramos decir que como mnimo,esta
combinacin debera ser de 32MB para sistemas que se utilicen en modo texto y de
64MB en adelante para sistemas que se utilicen en modo grfico. Aqu tenis una
serie de consejos sobre la swap: * Es recomendable el tener siempre algo de swap
configurada,incluso en sistemas con mucha memoria. * En linux no se puede tener
mas de 128MB en una particion swap.Si necesitas ms de 128MB de swap,puedes
tener ms de una particion dedicada a swap,por ejemplo,dos de 128MB * Si tienes ms
de un disco,instala la swap en el que trabaje ms rpido. * Si tienes ms de un disco
que se puedan acceder simultaneamente (por ej. dos SCSI, o dos IDE en diferentes
canales IDE),se puede ganar algo de velocidad teniendo una particin swap en cada
uno de estos discos. Para un uso privado "normal-alto" del sistema, aqu tenis unos
ejemplos orientativos,segn mi opinin,de la cantidad de swap recomendable: * 16MB
RAM + 64MB Swap * 32MB RAM + 96MB Swap * 64MB RAM + 64MB Swap * 128MB
RAM + 128MB Swap * 256MB RAM + 128MB Swap Como dato anecdtico,decir que
existen servidores,en donde la cantidad de swap llega a ser de 256MB y hasta 512MB
aunque yo tengo ordenadores con 16MB de RAM y 16MB de Swap como servidores de
impresin que funcionan sin ningn problema. En fin, cada uno debe saber el uso que
le va a dar a su sistema y analizar la cantidad de memoria necesaria,aunque si tenis
espacio de sobra en el disco,ms vale tener mas Swap disponible que la necesaria,por
lo que pueda ocurrir en un futuro. Como dice el dicho,ms vale que sobre que no que
falte.
No tengo sitio en mi disco duro,qu hago?
Si tienes todo el espacio de tu disco ocupado por otros sistemas
operativos,debersconseguir espacio para poder crear la particin/es donde instalar
Linux. Existen tres maneras de hacer esto:la primera, compra un disco duro e instlalo.
* Ventajas: Es la manera ms fcil y segura de conseguir ms espacio. * Desventajas:
Es la ms cara ;tienes que instalar un nuevo disco duro. La segunda es borrar todas
las particiones de tu disco duro,con lo que perders toda la informacin que contiene, y
empezar desde cero a definir las diferentes particiones del disco. As podrs definir las
particiones para Linux y otros sistemas operativos si vas a tenerlos. * Ventajas: Es la
manera ms fcil y barata de conseguir ms espacio,no necesitas comprar otro disco.
* Desventajas: Pierdes la informacin que ya tengas en el disco; ms trabajo, ya que
si tienes ms de un sistema operativo tienes que instalarlos tambin aparte de Linux.
La tercera,existen unos programas que permiten cambiar la tabla de particiones del

Pgina 206 de 384

Linux

disco,sin perder los datos de las mismas. Si tienes por ejemplo una particin de 1GB
con 500MB libres, puedes utilizar uno de estos programas para "robarle" espacio a la
particin y crear una nueva particin,teniendo al final por ej. una particion de 600MB
con la informacin de la particion original y una nueva particin con el resto de espacio
liberado. * Ventajas: Liberas espacio sin perder datos; no tienes que instalar de nuevo
la informacin/sistema operativo contenido en la particion original. * Desventajas:
Ests jugando con la tabla de particiones del disco,hay que saber muy bien lo que se
hace y cmo utilizar estos programas "ladrones de espacio".Si algo va mal,puedes
perder la informacin que tenas en la particin original y debers empezar de cero
como en el caso segundo.Existen dos programas "ladrones de espacio" que se suelen
utilizar normalmente en el caso tercero: * Partition Magic: Pagina web principal http://
www.powerquest.com/root/intnl/spanish.html * FIPS: Pagina web principal http://
bmrc.berkeley.edu/people/chaffee/fips/fips.html
Cmo configurar el arranque de Linux?
La manera ms fcil de arrancar Linux es con LILO.Psate por la seccin sobre LILO
para ms informacin.
Cmo utilizar LoadLin para el arranque de Linux?
A veces ciertos programas o "sistemas operativos" estn diseados para modificar el
Master Boot Record (MBR) del ordenador sin tener en cuenta los contenidos actuales
del mismo,lo que suele redundar en la eliminacin de LILO y la imposibilidad del
usuario de entrar en Linux. Para solucionar estos problemas, o por si simplemente
deseamos entrar en Linux desde MSDOS, est disponible el programa LOADLIN.
Loadlin es un programa de MSDOS que podemos encontrar en el directorio dosutils
de los CDs de Linux (en la propia distribucin).Este programa permite arrancar Linux
desde MSDOS a partir de l mismo,un fichero kernel de Linux (como vmlinuz, bzImage
o zImage) y una particin Linux. Mediante l podemos hacernos un disco de seguridad
para arrancar Linux cuando LILO sea borrado por otros S.O.: creamos un directorio a:
\loadlin y copiamos alli el ejecutable Loadlin.exe. Copiamos tambin cualquier ncleo
de Linux que tengamos disponible(por ejemplo \vmlinuz o \boot\bzImage) al mismo
diskette. Cuando necesitemos arrancar desde el diskette, arrancamos en MSDOS y
ejecutamos lo siguiente: Formato de uso: loadlin kernel root=particion, en nuestro caso:
## a: loadlin bzImage ## root=/dev/hda4 (cambiando cada cosa por su nombre correcto
de fichero de kernel y particin donde tengamos instalado Linux). Esto lo podemos
escribir en el mismo diskette en un fichero linux.bat,por ejemplo. Tras ejecutarlo,Linux
arrancar normalmente con dicho kernel y con los datos de la particin indicada,lo cual
permite restaurar el MBR original (con LILO) ejecutando de nuevo LILO(mediante /sbin/
lilo, o /sbin/lilo -v).

Plataforma de Teleformacin de IFES

Pgina 207 de 384

Sobre LILO
Qu es LILO y para qu sirve?
LILO,literalmente el cargador de Linux (Linux LOader), es un gestor de arranque muy
verstil que permite iniciar un sistema operativo(SO) cargando el sector de arranque de
una particin del disco duro(o de un diskette). Esto lo pueden hacer otros gestores de
botado,pero slo LILO puede cargar el kernel de Linux y arrancar Linux presentando
adems la posibilidad de pasar parmetros al kernel mediante lneas de comando.
LILO tiene una serie de componentes que se cargan de manera secuencial.En primer
lugar,se carga la primera parte (el comienzo del cdigo) del cargador en el sector
de arranque.Cuando este primer tramo del cargador se ha iniciado, aparece una "L"
en el monitor.Entonces, el resto (la mayor parte del cdigo) del cargador (que junto
con la primera parte del cdigo se encuentra en el fichero /boot/boot.b) procede a
iniciarse.Justo antes de que se cargue este segundo tramo de cdigo, se presenta
"I" en la pantalla. Si todo ha ido bien, despus de haberse cargado, la siguiente
letra de LILO, "L", aparecer en la pantalla. Despus de esto, se produce la carga
de la tabla de descriptores a partir del fichero /boot.map,donde se establecern las
ubicaciones de los posibles kernels de Linux as como los sectores de arranque
correspondientes a otros SOs que tambin gestione LILO. Por ltimo, se carga el
SO seleccionado, que en principio ser el kernel de Linux. Si todo ha funcionado sin
problemas, aparecer una "O" en el monitor y se habr escrito en la pantalla la palabra
LILO. Si hubiese problemas en el proceso de arranque, la presencia o ausencia de
las letras de LILO,junto con algunos otros mensajes, sern claves para diagnosticar la
causa del fallo.
Dnde se instala LILO?
Dependiendo de las necesidades que tengamos, podremos instalar LILO: * En el sector
de arranque de un diskette (floppy) (/dev/fd0) * En el sector de arranque (superbloque)
de una particin raz de Linux (primaria o extendida) (/dev/hda1, p.ej. para (E)IDE /
dev/sda1 p.ej. para SCSI) * En el MBR (Master Boot Record) o Sector Maestro de
Arranque (primer sector) del primer disco duro (/dev/hda, p.ej. para (E)IDE /dev/
sda p.ej. para SCSI) La opcin de instalar LILO en un diskette ("de arranque") es el
procedimiento ms seguro, pero tambin el ms lento de cargar Linux en nuestra
mquina. Si solamente tenemos Linux en nuestro ordenador la opcin idnea sera
instalar LILO en el MBR del primer disco duro. Si vamos a disponer de otros SOs
coexistiendo en nuestra mquina(MS-DOS, Windows) tambin podemos escoger
la instalacin de LILO en el MBR, y gestionar con l la carga de los SOs. Pero con
esto hay que tener ciertas precauciones. Si ya tenemos un SO en una particin, p. ej.
Windows 95, cuando instalemos LILO en el MBR sobreescribiremos dicho sector y ya
no podremos arrancar Windows 95, si no lo gestiona el propio LILO. Si tenemos Linux
instalado con LILO en el MBR y despus instalamos p. ej., Windows 95, se borrar
Pgina 208 de 384

Linux

LILO del MBR y no podremos arrancar Linux. En tal caso, para poder usar LILO como
gestor comn, habra que cargar Linux con un diskette de arranque y reinstalar,desde
Linux, LILO en el MBR. Por lo tanto, si vamos a meter varios SOs en nuestra mquina,
es mejor instalar primero los otros y luego linux, usando despus LILO como gestor
de arranque de todos los SOs. Si nos planteamos iniciar los diversos SOs, includo
linux, desde otro gestor de arranque, como por ejemplo el moderno BootMagic del
PartitionMagic 4.0 (Englobado ya en El Caldera OpenLinux 2.2), la mejor opcin sera
escribir LILO en el sector de arranque de la particin linux nativa correspondiente. En
tal caso,cuando instalemos linux,deberemos marcar dicha particin raz como activa
(usando el comando "a" de fdisk o el "b" de cfdisk).
Qu limitaciones impone el BIOS a LILO?
Excepto en el caso de que LILO sea el gestor de otros SOs,ser el BIOS u otro
cargador el responsable de ejecutar el sector de arranque de la particin. El BIOS
(Basic Input Output System) cuando encendemos el ordenador, lleva a cabo el POST
(Power-On Self Test) para comprobar los parmetros de la configuracin de hardware
que se encuentran permanentemente salvados en el chip CMOS (Complementary
Metal Oxyde Semiconductor) RAM (continuamente alimentado por una batera aunque
el ordenador se apague): memoria instalada, disqueteras, discos duros, cd-roms,...
Despus del test, BIOS muestra en la pantalla los valores de los parmetros de
hardware y procede a arrancar el SO.En el caso de un disco duro toma el MBR del
disco primario y de l se cargar el programa gestor de arranque. Antao, el MBR
contena el sistema de arranque del nico sistema operativo instalado. Hoy da,como es
posible cargar ms de un SO, para arrancar hace falta un gestor de arranque mltiple,
como por ejemplo LILO. Por lo tanto LILO est limitado por las opciones del BIOS.
Adems, LILO depende del BIOS para cargar los ficheros /boot/boot.b, /boot.map, los
diversos kernels, los sectores de arranque de los otros SOs ,y el mensaje de arranque
de LILO si se ha definido. Las restricciones ms importantes que afectan LILO eran en
el caso de BIOS antiguos la limitacin a los dos primeros discos duros y la imposibilidad
de acceder ms all de 1024 cilindros por disco, lo cual se vulneraba en cuanto el disco
duro superaba los 504 Mbytes,por lo que convena tener la particin raz que contuviera
los kernels en las primeras posiciones de la tabla. Los BIOS de las modernas placas
base ya soportan hasta cuatro dispositivos (discos duros o cdroms). As, cuando la
particin de arranque de Linux se encuentra en el segundo, tercero o cuarto disco duro,
LILO imprime un mensaje de precaucin,pero contina. El lmite de los 1024 cilindros
no ha cambiado con los nuevos BIOS, pero los controladores de disco con soporte de
LBA (Logical Block Address)o LARGE(IDEs con ms de 1024 cilindros, la mayora de
EIDEs y todos los SCSI) pueden "traducir" o "remapear" la geometra del disco en otra
equivalente de manera que parezca que el sistema tiene menos de los 1024 cilindros
y se puedan gestionar hasta casi 8 Gbytes.Si la informacin acerca de la geometra
del disco que hay en el men del BIOS (remapeada con p.ej. LBA) no es la misma (en

Plataforma de Teleformacin de IFES

Pgina 209 de 384

cuanto a cilindros/cabezas/sectores) que la que nos da fdisk, entonces se producir un


problema de "geometry mismatch" (no equivalencia de geometra) y LILO abortar el
arranque a menos que se utilice la opcin "linear" en la configuracin de LILO.
Cmo se configura e instala LILO?
La configuracin de LILO se hace en /etc/lilo.conf,pero antes que editar y escribir
manualmente la configuracin en este archivo, existen interfaces o programas capaces
de preparar una configuracin conveniente para el usuario, de manera que solamente
en el caso de incorporar opciones avanzadas tenga que editar y modificar a mano
el archivo. En primer lugar existe un programa llamado '''Quickinst''' que acompaa
la distribucin original del programa LILO. Se trata de un guin (shell script) que
produce una configuracin mnima de LILO que luego conviene actualizar. Por otra
parte ,la mayor parte de las distribuciones proporcionan un asistente durante la
instalacin que ayuda a la configuracin de LILO. RedHat en su "INSTALL" dedica
una parte importante a la configuracin de LILO. El "SETUP" de Slackware tambin lo
permite. Distribuciones como Caldera OpenLinux o SuSE disponen de herramientas
de instalacin que permiten una cmoda configuracin de LILO para el usuario (LISA
y LIZARD para OpenLinux 1.3 y 2.2, y YAST para SuSE).Quizs Debian ha sido un
poco ms espartana (al menos hasta Hamm 2.0) en su utilidad de instalacin para
la configuracin de LILO: se limita a escribir una configuracin bsica de LILO sin
soporte para otros SOs ni otros kernels. El fichero /etc/lilo.conf slo debera ser ledo
por el superusuario administrador, ya que podra contener contraseas. En caso
de duda, deberamos hacer (como root): ##chmod 600 /etc/lilo.conf . Escribiendo /
etc/lilo.conf el fichero /etc/lilo.conf comienza con una "global section" (seccin
general) seguida de una o ms "system sections" (secciones para cada SO que LILO
gestione) que comenzarn por: image= (si es un kernel linux) , other= (si es otro
SO). Los comentarios en el fichero comienzan con el smbolo de la almohadilla (#).
Consideremos a continuacin las lneas ms importantes de /etc/lilo.conf: Seccin
general * boot=dispositivo indica el dispositivo donde se instalar LILO; dispositivo
puede ser un diskette (/dev/df0), una particin (p.ej. /dev/hdc2) o el disco completo
(p.ej /dev/hda) que corresponde a la instalacin en el MBR * install=ficheroarranque
instala el fichero especificado como nuevo sector de arranque. Por defecto es /boot/
boot.b * map=ficheromapa establece la ubicacin del fichero de mapeado. Por defecto
es /boot/map. * prompt ordena a LILO que muestre un indicador (boot:) al momento
de iniciarse el arranque que permita seleccionar el SO a iniciar. Si en este punto
pulsamos la tecla TAB, aparecern los nombres dados a los correspondientes SOs.
* timeout=tiempo indica el tiempo en dcimas de segundo que LILO debe mostrar el
indicador anterior. Si pasado ese tiempo no se indicase nada, LILO cargara el primer
SO configurado. Seccin linux: * image=kernelimagen donde introducimos el fichero
que contiene el kernel, incluyendo la ruta de directorio. Lo ms normal es que sea /
vmlinuz o /boot/vmlinuz * label=nombre donde escribimos un nombre para el SO en

Pgina 210 de 384

Linux

cuestin, p. ej., "linux" para linux, pero para otros, puede ser "DOS", "win98"...como
mximo pueden ser cadenas de 15 caracteres.Introduciendo ese nombre cuando
LILO presenta el indicador (boot:) se selecciona el SO a iniciar. * root=particin root
donde indicamos el nombre de la particin linux nativa de nuestro sistema linux, p.
ej., /dev/hdc2. * read-only indica al kernel que ha de montar inicialmente la particin
raz en modo de slo lectura. Es necesario indicar esta opcin para la particin
donde se montar el sistema de ficheros raz. Seccin otros SOs: *other=particin
donde indicamos esta vez la particin de inicio del SO en cuestin, p.ej., /dev/hda1.
* label=nombre tal como se indic antes, ser el nombre con que etiquetemos dicho
SO. * loader=gestor de arranque .Para cargar el SO, LILO construye un pseudo MBR
en su fichero de mapeo. Esta opcin especifica el fichero donde tomar el cdigo
del pseudo MBR. Por defecto el fichero es /boot.chain.b * table=tabla establece el
dispositivo fuente para la tabla de particin escrita en el pseudo MBR, usualmente /
dev/hda o /dev/sda. Otras opciones interesantes (slo algunas) * vga=modo selecciona
el modo VGA al inicio. Los modos vlidos son "normal" (80x25), "ext" (extendido,
80x50) o "ask" (preguntar). * linear hace que las referencias a los sectores se escriban
como direcciones lgicas en lugar de fsicas. Se emplea cuando LILO no reconoce
correctamente la geometra del disco duro (debido a un remapeado por parte del
BIOS). * message=ficheromensaje establece el fichero cuyo texto se mostrara durante
el arranque. No debe tener ms de 24 lneas. * append=parmetro permite pasar
parmetros y componentes de hardware al kernel como cadena de caracteres. Por
ejemplo, si nuestra memoria RAM es superior a 64 Mbytes, por ejemplo, 128, debemos
pasarle el dato al kernel durante el arranque mediante (no necesario a partir de la
serie 2.2.x) append="mem=128M" * delay=tiempo establece el tiempo en dcimas de
segundo que LILO esperar antes de arrancar el primer SO. Generalmente se usa
cuando se arranca un nico SO, pues si no, la opcin prompt es mucho mejor. Por
defecto (sin la opcin) LILO no espera y se inicia el SO inmediatamente. Despus de
haber escrito el fichero /etc/lilo.conf, es necesario lanzar el "map installer" haciendo:## /
sbin/lilo con lo cual LILO escribe un backup del sector de arranque, escribe la primera
parte de su cdigo en l y crea un nuevo fichero de mapeado (/boot/map). LILO
anuncia entonces por la pantalla los SOs que gestiona, aadiendo una estrella al que
se arrancar por defecto. Hay que recalcar que si cualquiera de los componentes de
LILO cambia o se modifica su configuracin mediante ## /etc/lilo.conf es necesario
volver a reinstalar LILO con ## /sbin/lilo. Configuracin mnima de LILO y configuracin
para gestionar linux y otro sistema operativo (win95). Consideremos el siguiente fichero
## /etc/lilo.conf nicamente para arrancar linux: Fichero de configuracin ## /etc/
lilo.conf Seccin general ## boot=/dev/hda delay=100 vga=normal Particin linux ##
image=/vmlinuz root=/dev/hda1 label=linux read-only . Este ejemplo se interpreta de
la siguiente forma: LILO se va a instalar en el MBR del disco duro /dev/hda. El modo
de video EGA es 80x25, el sistema linux nativo se encuentra en la primera particin
del disco duro (/dev/hda1) y la imagen del kernel se encuentra en el fichero /vmlinuz.

Plataforma de Teleformacin de IFES

Pgina 211 de 384

Despus de 10 segundos,arrancar el sistema linux, cuyo nombre es "linux". Si


hacemos ##/sbin/lilo entonces aparecer en el monitor: ## Added linux * Veamos ahora
otro fichero de configuracin para gestionar linux y win95: Fichero de configuracin ##/
etc/lilo.conf Seccin general ## boot=/dev/hda prompt ## timeout=100 ## vga=normal
Particin linux ## image=/vmlinuz ## root=/dev/hdc1 ## label=linux read-only Particin
Windows 95 ## other=/dev/hda1 ## label=win95 table=/dev/hda . En este caso, LILO
tambin est en el MBR del primer disco duro (/dev/hda) y hay dos sistemas operativos:
Linux en la particin /dev/hdc1 y Windows 95 en la particin /dev/hda1. La tabla de
particin para el gestor de arranque corresponde al dispositivo /dev/hda. Si hacemos
## /sbin/lilo aparecer el mensaje: ## Added linux * Added win95, lo que significa
que LILO va a gestionar los dos sistemas operativos y que por defecto el primero en
arrancar ser linux. Cuando reinicialicemos el sistema, si todo ha ido bien aparecer la
palabra LILO seguida del indicador de arranque LILO boot: y as permancera durante
unos 10 segundos, pasados los cuales si no hemos escrito el nombre de uno de los
SOs, cargar por defecto linux. Si antes del tiempo pulsamos la tecla TAB, entonces
aparecern en pantalla los nombres de los SOs gestionados: linux, win95
Cmo desinstalo LILO?
Hay razones para desear desinstalar LILO: una, desinstalar el sistema linux de
nuestra mquina; otra imperativa: porque algo va mal. LILO es un programa que,
mal manejado, puede hacer al sistema no arrancable si se instala en el MBR. Mal
configurado, impedir el acceso al cualquier SO. En tales casos es indispensable
disponer de diskettes de arranque para dichos SO. Por lo tanto es conveniente hacer
el disco de arranque de Windows y el de arranque de Linux (en el momento adecuado
de la instalacin del sistema) de manera que nos permita acceder via disquetera
al sistema correspondiente en caso de imposibilidad de arrancar. Ntese que en el
BIOS el arranque deber comenzar por defecto en la disquetera A: . Una vez que
hemos arrancado el SO, hay muchas maneras de desinstalar LILO del MBR. Si nos
encontramos en DOS o Windows, basta con ejecutar el comando MS-DOS FDISK /
MBR ( SYS C: si C: es el disco duro en cuyo MBR se instal LILO).Si estamos en
OS/2 FDISK /NEWMBR que escriben los primeros 446 bytes (el cdigo de arranque)
en el MBR y dejando las particiones ilesas.Si estamos en Linux, basta con hacer ## /
sbin/lilo -u para restaurar el MBR anterior a la instalacin de LILO . Adems de todo
esto puede hacerse otra cosa: cuando LILO sobreescribe el MBR, salva una copia de
backup en ## /boot/boot.xxxx donde xxxx es un nmero mgico del dispositivo donde
se ha instalado. Veamos algunos ejemplos: Disco ## /dev/zzz xxxx IDE primario ## /
dev/hda 0300 SCSI primario ## /dev/sda 0800 floppy ## /dev/fd0 0200 As,si queremos
desinstalar LILO del sector de arranque de alguno de estos dispositivos, bastar con
hacer: ## dd if=/boot/boot.xxxx of=/dev/zzz bs=446 count=1 Si LILO se ha instalado en
una particin raz, no har no arrancable ningn otro sistema operativo. nicamente,
si est mal instalado, har que no arranque linux. Si deseamos restaurar el sector de

Pgina 212 de 384

Linux

arranque de la particin /dev/yyyy (p.ej. /dev/hda1) podemos reescribir el sector de


botado haciendo: ## dd if=/dev/yyyy of=New-file bs=512 count=1 ## dd if=Backup-Date
of=/dev/yyyy Si lo que queremos es desinstalar linux, borraremos la particin root con
fdisk.
LILO no funciona bien. Diagnstico de errores
Cuando LILO se inicia, si todo ha ido bien, presenta en la pantalla las cuatro letras
"LILO". Como ya vimos, cada letra corresponda a una accin. Si LILO no ha
funcionado, las letras que presente en pantalla junto con ciertos mensajes, sern
la clave para saber dnde est el problema.Veamos los ms comunes: * "L" error:
El primer tramo del cdigo ha sido cargado pero no el segundo. Esto se debe
generalmente a un error fsico en el sector de botado o a un problema de geometra del
disco. * "LI":El segundo tramo del cdigo ha sido invocado, pero no ha podido iniciarse.
Esto sucede cuando hay un error de geometra de disco o se ha movido /boot/boot.b
sin reinstalar LILO (/sbin/lilo). * "LIL":El segundo tramo del cdigo se ha iniciado pero
no puede ubicar los datos que necesita en el fichero de mapeado. Esto puede deberse
a un error fsico del dispositivo de arranque o a un problema en la geometra del disco.
* "LIL?":El segundo tramo del cdigo se ha cargado en una direccin de memoria
equivocada. Esto se debe a un error en la geometra del disco o cuando se ha movido /
boot/boot.b sin reinstalar LILO (/sbin/lilo). * "LIL-":Los datos en el fichero de mapeado
no son vlidos. Las causas son las mismas que en el caso anterior. La mayor parte
de las veces, no se trata de un problema fsico del dispositivo de botado, sino errores
debidos a la no equivalencia entre la geometra del disco que fdisk presenta y que el
BIOS ha remapeado. En tal caso el uso del parmetro "linear" en /etc/lilo.conf puede
funcionar. Otras veces puede deberse a que se ha intentado instalar LILO en una
particin lgica.Y otras veces a causas ms sutiles.Por ejemplo: Yo arranco linux junto
a otros sistemas operativos con el gestor de arranque de Partition Magic y tengo LILO
en una particin raz. Una vez hice un '''resize''' y cambi el tamao de mi particin
linux nativa porque necesitaba espacio para instalar nuevos programas. Al terminar e
intentar arrancar linux de su particin, apareci en la pantalla "LI". Eso se debi a que
despus de haber hecho el cambio de tamao, haba movido /boot/boot.b y no haba
lanzado el ' map installer /sbin/lilo'.Cog mi diskette de arranque de linux, y cuando
entr ejecut la orden y reinici el sistema. Todo funcion.

Kernel / Ncleo
Qu es el kernel?
El '''kernel''' o ncleo de linux se podra definir como el corazn de este sistema
operativo. Es el encargado de que el software y el hardware de tu ordenador puedan
trabajar juntos. Las funciones ms importantes del mismo, aunque no las nicas, son: Administracin de la memoria, para todos los programas en ejecucin. - Administracin

Plataforma de Teleformacin de IFES

Pgina 213 de 384

del tiempo de procesador, que estos programas en ejecucin utilizan. - Es el encargado


de que podamos acceder a los perifricos/elementos de nuestro ordenador de una
manera cmoda. Existen dos versiones del Linux kernel: - Versin de produccin:
la versin de produccin, es la versin estable hasta el momento. Esta versin es
el resultado final de las versiones de desarrollo o experimentales. Cuando el equipo
de desarrollo del ncleo experimental, decide que ha conseguido un ncleo estable
y con la suficiente calidad, se lanza una nueva versin de produccin o estable.
Esta versin es la que se debera utilizar para un uso normal del sistema, ya que
son las versiones consideradas ms estables y libres de fallos en el momento de su
lanzamiento. - Versin de desarrollo: esta versin es experimental y es la que utilizan
los desarrolladores para programar, comprobar y verificar nuevas caractersticas,
correcciones, etc. Estos ncleos suelen ser inestables y no se deberan usar, a no ser
que sepas lo que haces. Cmo interpretar los nmeros de las versiones: las versiones
del ncleo se numeran con '''3 nmeros''',de la siguiente forma: '''XX.YY.ZZ''' - '''XX''':
indica la serie principal del ncleo. Hasta el momento slo existen la 1 y 2. Este nmero
cambia cuando la manera de funcionamiento del ncleo ha sufrido un cambio muy
importante. - '''YY''': indica si la versin es de desarrollo o de produccin.Un nmero
impar, significa que es de desarrollo; uno par,que es de produccin. - '''ZZ''': Indica
nuevas versiones dentro de una versin, en las que lo nico que se ha modificado, son
fallos de programacin /bugs. Unos ejemplos nos ayudarn a entenderlo mejor: - ej1:
versin del ncleo 2.0.0: Ncleo de la serie 2 (XX=2), versin de produccin 0 (YY=0
par), primera versin de 2.0 (ZZ=0) - ej2: versin del ncleo 2.0.1: Ncleo de la serie 2,
versin 0, en el que se han corregido errores de programacin presentes en la versin
2.0.0 (ZZ=1) - ej3: versin del ncleo 2.1.100: versin 100 del ncleo de desarrollo 2.1.
Dnde consigo el kernel?
El ncleo se puede bajar de un gran nmero de servidores en internet. El servidor
principal es http://www.kernel.org/ y la pgina de servidores espejos es http://
www.kernel.org/mirrors/. Si tienes problemas accediendo a estas pginas, aqu tienes
una copia en otro servidor:http://linux-es.uio.no/lista_kernel.html
Cmo se configura e instala el kernel?
ste es uno de los temas que asustan a los nuevos usuarios de Linux. Lo primero
deciros que no hay razn para asustarse, la configuracin e instalacin de un nuevo
ncleo en nuestro sistema es mas fcil de lo que suena.Lo que si hay que hacer es
tener claro una serie de cosas antes de ponernos a trabajar, para as evitar problemas.
A continuacin tienes una pequea gua sobre cmo configurar e instalar un nuevo
ncleo en tu sistema. Has decidido instalar un nuevo ncleo en tu sistema,que es lo
que tenemos que hacer? 1. Bajarte la ultima versin De dnde? Lete la seccin
anterior. NOTA: Si vais a instalar un ncleo de la serie 2.2.x, tenis que tener en
cuenta que algunas distribuciones no estn/estaban preparadas para hacer uso de

Pgina 214 de 384

Linux

esta serie.Si vuestra distribucin no es de las que vienen preparadas,tenis que


actualizar una serie de paquetes/programas antes de instalar el nuevo ncleo (ms
informacin en la documentacin que acompaa al ncleo). 2.Tener claro lo que vamos
a hacer,lete el documento HOWTO sobre el ncleo ( Ingls / Castellano) 3. Tener
claro las opciones que tenemos que configurar, para poder utilizar el hardware de
nuestro sistema, as como las caractersticas que queremos utilizar. Por ejemplo,si no
utilizamos un dispositivo SCSI, no tenemos que configurar nada en el apartado SCSI
de nuestro ncleo. As nos ahorramos espacio y tiempo. 4. Entrar como root: su root
5. Copiar el archivo que te has bajado al directorio/usr/src: ##cp linux-xx.yy.zz.tar.gz /
usr/src/ 6. Descomprimirlo y desempaquetar: ##tar -xvzpf linux-xx.yy.zz.tar.gz NOTA:
El archivo linux-xx.yy.zz.tar.gz se desempaquetara en el directorio /usr/src/linux. Si ya
existe un directorio llamado linux en tu sistema, renombralo, p.ej: mv linux linux-old .
En algunas distribuciones, linux es un enlace simblico a linux-x.y.z;borra este enlace
simblico. Es importante que no exista ningn directorio/enlace simbolico llamado
linux, antes de desempaquetar la nueva versin. Si te has bajado el kernel comprimido
con''' bzip2''', tendrs que descomprimirlo con ##bunzip2 linux-xx.yy.zz.tar.bz2 7. Entrar
en /usr/src/linux: ##cd /usr/src/linux 8. Configurar el ncleo, esto se puede hacer de
tres maneras diferentes: * make config (modo texto) * make menuconfig (modo texto
con menus) * make xconfig (X-windows version) 9. Si tenis X-windows instalado, os
recomiendo el ltimo comando, si no el segundo. 10. Os recomiendo que las opciones
que vienen por defecto no las toquis, si no sabis lo que hacis,podis pulsar Help
en cada opcin para obtener una descripcin de la misma. Configurar las opciones
que queris tener en vuestro nuevo ncleo. Una vez terminada la configuracin,
grabar los cambios y salir del programa de configuracin. 11. Una vez terminado el
proceso de configuracin, tenemos que compilar nuestro nuevo ncleo.Para ello hay
que hacer lo siguiente: ##make dep make clean make bzImage 12. Si en el proceso
de configuracin, elegimos alguna opcin como mdulo, tendremos que compilar/
instalar dichos mdulos: ##make modules make modules_install NOTA: No olvidar
ejecutar como root el comando depmod -a l a primera vez que arranquis con vuestro
nuevo ncleo, para computar las dependencias entre mdulos. 13. Ya tenemos el
ncleo y los mdulos compilados, ahora tenemos que instalarlo. Casi todo el mundo
utiliza LILO para arrancar el sistema, por ello explicar como instalarlo utilizando LILO:
Todava estamos en /usr/src/linux , ejecutar el comando ##make install .. esto copiar
el ncleo que acabamos de crear a el directorio /boot de nuestro sistema, con el
nombre vmlinuz., o como un enlace simblico ##vmlinuz -> vmlinuz-xx.yy.zz 14. Ahora
tenemos que configurar LILO para que reconozca el nuevo ncleo. Tendremos que
modificar el fichero /etc/lilo.conf. Aqu tenis un ejemplo, del fichero /etc/lilo.conf antes
de modificarlo: ##boot=/dev/hda prompt ##timeout=50 image=/boot/vmlinuz-2.0.34
##label=linux ##root=/dev/hda1 read-only. Y aqu como quedara despus de la
modificacin para que reconozca nuestro nuevo ncleo al arrancar: ##boot=/dev/hda
prompt ##timeout=50 ##image=/boot/vmlinuz label=nuevokernel ##root=/dev/hda1

Plataforma de Teleformacin de IFES

Pgina 215 de 384

read-only ##image=/boot/vmlinuz-2.0.34 ##label=linux root=/dev/hda1 read-only 15.


Ahora slo tenemos que ejecutar el comando /sbin/lilo y arrancar el sistema de nuevo.
Si tuvisemos algn problema con el nuevo ncleo, siempre podramos arrancar con
el antiguo ,escribiendo linux y pulsando ENTER cuando arrancamos y nos sale en
pantalla lilo: de esta manera podemos entrar y ver qu es lo que ha fallado. NOTA:
Recordar que existen multitud de opciones para configurar LILO, y que los ejemplos
anteriores, son ejemplos. Puede que vuestro sistema necesite diferentes parmetros y
opciones. Leeros los documentos HOWTOS sobre el ncleo y LILO antes de cambiar
nada en vuestro sistema. Al final de esta pgina tenis enlaces a los mismos. Suerte y
espero que tengis las cosas un poco ms claras.
Qu son los parches (patchs)? Cmo se instalan?
Seguramente habris odo hablar de los parches para el ncleo, si no, aqu tenis
informacin sobre los mismos Qu son los parches y para qu sirven? Un parche
para el ncleo no es ms que un fichero que solamente contiene informacin, sobre las
lneas de cdigo que han cambiado desde la versin precedente del ncleo. De esta
manera, solamente te tienes que bajar un fichero con los cambios en vez del ncleo al
completo. El ahorro en cantidad de Mb bajados es bastante considerable, sobre todo
para aquellos que dependen del mdem y no tienen una conexion buena a internet.
Algo a tener muy en cuenta si vais a actualizar el ncleo por medio de parches, en
vez de bajaros el ncleo al completo, es que tenis que ir actualizando de versin a
versin. Para que se entienda un poco mejor, aqu tenis un ejemplo: si tenis el ncleo
2.2.0 y vais a actualizarlo al 2.2.1, os podeis bajar el fichero patch-2.2.1.gz [70Kb]
en vez del ncleo 2.2.1 al completo [12.5Mb]. Pero si tenis el ncleo 2.2.0 y vais a
actualizar al 2.2.4, NO os vale bajaros el fichero patch-2.2.4.gz nada ms, tendriais
que bajaros el 2.2.1, 2.2.2, 2.2.3 y 2.2.4. Esto es porque los ficheros patch solamente
contienen los cambios de versin a versin. Si la diferencia entre la versin que tenis
y la que queris instalar es muy grande (p.ej: del 2.2.0 al 2.2.10), no os merece la pena
actualizar por medio de parches;en este caso bajaros la versin completa. Qu hacer
con un fichero '''patch-XX.YY.ZZ.gz'''? Ya te has bajado el fichero patch (se pueden
bajar del mismo subdirectorio donde est la versin completa)que necesitas para
actualizar el ncleo y,ahora qu haces? Ahora hay que aplicarlo al ncleo que tienes
y compilar de nuevo. El procedimiento para actualizar el ncleo por medio de ficheros
patch es el siguiente: * Copia el fichero patch-XX.YY.ZZ.gz al directorio /usr/src : ##cp
patch-XX.YY.ZZ.gz /usr/src/ * Cambia a este subdirectorio y descomprime el fichero:
##cd /usr/src/; gunzip patch-XX.YY.ZZ.gz * Aplica el parche: ##patch -s -p0 < patchXX.YY.ZZ * La opcion -s har que slo se impriman mensajes de error. Si no recibes
ningn mensaje de error (como debera de ser) solamente te queda entrar en /usr/
src/linux: ##cd /usr/src/linux y ejecutar ##make clean,make xconfig,make dep,make
bzImage el resto es igual que en la seccin anterior a partir del punto 12) Esto es todo
lo que se me ocurre sobre los parches del ncleo.

Pgina 216 de 384

Linux

Algn consejo sobre el kernel?


Pregunta: Necesito actualizar el ncleo que utilizo cada vez que una nueva versin
aparece? Respuesta:NO. Por qu? La explicacin es la siguiente: cuando un nuevo
ncleo aparece, puede ser por las siguientes causas: * Nuevas caractersticas se han
aadido. * Fallos de programacin se han corregido. * Fallos de seguridad se han
corregido. * Nuevo hardware es soportado. Si las caractersticas que se han aadido
no las vamos a utilizar, es evidente que no necesitamos actualizar.Si los fallos de
programacin que se han corregido afectan a caractersticas/drivers que no utilizamos,
no necesitamos actualizar. Si no utilizamos el nuevo hardware soportado, tampoco
necesitamos actualizar. De todas maneras es recomendable, actualizar de vez en
cuando, sobre todo cuando se corrigen fallos de seguridad o cuando los cambios en el
nuevo ncleo afectan a caractersticas/funciones/hardware que utilicemos. El cdigo
est ah, libre y esperando a ser compilado en un nuevo ordenador, cada usuario debe
decidir cundo es hora de una actualizacin. Pregunta: Soy nuevo en Linux y acabo
de instalar una distribucin,cmo actualizo el ncleo? Respuesta: te aconsejo que
esperes un poquito. La distribucin que acabas de instalar (si es de las ltimas) viene
con un ncleo de los "ltimos", totalmente funcional y que te sirve sin problemas. Utiliza
el sistema un tiempo, familiarzate con el nuevo sistema que acabas de instalar, y
cuando comprendas un poco ms cmo funcionan las cosas, actualiza el ncleo. Un
buen punto de partida para encontrar informacin sobre el ncleo, lo tienes en estas
pginas.

X-windows / Entornos grficos


Qu es X-windows?
El protocolo X-windows fue desarrollado a mediados de los aos 80 como respuesta a
la necesidad de un interfaz grfico transparente sobre todo para sistemas '''Unix'''. Xwindows es el encargado de visualizar la informacin de manera grfica y es totalmente
independiente del sistema operativo (los sistemas Unix/Linux no necesitan de Xwindows para funcionar, pudiendo trabajar en modo texto). La gran diferencia entre Xwindows y la interfaz grfica de otros sistemas operativos es que X-windows distribuye
el procesamiento de aplicaciones, especificando un enlace cliente-servidor. El cliente
X especificar "Qu hacer" al servidor X, que se encargar de "Cmo hacerlo". Pero
dejmonos de teora y pasemos a un ejemplo prctico. La gran ventaja de X-windows
es que el servidor X de una aplicacin y el cliente X donde trabajamos no tienen por
qu estar en la misma mquina. Podemos estar utilizando X-windows en nuestra
mquina, conectarnos a otra remota, ejecutar un programa en esta mquina remota
y utilizar/ver este programa en nuestra mquina local. Todo esto independientemente
de la plataforma/sistema operativo que el ordenador remoto utilice.Como veis, las
posibilidades son muchas y potentes. Cliente X | | Xlib | | Servidor X | | Sistema
operativo
Plataforma de Teleformacin de IFES

Pgina 217 de 384

Cmo configuro las X-windows?


Para utilizar el sistema en modo grfico es necesario instalar X-windows en tu sistema.
Existen servidores comerciales y bajo licencia '''GNU''', en estos apartados nos
basaremos en el X-windows bajo licencia GNU, XFree, ya que es el que se incluye en
todas las distribuciones de Linux. Una vez instaladas las X-windows tendremos que
configurarlas para que funcionen en nuestro sistema. El fichero de configuracin de
las X-windows se llama XF86Config y generalmente se encuentra en el directorio /etc/
X11/.Unos datos que tenis que saber antes de configurar X-windows son: * Datos
tcnicos de la tarjeta grfica que utilicis, o por lo menos el nombre de la tarjeta.El
programa /usr/X11R6/bin/SuperProbe os puede ayudar a obtener informacin sobre
vuestra tarjeta. * Datos tcnicos del monitor que tenis, resoluciones/frecuencias de
refresco verticales/horizontales a la que puede trabajar. Este punto es importante
para evitar problemas posteriores con vuestro monitor. Antes de lanzar X-windows
mediante el comando startx debemos asegurarnos de la correcta configuracin de los
diferentes parmetros del mismo (teclado, ratn, tarjeta de vdeo, etc.).Hay diferentes
mtodos para hacer esto. En primer lugar tenemos los programas de configuracin
semi-automtica. Segn la distribucin de Linux que utilicemos tendremos a nuestra
disposicin una serie de programas que nos permitirn realizar la configuracin de
XWindow de una manera ms o menos sencilla: * /usr/X11R6/bin/xf86config - Todas
las distribuciones: Programa en modo texto. * /usr/X11R6/bin/XF86Setup - SuSe,
Redhat, Slackware: Programa en modo grfico,tiene que arrancarse en una consola
texto. * /usr/X11R6/bin/Xconfigurator Redhat: Programa semi-grfico con menus.Estos
programas nos preguntarn cosas bsicas sobre el teclado, el monitor, la videomemoria
o la tarjeta de vdeo instalada (lo harn cuando no sean capaces de detectarlas por s
mismos).Debemos responder siempre la opcin ms acertada y en cuanto a monitores,
nunca especificar caractersticas superiores de las que disponemos. Un caso muy
habitual en tarjetas muy nuevas es no encontrar un soporte exacto para los ltimos
chipsets, problema que se suele corregir acudiendo al soporte de framebuffer del
kernel o esperando a que quienes trabajan en XFree86 obtengan por parte de los
fabricantes (poco colaboradores) la informacin sobre cmo programar sus tarjetas. En
ciertos casos tambin se nos puede preguntar si deseamos que el sistema arranque
directamente en XWindow o incluso testear los diferentes modos de vdeo para ver
que si son correctamente soportados. Adems para que estos programas realicen una
correcta configuracin el sistema debe estar ya correctamente configurado en cuanto
a modo texto se refiere.Por ejemplo, Xconfigurator no activar el teclado en castellano
para XWindow si no hemos especificado que el idioma en que queremos usar nuestro
Linux es este mismo, mediante la orden export LANG=es_ES bien en la lnea de
comandos, o en el fichero /etc/profile. Cuando Xconfigurator detecta esta variable de
entorno ya sabe qu lenguaje utiliza el usuario y por tanto configurar XWindow para el
correcto uso del teclado en este lenguaje. Otras variables indican el tipo de ratn, etc.,
y suelen ser correctamente especificadas por el programa de instalacin. En el caso

Pgina 218 de 384

Linux

de XF86Setup la configuracin permite una mayor participacin por parte del usuario,
ya que en lugar de realizar una configuracin automtica proporciona una lista de
opciones para cada apartado, de modo que si conocemos nuestro hardware es la mejor
manera de configurar el sistema.Adems, a la hora de elegir resoluciones de vdeo,
este programa permite especificar cual es la resolucin por defecto deseada mientras
que Xconfigurator deja marcada la menor de ellas como "por defecto" (o la primera que
seleccionemos). El programa de configuracin xf86config es el ms antiguo de todos,
y realiza la configuracin mediante preguntas que se respondern con teclado. Nos
preguntar la tarjeta de vdeo, monitor, rango de frecuencias del monitor, videomemoria
y resoluciones de trabajo deseadas, as como el mapa del teclado a utilizar (es 102
= Espaa 102 teclas). Como siempre, el mtodo ms eficaz de configurar XWindow
es directamente editando los ficheros de configuracin.Y es que otro mtodo de
configuracin bsico es sencillamente editar el fichero /etc/X11/XF86Config, que es en
realidad lo que hacen todos los programas comentados anteriormente.En este fichero
la configuracin est dividida en secciones y mediante cualquier editor de texto llano
es posible cambiar cualquier parmetro de XWindow.Este fichero se divide en varias
categoras o secciones (todas ellas con ms subopciones muy bien comentadas en
dicho fichero de configuracin): * Seccin Files: Indica los caminos hacia las fuentes
o ficheros de colores. RgbPath "/usr/X11R6/lib/X11/rgb" FontPath "/usr/X11R6/lib/
X11/fonts/75dpi:unscaled" (etc.) * Seccin ServerFlags: Opciones varias sobre el
servidor. * Seccin KeyBoard:Configuracin del teclado. Para teclados en castellano
las opciones son similares a las siguientes: Protocol "Standard" LeftAlt Meta RightAlt
Meta ScrollLock Compose RightCtl Control XkbKeycodes "xfree86" XkbTypes "default"
XkbCompat "default" XkbSymbols "us(pc101)" XkbGeometry "pc" XkbRules "xfree86"
XkbModel "pc101" XkbLayout "es" * Seccin Pointer: Configuracin del ratn: # Para
un ratn microsoft mouse o un genius: Protocol "Microsoft" Device "/dev/mouse" *
Seccin Monitor: Datos sobre el monitor (frecuencias). * Seccin Device: Indica el
servidor X a utilizar: Por ejemplo para una tarjeta con chipset Mach64: Section "Device"
Identifier "Mach64 GB" VendorName "ATI" BoardName "ATI 3d Rage II" VideoRam
8192 EndSection * Seccin Screen: Modos de vdeo seleccionados: Por ejemplo
para activar 320x200, 640x480, 800x600 y 1024x768 tanto a 8 como a 16 bpp de
color, siendo usado por defecto el modo 1024x768x16 (el primero que aparezca en
la lista): Section "Screen" Driver "accel" Device "Mach64 GB" Monitor "My Monitor"
DefaultColorDepth 16 Subsection "Display" Depth 16 Modes "1024x768" "800x600"
"640x480" "320x200" ViewPort 0 0 Virtual 1024 768 EndSubsection Subsection
"Display" Depth 8 Modes "1024x768", "800x600", "640x480", "320x200" ViewPort
0 0 Virtual 1024 768 EndSubsection EndSection . Una vez creado este fichero,
entramos en XWindow mediante el comando startx. Del entorno XWindow se puede
salir en cualquier momento mediante la combinacin de teclas Ctrl+Alt+Borrar, o bien
seleccionando LOGOUT en el men del gestor de ventanas que utilicemos. Para
volver a las consolas de texto bastar con utilizar la combinacin de teclas Ctrl+Alt

Plataforma de Teleformacin de IFES

Pgina 219 de 384

+F1, +F2 , etc... (hasta F6 en las instalaciones por defecto).Para volver al terminal
grfico se utiliza de F7 en adelante (Ctrl+Alt+F7,+F8, etc.). Si durante la instalacin (o
en la lnea apropiada del fichero XF86Config)seleccionamos varias resoluciones de
vdeo,es posible cambiar entre ellas mediante las teclas Ctrl+Alt+'+' y Ctrl+Alt+'-' (los
signos del teclado nmrico).Adems, si por defecto marcamos 8bpp (o 16 bpp) en
las opciones,nada nos impide lanzar posteriormente '''XWindow''' en la profundidad
de color deseada: ##[sromero@localhost]# startx -- -bpp 8 ##[sromero@localhost]#
startx -- -bpp 16 etc...Tambin es posible establecer la profundidad de color por
defecto mediante una lnea ''DefaultColorDepth = 16'' en el fichero de configuracin
XF86Config, seccin Screen. Por ltimo, saber que podemos lanzar ms de una sesin
de XWindow simultneamente (en las consolas accesibles desde Ctrl+Alt+F8, +F9,
etc.),mediante: ##[sromero@localhost]# startx -- :1 ##[sromero@localhost]# startx -- :2
etc...
Cmo cambio la resolucin por defecto?
En el fichero /etc/X11/XF86Config en la seccin screen correspondiente al servidor que
se est utilizando actualmente,en la subseccin Display correspondiente a la Depth en
que estemos trabajando, buscamos la lnea: Modes "resolucin_1" "resolucin_2"... Un
ejemplo: Modes "1024x768" "800x600" "640x480" "320x200". Entonces ponemos la
resolucin que queramos que sea por defecto de primera. Estas resoluciones puestas
aqu son entre las que podremos cambiar si queremos al pulsar Ctrl+ Alt+ '+' Ctrl+Alt
+'-' , una vez arrancado X-windows...
Cmo cambio el escritorio virtual?
En el fichero /etc/X11/XF86Config , en la seccin screen correspondiente al servidor
que se est utilizando actualmente,en la subsection Display correspondiente a la
Depth en que estemos trabajando, aadimos la lnea: ##Virtual tamao_x tamao_y
#en pxeles Un ejemplo: Virtual 1024 768 .Hay que puntualizar que si existe una
resolucin definida de Modes mayor que el escritorio virtual, sta no se podr utilizar.
Resumiendo, no se puede tener una resolucin de trabajo mayor que el escritorio
virtual.
Cmo cambio el nmero de colores por defecto?
Hay dos maneras: mediante la lnea de comandos: ###[user@localhost]# startx --bpp
resolucin (dnde resolucin es 8, 16,24 32). Mediante el fichero de configuracin:
en el fichero /etc/X11/XF86Config , en la seccin screen correspondiente al servidor
que se est utilizando actualmente, aadimos la lnea: ##DefaultColorDepth
depth_que_queramos_utilizar . Un ejemplo: ##DefaultColorDepth 16 . Un Depth
con valor 8 significa que trabajaremos a 256 colores, uno con valor 32 truecolor.No
todas las tarjetas grficas podrn utilizar todos los Depth disponibles en todas las
resoluciones;todo depender de la tarjeta grfica y de la memoria que sta tenga.

Pgina 220 de 384

Linux

Cmo arranco directamente en X-windows?


En Linux es perfectamente posible pedir que el arranque del sistema se haga en
modo grfico, y que el login y password se introduzcan directamente en una ventana
XWindow para la posterior carga del gestor de ventanas habitual que use dicho
usuario. Es decir,podremos identificarnos y aparecer directamente bajo X sin necesidad
de ejecutar startx. Para arrancar directamente en X Window (o no hacerlo) todo el
proceso de configuracin gira en torno a cambiar el runlevel (o nivel de ejecucin
en que arranca Linux). El runlevel es, dicho de una manera sencilla, el modo en que
arranca Linux. Por defecto, el runlevel suele ser el 2 el 3, es decir, arranque en
modo texto o consola. Para cada distribucin suele haber una lista de runlevels y sus
significados, aunque casi se puede decir que son similares para todas ellas. Para
Redhat, por ejemplo, la lista es la siguiente: # Porcin del fichero /etc/inittab # Default
runlevel. The runlevels used by RHS are: # 0 - halt (Do NOT set initdefault to this) # 1
- Single user mode # 2 - Multiuser, without NFS (The same as 3) # 3 - Full multiuser
mode # 4 - unused # 5 - X11 # 6 - reboot (Do NOT set initdefault to this) Como puede
verse, el arranque normal por defecto para que puedan acceder usuarios a Linux es
2 (si no tenemos red) o 3 si queremos usar servicios de red, siendo normalmente
ste el runlevel por defecto. Como puede verse, X11 tiene asignado el runlevel al
5. Si cambiamos el runlevel por defecto para que arranque en el 5, nos aparecern
directamente X Window. Para cambiar este runlevel por defecto hay que editar el
fichero /etc/inittab, y acudir a la siguiente lnea: id:3:initdefault: . El valor numrico antes
de initdefault indica el runlevel de arranque por defecto. Si lo cambiamos de 3 a 5, la
prxima vez que arranquemos Linux arrancar en X Window: id:5:initdefault: . Para
que el proceso se ejecute correctamente debe tener instalado un gestor de arranque
en runlevel 5, que es el programa encargado de pedir el login+passwd y arrancar el
gestor de ventanas adecuado. Puede elegir entre xdm (el que viene por defecto con
XWindow), kdm (version de kde del mismo) y gdm (versin aportada por gnome). Cada
una de ellas dispone de ciertos ficheros de configuracin o ejecutables para cambiar
el fondo del login, el lenguaje, gestor de ventanas, etc. Consulte los ficheros en los
paquetes relacionados. Haga "man runlevel" para ms informacin sobre runlevels.
En las ltimas versiones de Redhat, el programa Xconfigurator le permite elegir si
desea o no arrancar directamente en XWindow (l mismo modifica el runlevel por
defecto) mediante una simple pregunta a la que usted debe responder SI (Si desea
arrancar en runlevel 5) o no (si desea arrancar en runlevel 3). Esta pregunta se le suele
realizar al finalizar la seleccin de resoluciones y antes de salir de Xconfigurator. Una
vez arranque en XWindow, puede volver a cualquier consola de texto mediante las
teclas Ctrl+Alt+F1, Ctrl+Alt+F2, etc. ..(por defecto entre F1 y F6 tendrs 6 consolas de
texto), y volver a XWindow en cualquier momento mediante Ctrl+Alt+F7 en adelante.
En algunas distribuciones puede ser necesario indicarle a inittab dnde est el gestor
de runlevel 5 que debe arrancar: para xdm: ##Run xdm in runlevel 5 x:5:respawn:/usr/
X11R6/bin/wdm -nodaemon Para gdm: ##x:5:respawn:/etc/X11/prefdm -nodaemon .

Plataforma de Teleformacin de IFES

Pgina 221 de 384

Estas lneas suelen ser automticamente includas en el fichero por los rpm/deb
instaladores de xdm, kdm y gdm. Consulte en la ayuda de dichos programas para ms
informacin.
Qu es un gestor de ventanas?
Un gestor de ventanas no es otra cosa que el conjunto de programas, ventanas,
funcionalidades, .... que hacen posible que el usuario pueda interactuar con el sistema
de forma grfica y no en modo texto. Para usar un gestor de ventanas hay que tener
configurado un servidor X. Tambin hay que decir que el gestor de ventanas utilizado
es totalmente independiente del servidor X utilizado. Gestor de ventanas | | Cliente X | |
Xlib | | Servidor X | | Sistema operativo Al contrario que en otros sistemas operativos, en
Linux no es necesario utilizar un servidor X - gestor de ventanas para usar el sistema.
El sistema operativo y el conjunto servidor X - gestor de ventanas usado, son cosas
totalmente diferentes, independientes entre s. Es ms, existen usuarios que trabajan
en modo texto sin ningn problema y sin usar un interfaz grfico. Existen numerosos
y variados gestores de ventanas para Linux, unos mejores y otros ms desarrollados
y estables. Es el usuario el que tiene que decidir qu gestor satisface mejor sus
necesidades, pudiendo incluso tener ms de uno instalado. Para aclarar un poco
las cosas, podramos decir que, si un ordenador es usado por varios usuarios, todos
utilizaran el mismo servidor X pero no necesariamente el mismo gestor de ventanas.
Cmo elijo el Gestor de ventanas que quiero arrancar?
Una vez configurado X se hace necesario decirle a '''XWindow''' qu gestor de
ventanas debe arrancar. Dicho de una manera sencilla, XWindow es la conjuncin de 3
componentes: * El entorno de ventanas X Window: es quien implementa las llamadas
internas de XWindow, el protocolo X, etc., es decir, el sistema de comunicaciones
entre aplicaciones. * El servidor grfico X. Es un programa (un fichero ejecutable)
encargado de responder a las rdenes grficas encargadas por el entorno de ventanas.
Es el encargado de dibujar rectngulos, puntos de color o pixels, rellenar zonas,
dibujar imgenes, etc. La manera de decirle a XWindow qu ejecutable es el que
deseamos usar es crear un enlace simblico llamado /usr/X11R6/bin/X que apunte
al servidor que usemos: Ejemplo: ##ln -s /usr/X11R6/bin/XF86-S3 ##/usr/X11R6/bin/
X ( le dira que utilice el servidor de las S3). Este enlace es creado por el programa
de configuracin cuando seleccionamos la tarjeta en la lista que nos presenta.
* El gestor de ventanas es el mdulo encargado de decidir que aspecto, forma,
funcionalidades, atajos de teclado, opciones y menes debe tener XWindow. As,
al dividir XWindow en estos 3 mdulos se nos permite cambiar cualquiera de ellos
para dotar a XWindow del aspecto o funcionalidades que deseemos. El entorno de
ventanas no suele cambiarse nunca (es XFree86), y el servidor X tampoco, ya que
ste ltimo es siempre el ejecutable apropiado para manejar nuestra tarjeta grfica
(XFree86-SVGA, XFree86-S3, etc.),pero el ltimo es totalmente seleccionable entre

Pgina 222 de 384

Linux

multitud de opciones y es lo que nos permite cambiar radicalmente el aspecto de


XWindow. Cambiando el gestor de ventanas (o Window Manager) podemos cambiar
prcticamente el funcionamiento completo de XWindow. Gestores de ventanas hay
muchos: '''kde, afterstep, gnome, WindowMaker, icewm''', etc, y todos tienen sus
respectivos ejecutables: '''startkde, afterstep, gnome-session, wmaker, icewm''', etc.
Toda esta explicacin se ha dado por un motivo muy sencillo: la posibilidad de elegir
el Gestor de Ventanas deseado es parte de la configuracin activa de XWindow, y
vamos a ver la manera de decirle a XWindow qu gestor deseamos utilizar. Para ello,
simplemente debemos ir al directorio HOME del usuario en cuestin (/home/usuario)
o de root (/root) y editar (crendolo si no existe) el fichero de texto .xinitrc . En este
fichero pondremos una lnea que indicar el Gestor de Ventanas que deseamos utilizar,
en el formato: ##exec ejecutable_del_gestor_de_ventanas. Adems podemos utilizar
lneas de comentarios que comiencen por el carcter '#' y que XWindow ignorar:
Ejemplos de ficheros .xinitrc: # utilizar afterstep exec afterstep; otro ejemplo podra ser
lanzar kde: # utilizar KDE exec startkde; As,dependiendo del ejecutable que lancemos
(startkde, gnome-session, icewm, wmaker, ctwm, fvwm2, wmaker, blackbox, etc...)
podremos arrancar el '''WM''' deseado.

Administracin
Cmo se utilizan los empaquetadores-des/compresores?
Los ficheros tar no son ficheros '''comprimidos''', sino '''empaquetados'''. Tar es
un empaquetador, es decir, es algo parecido a un compresor como arj o zip, pero
sin compresin. Se dedica a incluir todos los ficheros juntos en el mismo archivo,
preservando las estructuras de directorios y permisos de los mismos. Como veremos,
lo podremos comprimir gracias al programa GZip. Hay 2 operaciones bsicas con
tar:empaquetado y desempaquetado. Si estamos en un directorio y queremos
empaquetar todos los ficheros de este directorio y los que cuelgan de l, basta
con ejecutar la orden: ##tar -cvf fichero.tar *c = compress (ms bien, empaquetar)
*v = verbose (para que nos diga lo que hace) *f = file (empaquetar en un fichero)
(Empaquetar todos los ficheros, podra haber sido *.doc, etc.). Si disponemos
de un fichero .tar y queremos desempaquetarlo: ##tar -xvf fichero.tar x = eXtract
(desempaquetar). Tambin es posible listar los contenidos de un fichero .tar antes de
desempaquetarlo, mediante la orden ##tar tvf fichero.tar. Por otra parte,los ficheros
con extensin gz son ficheros comprimidos. A diferencia de arj o zip, el contenido de
un fichero GZ es un solo fichero, es decir, cuando comprimimos fichero.txt con este
compresor (llamado gzip) obtenemos un fichero.txt.gz de tamao mucho menor.Con
GZ no es posible empaquetar ficheros, es decir, la compresin se realiza a un slo
fichero. Para comprimir un fichero con gz se utiliza el comando:## gzip fichero . Para
descomprimirlo: ##gunzip fichero.gz. La combinacin de tar y gz es lo que permite el
tener multiples ficheros comprimidos en un solo archivo. Es decir, si empaquetamos
Plataforma de Teleformacin de IFES

Pgina 223 de 384

un directorio con tar y luego comprimimos ese archivo tar con gz, obtenemos un
tar.gz comprimido con mltiples ficheros. La compresin y descompresin es posible
hacerla en 2 pasos (primero tar y luego usar gz),o bien usar el flag -z de tar para ello:
*Compresin: ##tar -cvzf fichero.tar.gz *Descompresion: ##tar -xvzf fichero.tar.gz
Otro formato que se ha puesto de moda es '''bzip20''', con el mismo sistema de
funcionamiento que '''Gzip''', y cuyos nombres de ejecutable son bzip2 (comprimir)
y bunzip2 (descomprimir). Este compresor obtiene mejor compresin que Gzip y su
funcionamiento es igual de sencillo,aunque tarda ms en comprimir y utiliza ms
recursos. Estos compresores/descompresores/empaquetadores son una gran y libre
alternativa a formatos comerciales como zip, arj y rar, tambin disponibles para Linux
(comandos zip, unzip, rar y unarj). Para descomprimir ficheros arj mediante unarj,
simplemente hace falta ejecutar el comando unarj x fichero.arj. El compresor es
shareware y se debe obtener en la Web de sus programadores. Zip es el programa
destinado a hacer Linux capaz de leer y escribir los ficheros en formato .zip (generados
por pkzip o winzip): Para ello tenemos los comandos zip e unzip, que nos permitirn
comprimir y descomprimir ficheros sueltos, directorios completos, directorios con
recursividad, etc.. Para comprimir todos los ficheros de un directorio en un zip: ##zip
fichero.zip *Para comprimir este directorio y todos los que cuelguen del mismo: ##zip
-r fichero.zip *La descompresin se realiza mediante unzip: ##unzip fichero.zip. El
programa rar tambin es un buen compresor que podemos encontrar en diferentes
formatos (rpm, deb, tar.gz) en Internet. Su uso es idntico a la versin MSDOS:
*Comprimir: ##rar a fichero.rar * Descomprimir: ##rar x fichero . Para ms informacin
sobre cualquiera de los des/compresores basta con consultar la pgina man del mismo,
mediante "man comando".
Cmo instalo, desinstalo o actualizo paquetes rpm?
Los paquetes '''rpm''' son archivos que llevan includos dentro de ellos todos los ficheros
que componen un determinado programa. Internamente estn comprimidos, pero
nosotros slo debemos pensar en ellos en trminos de Instalacin, Actualizacin,
Borrado y Consultas. Dentro del rpm van los ficheros del programa a instalar, su
descripcin, a qu directorios van a ir instalados, scripts de auto-configuracin en
algunos casos, etc. La sintaxis de rpm es: ##rpm -accin nombre_del_paquete
Acciones: ##rpm -i archivo (instalar) ##rpm -e paquete (desinstalar) ##rpm -u paquete
(actualizar) ##rpm -qi paquete (pedir info) Ejemplos: ##rpm -i Par-1.50-1.i386. ##rpm
-e Par rpm -u Par ##rpm -qi Par Supongamos el fichero programa-1.0.rpm que no
tenemos instalado y que acabamos de bajar de Internet. Procedemos a su instalacin:
##rpm -i programa-1.0.rpm Tras eso el programa estar instalado en nuestro Linux
y podremos ejecutarlo y usarlo normalmente. Tal vez nuestro problema es que no
sabemos como se llama el ejecutable y los dems ficheros de configuracin que
le acompaan. Para solucionar eso hacemos una consulta (query) del paquete ya
instalado: ##rpm -ql programa La accin -ql significa "query list", y nos mostrar en

Pgina 224 de 384

Linux

pantalla la lista de ficheros instalados de este programa y sus directorios destinos.


Si por ejemplo deseamos ver slo los fichero sean instalados en los directorios bin
(los ejecutables) podemos hacer uso de grep, la herramienta de Linux que slo nos
mostrar aquellas lneas que contengan una cadena determinada: ##rpm -ql programa
| grep bin Esto nos mostrar slo los ficheros de "programa" que hayan sido instalados
en directorios bin. Si queremos saber qu hace un paquete instalado, podemos verlo
con la opcin "query info" (-qi): ##rpm -qi programa Como ejemplo, veamos la salida
para el paquete fetchmail de Linux: Name : fetchmail Relocations: (not relocateable)
Version : 5.0.0 Vendor: Red Hat Software Release : 1 Install date: dom 30 may 1999
16:00:12 CEST Group : Applications/Internet Size : 565413 Packager : Red Hat
Software http://developer.redhat.com/bugzilla Summary : A remote mail retrieval and
forwarding utility. Description : Fetchmail is a remote mail retrieval and forwarding
utility intended for use over on-demand TCP/IP links, like SLIP or PPP connections.
Fetchmail supports every remote-mail protocol currently in use on the Internet (POP2,
POP3, RPOP, APOP, KPOP, all IMAPs, ESMTP ETRN) for retrieval. Then Fetchmail
forwards the mail through SMTP, so you can read it through your normal mail client.
Si el programa no nos gusta, la deinstalacin es muy sencilla: ##rpm -e programa
Obviamente, no tenemos porqu instalar los programas para ver su contenido o
informacin. Los podremos ver antes de la instalacin insertando un comando p antes
de la accin: ##rpm -qpi fichero.rpm ##rpm -qpl fichero.rpm Si queremos ver la lista de
RPMs instalados disponemos del comando "query all" (-qa): ##rpm -qa Para verlo en
formato pausado, podemos usar una tubera: ##rpm -qa | less Es posible que tras un
tiempo obtengamos la versin 2.0 del programa que ya disponemos instalado. En esto
caso hay 2 opciones: bien eliminar el programa anterior (-e) e instalar este nuevo (-i),
o, simplemente, actualizar el programa a la versin 2.0 con el comando -U (de Update):
##rpm -U programa-2.0.rpm Por ltimo, si al tratar de instalar un paquete rpm aparece
el siguiente error: Data type X not supprted ,es debido a que nuestra versin de rpm
es muy antigua, al menos ms que el rpm que estamos tratando de instalar, y que
ste tiene algn tipo de compresin o elemento que nuestro rpm no entiende.Bastar
entonces con actualizar nuestro ejecutable del RPM. Cabe decir que tambin existen
front-ends al programa rpm, es decir, programas en modo grfico (o texto) que realizan
las acciones del programa RPM mediante pulsaciones nuestras del ratn. Es el frontend el que se encarga de pasarle a RPM los parmetros correctos para que se realice
la accin pedida por el usuario. Entre estos programas tenemos glint, gnorpm, purp,
kpackage, xrpm, etc.
Cmo instalo paquetes .deb de Debian?
Al igual que el formato RPM , los .DEB encapsulan todos los ficheros y scripts
vinculados a un determinado programa, pero para la distribucin '''Debian'''.Adems
de disponer de herramientas de instalacin como dselect, se incluye la posibilidad de
instalacin manual mediante las diferentes opciones del programa dpkg: Instalacin

Plataforma de Teleformacin de IFES

Pgina 225 de 384

de paquetes deb: ## dpkg -i nombre_del_paquete.deb . Para hacer consultas:


##dpkg -s nombre_del_paquete (admite comodines) Para desinstalar: ##dpkg -r
nombre_del_paquete El resto de opciones de dpkg puede verse con ##man dpkg.
Cmo se convierten paquetes entre RPM, DEB y TGZ con alien?
'''Alien''' es un programa que permite convertir un paquete binario entre los
formatos '''rpm''' (Redhat, Suse), '''deb''' (Debian) y '''tgz''' (Slackware). Conversion
a .DEB: ##alien --to-deb paquete.elquesea Conversion a .RPM: ##alien --to-rpm
paquete.elquesea Conversion a .TGZ: ##alien --to-tgz paquete.elquesea Existen otros
flags (como -i) que permiten directamente tras la conversin realizar la instalacin del
paquete generado. Alien realiza la conversin descomprimiendo el paquete original y
generando el nuevo paquete, dicindonos el lugar del rbol de directorios donde dejar
el paquete recin generado,segn la distribucin (por ejemplo, en Redhat en /usr/src/
redhat/RPMS/).
Cmo se cambian los permisos de ficheros y directorios?
Lo primero que hay que decir es que para conseguir toda la informacin sobre los
comandos involucrados en el tema de permisos podis consultar ##man chmod, man
chown , man chgrp. Informacin de un fichero/directorio: cuando obtienes informacin
sobre un fichero/directorio, existen diferentes campos que te dicen qu clase de
permisos el fichero/directorio tiene. Ejemplo: ##[user@localhost]ls -l -rwxr-x--- 1 pepito
depart1 4348 Nov 24 16:19 test. En la primera columna se pueden ver una serie
de letras: '''-rwxr-x---''' ; estas letras nos dicen quin en el sistema, y qu clases de
permisos tiene el fichero test. Estas letras estn agrupadas en tres grupos con tres
posiciones cada uno,ms una primera posicin que nos dice de qu clase de archivo
se trata (los ms normales (d) directorios, o (-) archivos de datos). En nuestro ejemplo,
la primera posicion es (-) ,con lo cual el archivo test es un archivo de datos (binario/
ejecutable en este caso). El primer grupo de tres (rwx en nuestro caso) nos dice qu
clase de permisos tiene el dueo del fichero (u)(user/owner)). El segundo grupo de
tres (r-x en nuestro caso) nos dice qu clase de permisos tiene el grupo del fichero (g)
(group). Y el ltimo grupo de tres (--- en nuestro caso) nos dice qu clase de permisos
tienen todos los demas usuarios del sistema sobre este fichero(o)(others). r :significa
permiso para leer w :significa permiso para escribir x :significa permiso para ejecutar.
La segunda columna,pepito,nos dice quin es el dueo del fichero(pepito en este caso).
La tercera columna,depart1, nos dice cul es el grupo del fichero (depart1 en este
caso). La cuarta columna ,4348, nos dice el tamao del fichero. La quinta columna,
Nov 24 16:19, nos dice cul es la fecha y hora de la ltima modificacin. La sexta
columna,test, nos dice cul es el nombre del fichero/directorio.As pues, el fichero test
de nuestro ejemplo tiene los siguientes permisos: pepito puede leer,escribir/modificar,
y ejecutar el fichero test. depart1 puede leer y ejecutar, pero no escribir/modificar. Los
dems usuarios no pueden hacer nada, ni leerlo, ni escribir/modificar, ni ejecutarlo.

Pgina 226 de 384

Linux

Cmo cambiar los permisos/dueo/grupo de un fichero/directorio? Para cambiar


el dueo del fichero: ##chown usuario fichero . Para cambiar el grupo del fichero:
##chgrp usuario fichero Para cambiar los permisos se utiliza el comando: ##chmod
permisos fichero Los permisos se pueden especificar de diferentes maneras;una serie
de ejemplos es lo mejor para comprenderlo: ##chmod ugo+rwx test (da permisos
rwx a todos, user,group,others) ##chmod ugo-x test (quita permiso x (ejecucin) a
todos, user,group,others) ##chmod o-rwx test (quita permisos rwx a others). ##chmod
u=rwx,g=rx test (da permisos rwx a user, rx a group y ninguno a others) As podras
continuar con todas las posibles combinaciones de letras, es cuestin de usar la
imaginacin. Existe otro mtodo que utiliza nmeros, en vez de letras para asignar
permisos; la siguiente tabla nos puede ayudar un poco a comprender esta manera: r w
x VALOR DECIMAL 0 0 0 0 (000 binario es 0 en decimal) 0 0 1 1 ......... 0 1 0 2 .........
0 1 1 3 ......... 1 0 0 4 (100 binario es 4 en decimal) 1 0 1 5 ......... 1 1 0 6 ......... 1 1 1 7
(111 binario es 7 en decimal) 1 significa activado y 0 desactivado, o sea 101 activa r
y x, y desactiva w. Sabiendo esto slo tenemos que usar el valor decimal;un ejemplo
aclarar esto: ##chmod 750 test da permisos rwx al usuario (7=111) ; da permisos r-x al
grupo (5=101) da permisos --- a los demas (0=000).
Cmo apago mi equipo?
Para apagar el equipo tienes que hacerte superusuario y hacer:
##[asimovI@localdomain root]$shutdown -t3 -h now . Esto parara todos los procesos
en curso, hara sync, entrara en el runlevel 0, y desmontara todas las particiones.
El proceso de parada llegara cuando se observa '''system halted''' , y si la fuente lo
permite y se compil el kernel con esa opcin, el ordenador se apaga automticamente
sin necesidad de pulsar el botn de apagado.La opcin h viene de halt (parar), y hace
que se mantenga parado despus de todo el proceso de apagado. La opcin '''now'''
indica que lo haga ahora;esta opcin se puede sustituir por un nmero, los minutos
a esperar antes de realizar el shutdown. Para reiniciar el equipo tienes que hacerte
superusuario y hacer: ##[asimovI@localdomain root]shutdown -t3 -r now ,pues como
habas imaginado hace lo mismo que la anterior, pero en vez de ponerse en ''system
halted''' se pone en '''system reboot''' y reinicia. Existe otro mtodo que consiste el
accionar tres teclas, s, esas que tanto hay que usar en otros sistemas operativos
( aunque cada vez menos ya que apenas los usamos), las CAS (Ctrl+Alt+Supr).
Pues bien, en el proceso de arranque de Linux, cuando lee la ##/etc/inittab existe
una entrada que asocia estas tres teclas a un comando. Si lo ves vers que lo asocia
al comando anterior. # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r
now . Un consejo: en los mtodos anteriores es necesario ser superusuario ya que
el comando '''shutdown''' lo requiere. Cosa lgica ya que sino cualquier usuario de
la mquina lo podra echar abajo.Esto hace bastante incmodo el apagarlo,por lo
que un consejo prctico es ir a la ##/etc/inittab y cambiar la -r por la -h del comando
que se une a las CAS, esto asociar el apagar el sistema a las tres teclas y no al

Plataforma de Teleformacin de IFES

Pgina 227 de 384

reiniciarlo.Con esto ya no es necesario hacerse superusuario, sino estar sentado


delante del ordenador a apagar. Nota: en los kerneles 2.2.x hay que modificar una lnea
en el ##/etc/rc.d/*halt en dnde llame al '''halt''', hay que aadirle la opcin -p. Si no lo
que hace es reboot.
Puedo trabajar normalmente como root?
Un consejo,slo utilizar la cuenta de root (administrador) para tareas de administracin.
Para trabajar normalmente con el sistema NO hacerlo como root, ya que se tiene
acceso completo a todo el sistema y es fcil de estropear cosas si no se sabe lo que se
hace. Aqu tenis un ejemplo que le ocurri al autor de esta seccin trabajando como
root: slo utilizo la cuenta de root para administracin del sistema,pero un da estuve
demasiado tiempo trabajando con ella para intentar empaquetar un rpm, resulta que lo
instal mal y cre el directorio: /usr/src/redhat/usr/src/redhat/SRC/. Claro que eso no
era lo que quera, as que tecle: ##root@asimovI src]$ cd .. ##root@asimovI /]$ rm rf * Yo pensaba que estaba dentro del segundo src, pero estaba en el primero,menos
mal que me di de cuenta pronto y puls '''Ctrl+c''' para abortar el comando de borrado
mientras se estaba borrando el directorio X11R6,as que no corromp por completo
el sistema,slo tuve que volver a instalar algunos paquetes. Pero, y si no me doy
cuenta? Pues que no podra haber hecho nada ya que hubiese borrado todo el
contenido de /usr ; no existiran libreras, comandos, etc, teniendo que haber instalado
el sistema operativo de nuevo. Despus de este ejemplo, volvemos a recomendar lo
que dijimos al principio: utilizar la cuenta de root slo en los casos necesarios y siempre
tenindole un respeto al poder que da. Estar seguros al 100% de lo que hacis como
root, para no estropear el sistema. Una buena costumbre es nunca hacer login con
'''root''', sino trabajar como un usuario normal y cuando se necesite ser root hacer un
"su", y tan pronto como deje de ser necesario tener el privilegio hacer un "exit", para
volver a trabajar como usuario normal.
Cmo abro/cierro una nueva cuenta?
Abrir una nueva cuenta: el abrir una nueva cuenta, no es ms que aadir una entrada
en el archivo /etc/passwd del sistema. Una entrada en este archivo tiene la siguiente
forma: :::::: user: es el nombre de usuario. encrip: es la clave encriptada. UID: es el
nmero UID con el que nos identificar el kernel. GID: el nmero de grupo principal
GID al que pertenecemos. informacin: informacin varia, tal como nombre completo
del usuario, nmero de telfono, e-mail, etc. home:es el directorio home del usuario, es
decir, el directorio al que accedemos justo despus de hacer entrar en el sistema. shell:
Es el shell que se abrir para ejecutar las rdenes que de el usuario.Hay utilidades
que hacen que aadir cuentas de usuario sea ms fcil. Entre ellas estn el comando
useradd y passwd. Lo pasos para crear un usuario son: ##[root@asimovI /root]
adduser mario ##[root@asimovI /root] passwd mario Para ms informacin hacer '''man
adduser''', sobre todo si se quiere poner caducidad a las claves. Hay otras utilidades

Pgina 228 de 384

Linux

ms vistosas y fciles de usar e intuitivas ya que son bajo X-Windows; un ejemplo de


stas son en el contol-panel de redhat, el YaST en SuSE, el gestor de usuarios de Kde,
etc. Hay que aclarar que si el campo de la clave encriptada del fichero /etc/passwd
no contiene ningn valor, no ser necesario la utilizacin de una clave para entrar en
el sistema. Esto es totalmente desaconsejable por los problemas de seguridad que
puede crear.Sin embargo es til, por ejemplo, cuando nos olvidamos de la clave de
root: la solucin es arrancar con un diskette de rescate, luego montar la particin de
linux, y borrar la clave encriptada de la entrada de root en el fichero /etc/passwd. Luego
reiniciamos el equipo, entramos como root y ejecutamos passwd root para poner la
nueva contrasea. Borrar una cuenta de usuario: El comando a utilizar es userdel el
cual tiene la siguiente sintaxis: ##userdel [-r][login] . Este comando borra el usuario
login, y si se aade la opcin -r tambin borra su directorio de usuario. Para borrar una
cuenta de usuario tambin se pueden utilizar las utilidades grficas que comentamos
antes, de una forma muy intuitiva.
Tengo un ejecutable que no quiere ejecutarse...
A todos nos ha ocurrido alguna vez,que al intentar ejecutar un comando/programa
hemos obtenido como respuesta "command not found". Esto significa que el shell no
encontr el comando que queramos ejecutar. Las causas ms comunes suelen ser: *
El ejecutable no est en un subdirectorio incluido en el $(PATH)./ La solucin es escribir
el ejecutable con la ruta completa o moverte al directorio de ste y escribir ./programa,
donde programa es el nombre del ejecutable. * El comando/programa que habis
escrito no existe. * Faltan variables de entorno. Busca ficheros de documentacin del
programa, o prueba comando --help, para ver si hace falta aadir variables de entorno,
para el uso del mismo. Otra respuesta que podemos obtener al intentar ejecutar
un comando/programa es Permission denied. El error es bien claro: el ejecutable
existe ,pero no tenemos permiso para ejecutarlo.Comprueba que lo podemos ejecutar,
es decir, tiene una x en el grupo al que pertenezcamos: dueo, grupo, u otros. Ms
informacin sobre permisos en la subseccin " Cmo se cambian los permisos de
ficheros y directorios?". Por ltimo, podemos obtener un error en el que se nos informa
que cierta librera no se encuentra. Ejecuta el comando: ##[asimov@asimovI bin] ldd
comando . Esto mostrar todas las libreras compartidas que el comando/programa
utiliza/necesita para funcionar. Si no tenemos algunas, las tenemos que instalar, pero
si las tenemos hemos que comprobar que /sbin/ld (el cargador de libreras dinmicas)
sabe dnde estn, para ello hemos de aadir una entrada en el fichero /etc/ld.so.conf
que consiste en poner el directorio donde est la librera, luego ejecutamos ##/sbin/
ldconfig -D ,para cerciorarnos que la lee.
Cmo dar formato a un diskette en Linux?
El formato de diskettes en Linux depende del tipo de formato que se le desee dar al
diskette (tipo MSDOS, tipo FAT32/VFAT, tipo Ext2 de Linux, minix, etc.). En general,

Plataforma de Teleformacin de IFES

Pgina 229 de 384

simplemente hay que usar uno de los comandos mkfs disponibles que crear el sistema
de ficheros pertinente. Para formatear diskettes en formato Linux-ext2 : ##mkfs.ext2
[opciones] /dev/fd0 ,o bien su equivalente: ##mke2fs [opciones] /dev/fd0 El usuario
que formatee deber tener permiso de escritura para la disketera (normalmente /
dev/fd0). Para eso, debe estar en el grupo de usuarios floppy o que /dev/fd0 tenga
permisos 666 (para todo el mundo). Para formatear diskettes en formato MSDOS:
##mkfs.msdos [opciones] /dev/fd0 o bien: ##mkdosfs [opciones] /dev/fd0 Otro comando
disponible si tenemos instaladas las mtools es mformat: ##mformat a: este ltimo
comando formatear el diskette en formato ms-dos.Por ltimo, existen otros programas
como fdformat o superformat (ver paquete fdutils) que tambin sirven para dar formato
a diskettes. NOTA: Formatos del tipo ext2 y ms-dos son los que se utilizan ms
usualmente en linux. Hay que aclarar que un diskette con formato ext2 no ser posible
leerlo bajo ms-dos o Windows, solamente bajo Linux. Un diskette con formato ms-dos
podr ser ledo indistintamente por ms-dos, windows o Linux (si tenemos soporte en el
kernel para trabajar con este formato).
Cmo puedo montar y desmontar unidades en Linux?
Montar un sistema de ficheros/dispositivo a nivel usuario no es ms que hacerlo
disponible en el rbol de directorios de nuestro sistema. Como ya sabis, en Linux
vemos todos los sistemas de ficheros/dispositivos en un solo rbol de directorios;no
existen letras a:, c:, etc.., as que nos da igual que el contenido de un directorio sea un
sistema de ficheros msdos, vfat, ext2, otro que est en una mquina remota, etc. Esta
abstraccin tiene un inconveniente: hay que montarlo, es decir,indicarle al kernel de
Linux que a travs del directorio XXXX, accedemos al sistema de ficheros/dispositivo
yyy. Esto se hace con el comando '''mount''' (man mount, para detalles). Montar un
sistemas de ficheros/dispositivo a nivel kernel, no es ms que rellenar unas tablas de
registro. Es decir, ver si el sistema de ficheros est soportado, es decir, si existe la
tabla de funciones con las que manejarlo. Luego registrar estas funciones y enlazar el
directorio al sistema de ficheros. Esto es ms bien lo que hace la llamada al sistema
mount, la cual es llamada mediante el comando del mismo nombre. Los parmetros
necesarios para montar un sistema de ficheros son: * Tipo de sistema de ficheros: es
necesario indicarle el tipo de sistemas de ficheros a registrar. As sabr qu funciones
utilizar. * Tipo de acceso: si es de slo lectura, slo escritura o ambos. * Dispositivo:
indicar el dispositivo sobre el que est fsicamente el sistema de ficheros,( p.e.: /dev/
hda1, /dev/hdb, /dev/sda1,..., none si es el /proc, ya que se realiza sobre la memoria).
* Directorio: indica el directorio sobre el que se va a montar, es decir, el directorio
mediante el cual accederemos al sistema de archivos. Ejemplo: montar el cdrom en
el directorio /dev/cdrom: ##mount -t mount -t iso9660 /dev/hdb /mnt/cdrom . Supongo
que ya comprenderis el inconveniente de esto: cada vez que se quiere acceder a
un cdrom se ha de ejecutar el comando anterior, en vez de teclear d: (como en otros
sistemas operativos). Pero la versatilidad y la flexibilidad que ofrece hace que no se

Pgina 230 de 384

Linux

tenga en cuenta ese inconveniente (como usuario accedo dentro de un directorio sin
que me pase por la cabeza que ese fichero est al otro lado del planeta utilizando para
ello el protocolo nfs). Existen otras formas de reducir la lnea de comandos, para ello
(entre otras cosas) existe el fichero fstab. En l se indican los sistemas de ficheros
sobre los que trabajamos normalmente: el sistema de ficheros en el que tenemos los
directorios de linux, el /proc, la particin dos, el cdrom, y el floppy. El fichero /etc/fstab
funciona de la siguiente manera: partimos de un ejemplo de contenido de /etc/fstab:
# /dev/hda2 / ext2 defaults 1 1 /dev/hda3 /usr ext2 defaults 1 2 /dev/sda1 /home ext2
defaults 1 2 /dev/hdb /mnt/cdrom iso9660 user,noexec,nodev,nosuid,ro,noauto 0 0 /dev/
fd0 /mnt/floppy vfat user,noexec,nodev,nosuid,rw,noauto 0 0 none /proc proc defaults
0 0 /dev/hda4 swap swap defaults 0 0 /dev/hda1 /mnt/dos vfat exec,dev,suid,rw,auto
0 0 Con la informacin contenida en este fichero, el sistema hara lo siguiente al
arrancar el sistema: * La particin /dev/hda1 se montara en el subdirectorio /mnt/
dos * La particin /dev/hda2 se montara en el subdirectorio / * La particin /dev/
hda3 se montara en el subdirectorio /usr * La particin /dev/hda4 se montara en el
subdirectorio como swap * La particin /dev/sda1 se montara en el subdirectorio /
home * Proc se montara en el subdirectorio /proc * El sistema tendra informacin
sobre cmo montar un diskette /dev/fd0 y un CD-Rom /dev/hdb, aunque no los monta
automticamente al arrancar por haber definido la opcin noauto.Veamos la explicacin
de los parmetros usados en /etc/fstab: En la columna de dispositivo se indica el
dispositivo/particion a montar, en el punto de montaje se indica el directorio mediante
el cual vamos a acceder al sistema de archivos. En la columna de tipo de sistema de
ficheros se indica el sistema de ficheros que se usar sobre el dispositivo. Las opciones
significan lo siguiente: * user,nouser: permite/no permite a un usuario ordinario montar
el sistema de ficheros. * suid,nosuid: Se requiere / no se requiere tener privilegios de
superusuario . * auto/noauto: Indica que s/no se monta cuando hacemos mount -a.
* defaults: Aplica las opciones rw,suid,dev,exec,auto,nouser,async. * exec: Permite
la ejecucin de binarios. * ro,rw: Montar slo lectura, lectura-escritura. El fichero /
etc/fstab de nuestro ejemplo nos permitira hacer lo siguiente para montar un diskett
o CD-Rom: ##mount /mnt/cdrom mount /mnt/floppy Cuando dejamos de utilizar un
sistema de ficheros, tenemos que darlo de baja (desmontarlo), para eliminar todas las
referencias del kernel a l. El comando utilizado para esto es umount. Para desmontar
un sistema de ficheros/dispositivo: ##umount <directorio|dispositvo> ej: ##umount /
mnt/floppy umount /dev/fd0 NOTA: es necesario ejecutar el comando umount cada vez
que cambiemos un diskette, ya que no siempre cuando se escribe en un dispositivo
se realiza automticamente un volcado al dispositivo (por eso se pueden perder
datos si se apaga el ordenador a lo bruto).Adems,si cambiamos el diskette sin hacer
umount,el kernel piensa que hay el sistema de ficheros anterior y cuando guarda
alguna informacin lo hace con referencia al retirado,perdindose todo. ste es un
punto a tener en cuenta con el uso de diskettes, ya que el mecanismo para retirar
un diskette es mecnico,no existe posibilidad de impedir por medio de software que

Plataforma de Teleformacin de IFES

Pgina 231 de 384

alguien saque un diskette de la disquetera. No ocurre lo mismo con el CD-Rom,ya que


el sistema bloquear la posibilidad de extraerlo cuando est montado.
Cmo se crea un diskette de arranque para Linux?
Slo tenemos que ejecutar los siguientes comandos con un diskette vaco dentro de la
diskettera: ##[sromero@localhost]$/sbin/mke2fs /dev/fd0 ##[sromero@localhost]$ [ d /fd ] || mkdir /fd ##[sromero@localhost]$ mount /dev/fd0 /fd ##[sromero@localhost]$
cp /boot/boot.b /fd ##[sromero@localhost]$ cp /vmlinuz /fd ##[sromero@localhost]$
echo ##image=/fd/vmlinuz label=linux | /sbin/lilo -C - -b /dev/fd0 -i /fd/boot.b -c -m /
fd/map ##[sromero@localhost]$ umount /fd ##[sromero@localhost]$rmdir /fd Lo
que hacen estos comandos es: ##/sbin/mke2fs /dev/fd0 -> Formatea el diskette con
formato ext2 ##[ -d /fd ] || mkdir /fd -> Si no existe el directorio /fd lo crea ##mount /
dev/fd0 /fd -> monta el diskette en dicho directorio. ##cp /boot/boot.b /fd cp /vmlinuz /
fd -> Copia el kernel de Linux y el archivo de boot al diskette. Si nuestro kernel no se
llama vmlinuz (por ej bzImage o zImage) o no est en el raz debemos cambiar esto.
##echo image=... -> Activa el kernel en el diskette. ##umount /fd -> Desmontamos el
disco ##rmdir /fd -> Borramos el dir /fd Si alguno de los paths o nombres cambia los
deberemos cambiar dentro del diskette.

Internet / Redes / Modems


Qu es un mdem? Y un puerto serie?
Por qu los modems estn normalmente asociados a puertos serie? Lo impone el
hecho que cuando uno usa un mdem, la lnea telefnica a la que est conectado
slo tiene un cable por el que enviar la informacin. Para transmitir simultneamente
los 8 bits de los que consta un byte, que es la unidad de informacin usual en los
ordenadores, haran falta 8 cables (8 lneas telefonicas). Una solucin alternativa es
enviar los 8 bits sucesivamente uno detrs del otro a intervalos de tiempo regulares.
Precisamente esto es lo que hace un puerto serie. El corazn del puerto serie es
un chip del ordenador llamado UART (Receptor-Transmisor Asncrono Universal)
el cual se encarga de todo el trabajo, tanto para recibir datos como para enviarlos.
As, la potencia de dicha UART y lo bien configurada que est influirn en la calidad
de la comunicacin. El flujo de bits generado por la UART/puerto serie no puede
introducirse directamente en la lnea telefnica al no estar preparada para ello. La
solucin es utilizar un aparato intermedio que tome los bits que llegan del puerto
serie y emita un tono u otro por la lnea telefnica segn le llegue un bit 0 o un 1.
Esto es lo que se conoce como "modular una seal". Al otro lado del hilo telefnico
otro aparato similar interpretara estos tonos y generara unos o ceros en funcin del
tono recibido. ste sera el paso opuesto, "demodular la seal". Como normalmente
se desear enviar y recibir, el aparato intermedio deber realizar ambas funciones:
'''MOdular''' y '''DEModular''' (MO-DEM). As funcionaban los modems antiguos. Los

Pgina 232 de 384

Linux

modernos se basan en los mismos principios aunque son infinitamente ms verstiles


y potentes. Los modems modernos realizan la modulacin y demodulacin utilizando
chips especiales llamados DSP (Procesadores Digitales de Seales en castellano). Son
como microprocesadores, pero muy rpidos y optimizados para tratamiento de seales.
Los modems modernos tambin incorporan sistemas de compresin de datos que
aceleran las transferencias, sistemas de correccin de errores, cambios automticos
de velocidad de transferencia si la calidad de la seal mejora o empeora, etc... Existen
dos clases de modems: Los internos y los externos. Los externos van conectados a un
puerto serie del ordenador por lo que simplemente se limitan a las funciones descritas
de modulacin-demodulacin, compresin, correcin, etc. Los modems internos "de
verdad", al no ir conectados a un puerto serie incorporan una UART como las de dichos
puertos serie, de forma que a ojos del ordenador se trata de un puerto serie ms.
Entonces, qu es un winmodem, mdem HSP o mdem software ? Funcionan
los winmodem en Linux ? Y los modems PCI?
Son modems internos "capados". Los fabricantes les quitan chips para que sean ms
baratos. Por ejemplo, algunos no tienen UART, a otros les quitan los protocolos de
compresin, etc. Para que tengan las mismas funciones que los modems "de verdad",
las funciones correspondientes a los chips retirados las tienen que realizar drivers del
sistema operativo, o sea el microprocesador del ordenador. Los fabricantes de los
distintos modems slo ofrecen drivers para Windows y no dan especificaciones de
cmo se programan, y as desarrollar versiones para Linux. Por tanto estos modems no
funcionan en Linux. Sobre los modems PCI, no tengo noticias de que ninguno sea un
mdem "de verdad". Es probable que en el futuro aparezcan pues el hecho de ser PCI
no es ningn impedimento para ello.
Cmo se configura el puerto serie ?
La primera pregunta sera:debo configurar mis puertos serie ? En general, slo
debers configurar los puertos serie en estos casos: * Tu mdem es interno y
Plug'n'Play. Debers configurar el mdem y al menos el puerto serie que incorpora.
* Tienes ms de dos puertos serie, contando adems con los que incorporan los
modems internos (si tienes alguno). Por lo general debers configurar todos los puertos
a partir del COM3 includo. * Un tercer caso, ms raro, que consistira en tener un
mdem interno en COM1 o COM2 y que no usar los recursos estndar (puerto 3f8
e interrupcion 4 para COM1, y puerto 2f8 e interrupcin 3 para COM2). Los recursos
utilizados por el mdem pueden consultarse en el Panel de Control de Windows 95 :
(Sistema -> Administrador de dispositivos -> Puertos COM y LPT -> el puerto que sea > Recursos). Entonces debers configurar el puerto del mdem. Si no cumples ninguna
de estas condiciones, puedes ignorar el resto de la seccin. Un puerto serie (ms
exactamente, la UART del puerto serie) usa un rango de direcciones de entrada-salida
y una solicitud de interrupcin para comunicarse con el sistema operativo. Para el

Plataforma de Teleformacin de IFES

Pgina 233 de 384

correcto funcionamiento del ordenador y del sistema operativo, ningn otro dispositivo
del ordenador puede usar alguno de esos valores. Nuestro objetivo ser conseguir
esto, y en segundo lugar, hacer que el sistema operativo atienda a ese rango de
entrada-salida y esa interrupcin para comunicarse con el mdem. Tradicionalmente,
la eleccin del rango de entrada-salida y la interrupcin se realizaba a travs de una
serie de microinterruptores manuales situados en el mdem. Conocida la posicin de
estos interruptores, se configuraba el sistema operativo para que usara esos valores.
Hoy en da casi la totalidad de los modems internos son Plug'n'Play, lo cual significa
que el sistema operativo puede, por software, decirle a la tarjeta qu valores debe usar.
Configuracin de modems Plug'n'Play en Linux Si tienes un mdem Plug'n'Play, lo
primero que habr que hacer es decirle qu rango de entrada-salida y qu interrupcin
debe usar. Lo ms cmodo en este caso es usar los mismos valores que Windows 95.
Para ello, arranca Windows 95, y haz: Inicio->Configuracin->Panel de control. Una
vez en el Panel de control, elige el icono 'Sistema' y dentro de l, el 'Administrador
de dispositivos'. Dentro del apartado 'Puertos COM y LPT' elige el correspondiente
al puerto COM donde tienes el mdem. Busca en 'Recursos' el rango de entradasalida y la interrupcin que use y apntalos. Con esos valores en la mano, puedes
configurar tu mdem Plug'n'Play en Linux. Eso se hace con el programa 'isapnp'. Entra
en Linux y busca si tienes un archivo llamado /etc/isapnp.conf. Si no lo tienes haz lo
siguiente: ##pnpdump > /etc/isapnp.conf Esto generar el esqueleto de un archivo de
configuracin para 'isapnp'. Este programa generar un listado con todas las posibles
posibilidades de configuracin que permiten tus dispositivos Plug'n'Play, pero todas
deshabilitadas con un '#' al principio de cada lnea. Los dispositivos aparecen por
secciones por lo que es fcil encontrar los correspondientes a tu mdem. As,tu misin
se reducir a encontrar en la seccin correspondiente a tu mdem del archivo /etc/
isapnp.conf, dos lneas as: ##(IO 0 (BASE 0x0NNN)) ##(INT 0 (IRQ MM (MODE +E)))
donde NNN sea el rango de entrada-salida que use el mdem en Windows y MM
la interrupcin. Las lneas no tienen por qu ser consecutivas ni ir en ningn orden
especial. Cuando las encuentres, qutales el '#' inicial. Luego, al final de la seccin
del mdem encontrars una lnea parecida a sta: ##(ACT Y) De la misma forma, le
quitas el '#' inicial.Ya est. Listo para enviar dichos valores al mdem. Esto lo hace la
orden isapnp: ##/etc/isapnp.conf ...y deber aparecer en los scripts de arranque de
Linux para enviar los valores cada vez que enciendas el ordenador. Las distribuciones
ms recientes (Red-Hat 5.0 y posteriores, Debian 2.0 y posteriores) ya incluyen dicha
invocacin por lo que no necesitars tocar los scripts de arranque. En caso de tener
una distribucin antigua, ser necesario aadir dicha orden. Un buen sitio para incluirla
sera el script rc.local, que suele estar situado en uno de los subdirectorios de /etc. De
todas formas ser necesario ejecutar ##isapnp /etc/isapnp.conf ,si queremos activar
los cambios en este momento y nos queremos ahorrar el rearrancar la mquina. Ahora
hay que decirle al sistema operativo que debe usar esos valores para comunicarse
con el mdem. En el caso de los modems Plug'n'Play lo que viene a continuacin es

Pgina 234 de 384

Linux

imprescindible. Configuracin de los puertos serie a ojos del sistema operativo: Lo


primero que hay que saber es que Linux no llama a los puertos serie de la misma forma
que el DOS o Windows. As existe la siguiente correspondencia: '''DOS-Windows'''
'''Linux''' COM1 /dev/ttyS0 COM2 /dev/ttyS1 COM3 /dev/ttyS2 COM4 /dev/ttyS3 Ojo
a las maysculas y las minsculas del nombre de Linux. Son importantes. Para leer
la configuracin y configurar los puertos serie se usa la orden 'setserial'. Para leer la
configuracin,hay que ejecutar setserial con el puerto serie que deseamos ver como
nico parmetro. Por ejemplo: ##setserial /dev/ttyS1 ,nos muestra la configuracin
de COM2 y se obtendr algo como esto: ##/dev/ttyS1 ##UART: 16550A ## Port:
0x02f8 ##IRQ 3 , es decir: el puerto serie (/dev/ttyS1), el tipo de chip UART que lleva
(16550A), el puerto base de entrada-salida (2f8) y la solicitud de interrupcin (3).
Ntese que estos son los valores que el sistema operativo CREE que debe utilizar
para comunicarse con el mdem/puerto serie. Es posible que ahora no coincidan
con los reales, incluso que ni siquiera detecte la UART, lo cual no es raro en caso
de modems Plug'n'Play. Si no coinciden, asignaremos los valores adecuados. Por
fortuna,por lo general no ser necesario indicar la direccin base de entrada-salida.
Salvo casos muy, muy excepcionales, COM1 usa la direccin base 3f8, COM2 la 2f8,
COM3 la 3e8 y COM4 la 2e8, y eso setserial lo sabe. As, al indicar el puerto serie,
'''setserial''' implcitamente sabe cul es la direccin base. En cambio, en caso de
tener un puerto COM5 o superior s ser necesario indicar la direccin base. As, para
COM1-COM4 ,slo indicaremos la interrupcin. Por ejemplo, supongamos que tenemos
un mdem en COM3 que usa la interrupcin 5. La orden a introducir sera: ##setserial /
dev/ttyS2 irq 5 autoconfig . Y si quisiramos indicar tambin la direccin base de
entrada-salida (por tener el mdem en COM5, por ejemplo) se hara as: ##setserial /
dev/ttyS4 port 0x2e8 irq 10 autoconfig lo cual hace que el sistema operativo use un
rango de direcciones desde la 2e8, y la interrupcin 10. Ntese que el '0x' antes de la
direccin base es importante. Por ltimo, slo queda ver que los cambios han surtido
efecto. Para ello bastar usar de nuevo '''setserial''' de la primera forma que se indic.
Por desgracia, esta configuracin durar hasta que apaguemos el ordenador. Por tanto
ser necesario incluir la lnea o lneas de configuracin setserial ###/dev/ttyS2 irq 5...
en uno de los scripts de arranque de Linux para que los puertos se configuren cada vez
que se inicie el sistema operativo. Un buen candidato es rc.local, que estar en uno de
los subdirectorios de /etc. En caso de ser necesario incluir en rc.local tanto el isapnp /
etc/isapnp.conf para configurar un mdem Plug'n'Play, y el setserial... de los puertos
serie, deber colocarse el isapnp... en primer lugar. Tambin habr que usar '''setserial'''
de la misma forma si el ordenador tuviera ms de dos puertos serie,(contando los que
traen los modems internos en caso de disponer de alguno). El motivo es que por alguna
extraa razn de diseo del PC, COM1 y COM3 por defecto comparten la misma
interrupcin, y a pesar de que esa configuracin no es deseable, Linux por defecto
busca COM3 en la misma interrupcin que COM1, por lo que habra que cambiar la de
COM3. Lo mismo ocurre con COM2 y COM4 ,por lo que habra que cambiar COM4. Si

Plataforma de Teleformacin de IFES

Pgina 235 de 384

no se hiciera esto, podran ocurrir cosas muy raras, como ratones y modems que dejan
de funcionar, modems que funcionan "a pedales" (cuando se mueve el ratn), etc...
Cmo compruebo que todo est bien configurado?
Una vez activados los cambios con el comando isapnp para los modems Plug'n'Play
y el/los comando(s) setserial necesarios para configurar el/los puerto(s) serie, o se
hreiniciado el ordenador con los scripts de arranque modificados para que ejecuten
dichas rdenes (es ms seguro hacer lo primero), se puede probar si todo va bien. La
forma ms sencilla es usar un programa de comunicaciones y enviarle comandos al
mdem para ver si responde. As, un programa adecuado sera minicom ,que es un
terminal de comunicaciones tipo Telix. No es complicado de configurar. Pulsando Ctrl+a
y luego z sale un men. Una de las opciones 'configure minicom' dar paso a otro men
donde la opcin "Serial port setup" nos permitir elegir el puerto serie, la velocidad con
la que nos comunicaremos con l (no la velocidad del mdem) y otras opciones ms.
Lo normal es usar : 115200 o 57600 para la velocidad, 8N1, "Hardware Flow Control:
Yes" y "Software Flow control: No". Una vez configurado y sin ningn men sobre
la pantalla escribes ' AT' (las dos en maysculas o las dos en minsculas) y pulsas
ENTER. Si el mdem responde al instante 'OK' ,o con un nmero cero, indicara que
el mdem funciona y que responde bien. Para completar la faena puedes probar a
conectarte a una BBS o a tu nodo de infova plus (los nodos de infova plus permiten
una conexin tipo terminal, aunque no s qu se puede hacer con ella) ,y as probar
que todo va bien. Si el mdem tarda en responder al 'AT', o no responde, algo ha
fallado en la configuracin del mdem o del puerto serie y habra que revisar lo hecho.
Un comentario sobre el 'AT' : Cuando se escriben estas dos letras pueden ocurrir varias
cosas: * Que salga el AT mientras lo escribes (lo normal). * Que no te salga el AT, pero
al pulsar ENTER el mdem responda con OK. Para solucionar esto deberas activar el
eco local del terminal con Ctrl+a e o escribir a ciegas "ATE1" y pulsar ENTER. * Que te
salga AATT y todo lo que pongas por duplicado. No es problema porque el mdem slo
recibir 'AT'. Para quitar esto, desactiva el eco local del terminal con Ctrl+a e o escribe
"ATE0", aunque te salga duplicado. Cuando pulses ENTER tras el ATE0 ya funcionar
bien.
Qu es pppd?
Se trata de la primera posibilidad de conexin a internet que ofrece Linux. Es una
conexin a internet que gasta pocos recursos y con posibilidad de hacerla desde la
consola, sin necesidad de entrar en modo grfico. Cualquiera que aspire a obtener
el mximo rendimiento de la conexin a internet, por ejemplo automatizando la
conexin, automatizando la recogida de correo, noticias, ftp, etc..., casi seguro no
tendr ms remedio que pasar por aqu. Como inconvenientes, tiene unos cuantos.
El ms destacable es la falta total y absoluta de interactividad o de informacin en
pantalla de cmo va la conexin, siendo necesario el uso de otros comandos (como

Pgina 236 de 384

Linux

ifconfig) o la observacin de archivos histricos (/var/log/messages) para averiguar si


la conexin se ha realizado con xito o ha habido algn error. La configuracin de pppd
se basa en la creacin de una serie de archivos... /etc/ppp/options : Configuracin de
la conexin y del puerto serie /etc/ppp/marcado : Configuracin del mdem y marcado
del nmero de telfono /etc/ppp/pap-secrets : Claves de acceso para identificacin
con PAP /etc/ppp/chap-secrets : Claves de acceso para identificacin con CHAP /etc/
resolv.conf : Servidores de nombres (DNS) As un posible /etc/ppp/options sera as:
##connect "/usr/sbin/chat -v -f ##/etc/ppp/marcado" name ##mi_login@mi_proveedor
defaultroute ##noipdefault modem crstcts asyncmap a0000 ##mru 576 /dev/ttySx
115200 Comentarios: * En mi_login@mi_proveedor ir el login y el proveedor (el
proveedor sin dominio, por ejemplo: fulanito@arrakis) * Donde pone /dev/ttySx, la 'x'
indica el puerto serie: /dev/ttyS0 = COM1, /dev/ttyS1 = COM2, etc... * La velocidad
115200 NO es la velocidad del mdem, es la velocidad entre el mdem y el puerto
serie, que no tiene por qu coincidir con la velocidad en el lado de la lnea telefnica.
La velocidad del mdem (33600, 28800...) NO hay que ponerla en ningn sitio.
Algunos modems no soportan esa velocidad entre el mdem y el puerto serie y
habr que probar con 57600 o incluso con 38400. Si se tiene una UART 16450 o
8250, utilizar 38400 (usar setserial /dev/ttySx para conocer la UART del mdem
o del puerto serie, donde 'x' indica el puerto serie de la misma forma que antes).
Ntese que el valor ptimo es 115200 y conforme menor sea dicho valor, menos
rendimiento le sacaremos al mdem. /etc/ppp/marcado: ABORT "BUSY" ABORT
"NO CARRIER" ABORT "NO DIALTONE" ABORT "ERROR" "" "AT& F" TIMEOUT
5 OK "ATDTnumero_de_telefono" TIMEOUT 100 CONNECT Comentarios: * Los
ABORT iniciales sirven para que, si el mdem encuentra una situacin anmala (no
hay tono de llamada, comunicando...) y responde alguno de esos mensajes (BUSY,
NO CARRIER...), el pppd pare y no pierda tiempo hasta fallar el TIMEOUT 100 que
sera el que acabase la conexin. El problema es que no todos los modems responden
de la misma forma (por ejemplo, el mo responde "NO DIAL TONE" en vez de "NO
DIALTONE") y la correspondencia debe ser exacta. Por tanto, para una configuracin
correcta, ser necesario consultar en el manual del mdem cmo son estos mensajes.
* El "AT& F" es la cadena de inicializacin del mdem. La que se indica es de las ms
estndar. No obstante, en algunos modems puede ser mejor "ATZ" o variantes de
"AT& F" (como "AT& F1", "AT& F2"...). Como referencia, se debe usar aquella que
configure el mdem para usar control de flujo hardware (RTS/CTS). En caso de no
acertar en la configuracin del mdem, es posible que se produzcan algunos efectos
indeseables (el mdem no cuelga al cortar la comunicacin, conexin lenta...). Una
posibilidad es "fusilar" la que use windows. Se puede ver dentro del directorio de
windows un archivo llamado modemlog.txt o modemdet.txt. * El numero_de_telefono
es precisamente eso. El nmero de telfono del nodo de Infovia Plus, el de Iddeo,
etc... /etc/ppp/pap-secrets /etc/ppp/chap-secrets Existen dos formas posibles de
identificacin cuando nos conectamos a un proveedor: PAP y CHAP. PAP es la ms

Plataforma de Teleformacin de IFES

Pgina 237 de 384

sencilla y es la que usaba por ejemplo Infovia. CHAP es muy usada en Infovia Plus.
El formato de ambos archivos es el mismo: ##mi_login@mi_proveedor * password
Comentarios: * mi_login@mi_proveedor debe ser exactamente lo mismo que se
puso como parmetro de la opcin 'name' en /etc/ppp/options. * Los campos van
separados por TABULADORES no por espacios. * Si se dispone de ms cuentas en
otros proveedores, se pueden aadir nuevas lneas con el mismo formato. Cul uso,
pap-secrets o chap-secrets? Si sabes que tu proveedor usa PAP, grbalo como papsecrets. Si usa CHAP, grbalo como chap-secrets. Si no sabes cul usa, puedes hacer
prueba-y-error o crearte los dos, o crearte uno slo y hacer un enlace simblico de
uno al otro. Por ejemplo, si has creado chap-secrets, para hacer un enlace desde
pap-secrets se hara: ##cd /etc/ppp ln -s chap-secrets pap-secrets. Esto en teora
hara que pppd y tu proveedor se pusieran de acuerdo para elegir PAP o CHAP
segn prefieran. /etc/resolv.conf : Aqu iran las direcciones de los DNS primario y
secundario. El formato es muy sencillo: ##nameserver DNS_primario nameserver
DNS_secundario Por ejemplo, nameserver 195.5.65.2 Comentarios: * En lugar de
DNS_primario y DNS_secundario, se pondrn las direcciones numricas de los DNS
primario y secundario respectivamente. Los DNS primarios y secundarios debers
preguntarlos a tu proveedor y debern drtelos, pues no son secretos. * Si no tuvieras
DNS_secundario, puedes ahorrarte la segunda lnea. Una vez creados los scripts, la
conexin se efectuara al escribir pppd o /usr/sbin/pppd. Para comprobar si la conexin
tiene xito, se puede usar el comando /sbin/ifconfig y ver si al cabo de un minuto o
dos aparece un bloque nuevo ppp0. Otra forma es consultando peridicamente el
fichero /var/log/messages hasta ver si aparece algo como esto: ##Local IP address
xxx.xxx.xxx.xxx ##Remote IP address yyy.yyy.yyy.yyy Lo cual indicara una conexin
con xito. Una forma de hacer esto sera con la orden ##tail -f /var/log/messages y
pulsar Ctrl+C cuando veamos que la conexin ha funcionado o fallado. La desconexin
se realizara introduciendo la orden ##killall pppd. En caso de necesitar ayuda, remitir la
duda a es.comp.os.linux.misc o es.comp.os.linux.redes mandando copia de los scripts
(ocultando los passwords, claro) y lo que haya salido en /var/log/messages durante
la conexin fallida. NOTA IMPORTANTE: Los ficheros arriba descritos han de crearse
desde cero con un editor de Linux. Crearlos con un editor de DOS o de Windows, o con
operaciones de cortar-y-pegar en Windows aade un carcter no visible al final de cada
lnea que Linux confundira con un carcter normal, inutilizando los scripts.
Cmo conecto a internet con KDE-kppp?
Despus de haber utilizado diversos sistemas para conectar con Internet a travs
de InfovaPlus mediante mdem y haber constatado en el grupo de noticias
es.comp.os.linux la gran cantidad de veces que se pregunta acerca de cmo
conectarse mediante kppp, hemos pensado que este breve resumen sobre cmo
establecer la conexin usando el kppp podra ser interesante para algunos que
se inician en linux y disfrutan del entorno grafico KDE. Las notas que escribo a

Pgina 238 de 384

Linux

continuacin se refieren a la versin KDE 1.0 (las diferencias con respecto al KDE
1.1 son mnimas) y por lo tanto voy a partir de la base de que el usuario de linux ha
instalado ya el KDE y le funciona sin problemas de ningn tipo. Gua paso a paso de
conexin a internet a travs de InfovaPlus con kppp. Antes de comenzar... El mdem
debe estar correctamente instalado y su funcionamiento verificado (usando por ejemplo
el programa minicom). El dispositivo asociado al mdem depender del puerto serie
al que est conectado. Si est conectado al "COM2" (en jerga DOS), el dispositivo
ser /dev/ttyS1 , y podemos hacer un enlace simblico a /dev/modem : ##ln -s /dev/
ttyS1 /dev/modem . Adems debemos saber su velocidad mxima. Si el mdem es
de ms de 28,8Kbps podemos tomar 115200. Otros datos fundamentales son los
que tienen que ver con nuestro proveedor de internet: * "Domain name" (Nombre de
dominio del servidor de acceso) seguido por un punto y la extensin del pas: por
ejemplo proveedor.es (se trata de un nombre inventado para ilustrar el procedimiento)
* "DNS IP" (Direccin IP del servidor de nombres de dominio: en nuestro caso ser
(inventado tambin) 194.150.24.25 * Login: compuesto por nuestro indicador de usuario
(p.ej. user) y "Domain name" sin extensin separados por arroba user@proveedor
* Nmero de telfono que corresponda segn nuestro nodo de conexin. Cuando
exista Infova este nmero era el 055, pero con InfovaPlus,dependiendo del lugar,
hay un telfono de acceso; por ejemplo (para Sevilla) 954547000 . Comenzamos..
Invoquemos kppp mediante accin sobre el correspondiente icono del men del KDE o
escribiendo en un terminal: ##[user@localhost]# kppp . Para que el programa funcione
para un usuario normal el propietario y el grupo deben ser root y el ejecutable debe
tener el bit SETUID activado, para poder abrir el dispositivo del mdem. Si no es as se
pone uno superusuario: ##[user@localhost]# su root (... da la password... y entonces
hacemos) ##[user@localhost]# chown root.root kppp ##[user@localhost]# chmod +s
kppp ##[user@localhost]# exit (...para volver a usuario normal...) Si todo ha ido bien
aparecer la ventana del kppp y con el ratn accionaremos la tecla setup.Entonces
se abrir la ventana "kppp configuration" con varias pestaas indicando secciones:
Accounts; Device; Modem; PPP y About. Comenzaremos por la primera seccin:
Seccion ACCOUNTS . Accionamos la tecla new y aparece una nueva ventana llamada
new account con otra serie de subsecciones: desde Dial hasta Accounting. Subseccion
DIAL. Esta seccin contiene el Dial Setup que debemos rellenar: Connection name:
Ponemos el nombre que queramos dar a la conexin; por ejemplo, INFOPLUS
Phone number: 954547000 Authentication. La autenticacin puede realizarse de
cuatro modos: script-based, PAP, terminal-based o CHAT. Debemos elegir la opcin
PAP Store password: si no quieres tener que teclear la password cada vez que te
conectes deja activada esta opcin . Execute program upon connect:debe tener su
casillero vaco. No escribas nada. Execute program upon disconnect: Debe tener
su casillero vaco. No escribas nada. Edit pppd arguments: una vez activada la
opcin los argumentos se introducen escribindolos en el casillero "arguments" y
pulsando la tecla "add". Deben estar los siguientes: ##detach defaultroute asyncmap

Plataforma de Teleformacin de IFES

Pgina 239 de 384

a0000 ##noipdefault ipcp-accept-local ##ipcp-accept-remote . Cuando hayamos


terminado, pulsamos "close" y pasamos a las subsecciones siguientes NOTA: Estos
argumentos los tena as establecidos para cuando conectaba con Infova. Al pasar
a InfovaPlus, alguno puede quedar superfluo,pero funciona!, as que no quit
ninguno. Subseccion IP Contiene el IP setup. La nica opcin que debe estar activada
es Dynamic IP address Subseccion DNS. Aqu tenemos el men del DNS Server:
Domain name: proveedor.es DNS IP address: la(s) introducimos en este casillero:
194.150.24.25 y pulsando la tecla "add" la(s) pasamos al DNS address list. Al menos
debe haber una. Disable existing DNS servers during connection: Esta opcin debe
estar activada. Subseccin GATEWAY :contiene el Gateway setup . Las opciones
que deben activarse son: Default Gateway : Assign the default route to this gateway
Subseccion LOGIN SCRIPT Principiantes Ni tocarlo! El edit script deber estar vaco,
con el primer casillero de opciones presentando la opcin "EXPECT". Subseccion
ACCOUNTING: La opcin Enable accounting debe estar activada.Selecciona entonces
con la opcin "Selected" : Spain y dentro de ella, Telefnica Local y deja la opcin
"Volume accounting: No accounting" desactivada. Entonces, una vez que hemos
rellenado todas las subsecciones de la seccin ACCOUNTS, accionamos el botn OK
de la ventana "new account" y volvemos a la de kppp configuration. Hay que rellenar
el resto de las secciones. * Seccion DEVICE: Aqu est el men Serial device: Modem
device: pon el dispositivo correspondiente, p.ej. /dev/ttyS1 (para mdem en puerto
serie com2) Flow control: CRTSCTS (hardware flow control) Line termination: La que
corresponda. Generalmente es CR/LF Connection speed: La que corresponda, p.ej.
115200 Modem lock file: /var/lock/LCK..modem .Este fichero debe estar por defecto. No
lo cambies si no sabes lo que haces, pues algunos programas como mgetty dependen
de la existencia de tal fichero y kppp no funcionar. * Seccion MODEM Busy wait: 0
seconds Modem Asserts CD line: opcin desactivada Modem commands: Deja los
valores por defecto y no cambies nada Query modem: Pulsando este botn kppp
insta al mdem a que se identifique. Sirve para probar el mdem. Terminal: Tambin
sirve para comprobar si el mdem negocia bien el protocolo de conexin. De todos
modos no te detengas en esto si no sabes lo que haces y sigue adelante. * Seccion
PPP Presenta el ppp setup: pppd timeout: 60 seconds Dock into the panel on connect:
opcin desactivada Automatic redial on disconnect: opcin generalmente desactivada
Show clock on caption: opcin activada Disconnect on X-server shutdown: opcin
activada Quit on disconnect: opcin desactivada Minimize window on connect: opcin
activada La seccin ABOUT evidentemente es para mirar solamente. Por ltimo
accionamos el botn OK de la ventana kppp configuration. Con ello volvemos a la inicial
de kppp. Activamos "Show log window". En el casillero "Connect to" deber aparecer
el nombre de nuestra conexin (en el ejemplo INFOPLUS). El login ID ser en nuestro
ejemplo user@proveedor. Escribimos la password en su casillero: ****** y por ltimo
pulsamos "connect" . Si todo va bien, aparecern dos ventanas: una con el marco
superior indicando "Connecting to: INFOPLUS" que mostrar Dialing 954547000 y otra

Pgina 240 de 384

Linux

mayor, a la derecha de la primera indicando en su marco superior "Login Script Debug


Window" y presentando una serie de acciones: ATZ OK ATD954547000 (Mientras est
"Expecting Connect") cuando se ha establecido la conexin, aparece en esa misma
pantalla CONNECT 115200 e indicar en su marco inferior "running pppd" mientras
la otra ventana indica "Logging on the network". Cuando la ventana mayor presente
en su marco inferior "Done", la otra ms pequea, que en su marco superior exhibir
el nombre de la conexin (INFOPLUS), se minimizar y ya estamos conectados. Si
restauramos la ventana de conexin INFOPLUS en un momento dado nos mostrar
la siguiente informacin: Connected at 115200 Time connected .... Session bill...PTAS
Total bill ....PTAS y dos teclas "Details" (para ver los detalles de la conexin con nuestro
proveedor) y "Disconnect" evidentemente para desconectarnos. Si la pulsamos,
aparecer de nuevo la ventana kppp y entonces, para salir, presionaremos la tecla
"quit". Preguntas habituales: * kppp muestra "pppd has died unexpectly" o "data timeout
has expired" (pppd ha muerto inesperadamente o ha pasado el tiempo de espera).
Estos mensajes pueden aparecer alguna que otra vez, aisladamente. Si siempre se
producen, entonces hay un problema. Hemos de comprobar que: - pppd es realmente
un binario y no un script - pppd tiene el bit setuid activado - el fichero /etc/pppd/options
existe pero est VACO - que no has usado la opcin "lock" como argumento del pppd
en la configuracin del kppp - no uses el enlace simblico /dev/modem; en su lugar
usa el dispositivo real que corresponda, p.ej., /dev/ttyS1 - asegrate que tienes los
permisos necesarios en caso de seguir igual, invoca: ##[user@localhost]# tail /var/log/
messages para considerar las causas de posibles fallos. Es muy conveniente leer el
dossier sobre kppp que aparece pulsando la tecla help de la ventana de kppp. * kppp
indica "sorry, can't open the modem" (perdn, no puedo abrir el modem). Esto significa
que kppp no tiene permisos para abrir el dispositivo mdem o que se ha seleccionado
un dispositivo incorrecto en el cuadro del modem. Comprueba que el dispositivo sea
correcto y luego dale el bit setuid a kppp. * kppp muestra "I can't create a modem
lock file" (no puedo crear el fichero de cerradura) O bien le das a kppp el bit setuid o
das acceso al fichero /var/lock a los usuarios normales * kppp slo espera (Expecting
OK) - Has jugado con la configuracin de CR/LF? - El modem quiz necesita ms
tiempo para inicializarse. Ve al cuadro "Modem commands" y aumenta el "Init Delay
Time". * La conexin funciona, pero no se pueden arrancar aplicaciones.Puede ser
que est activada la opcin "Auto configure hostname" y el servidor X tiene problemas
para conectar con tu nuevo servidor. Si no hay ms remedio que usar dicha opcin,
tendrs que proporcionar los permisos adecuados tecleando xhost + antes de realizar
la conexin. Pero,MUCHO CUIDADO!, porque cualquier otra persona tendr acceso
a tu servidor de X. * kppp funciona, pero Netscape indica que "There is not a DNS
entry for this server" (El servidor no tiene una entrada DNS). Intenta hacer un ping al
nmero IP de otro servidor. Si funciona entonces hay que comprobar si le diste al kppp
al menos una direccin DNS o si en el fichero /etc/host.conf hay una lnea indicando

Plataforma de Teleformacin de IFES

Pgina 241 de 384

algo parecido a order hosts, bind. (Debe haberla para que se consulte al servidor de
nombres cuando se busca una direccin)
Mi mdem cuelga durante la negociacin inicial.
La negociacin se puede distinguir por ser la fase en la que suenan los modems.
Si cuelga bruscamente puede ser debido a un TIMEOUT demasiado corto en el
script de marcado. Se puede subir a TIMEOUT 100 o a TIMEOUT 150. En caso
de seguir colgando, se puede intentar aadir S7=100 o S7=150 entre el AT y el
DTnumero_de_telefono en el script de marcado.
Mi mdem suena muy fuerte ,cmo le bajo el volumen?
Depende de lo que quieras. Si simplemente quieres bajar el volumen del mdem, basta
aadir L1 o L0 a la cadena de inicializacin del mdem. Un posible sitio para colocarlo
sera entre el "AT" y el DTnumero_de_telefono en el script de marcado. Si lo que
quieres es que no suene para nada (por ejemplo, si quieres automatizar la conexin
para que se realice de madrugada), debers aadir M0 a la cadena de inicializacin del
mdem. Puedes colocarla en el mismo sitio que se indic para L1 o L0.
Conecto a internet, pero no logro ir a ningn sitio.
Lo primero que hay que tener en cuenta es que no hay conexin hasta que no aparece
por /var/log/messages lo de Local IP Address xxx.xxx.xxx.xxx y Remote IP Address
yyy.yyy.yyy.yyy (o el bloque ppp0 al escribir ifconfig. Esto viene al caso de que a
veces la autentificacin inicial falla, por ejemplo porque haya cado el proveedor o
est saturado.En esos casos Infovia Plus no corta la conexin y puede parecer que el
mdem est conectado a internet cuando en realidad ni siquiera ha llegado a contactar
con el proveedor.En ese caso habra que revisar las claves de acceso que se hubiesen
introducido en pap-secrets o chap-secrets o intentarlo ms tarde. En caso de aparecer
Local IP Address... y Remote IP Address... en /var/log/messages ,pero no conseguir
conectar a ningn sitio habra que revisar en primer lugar /etc/resolv.conf y ver si las
direcciones all introducidas son correctas. Una forma de averiguar si es culpa de los
DNS es probar a conectar usando una direccin numrica. Por ejemplo se puede
probar con la direccin 130.206.1.2 que corresponde a www.rediris.es .Si conecta, es
un problema en /etc/resolv.conf (o del DNS de tu proveedor).Si se descarta el DNS,
comprueba que tienes la opcin 'defaultroute' en /etc/ppp/options. En caso afirmativo,
comprueba /var/log/messages y mira si aparece algn mensaje tipo " ppp not replacing
existing default route to ...". Este ltimo caso es tpico si se tiene alguna tarjeta de
red y has definido alguna direccin de gateway.Lo normal es eliminar dicho gateway.
Averigua como introduciste el gateway y elimnalo. Una forma de eliminarlo sera por
ejemplo con '''linuxconf''', que viene con Red-Hat.
Qu significa eso de

Pgina 242 de 384

Linux

Es un mensaje que aparece en /var/log/messages tpico de Infovia Plus y debido a un


protocolo de red llamado IPX.No debe suponer ningn problema para la conexin, pero
si resultara molesto se podra aadir la opcin noipx a ##/etc/ppp/options.
Mi mdem no cuelga, qu hago?
Asegrate de que tienes (si usas pppd) la opcion mdem en /etc/ppp/options. En
caso de que la tuvieras, comprueba que has puesto una cadena de inicializacin
al mdem en el script de marcado (por ejemplo at& f, atz...). En caso de que as
siguiese sin colgar, tendrs que echar mano del manual del mdem y buscar el
comando "que haga que el mdem cuelgue (o se resetee) cuando cambie la lnea
DTR". Normalmente es & Dx donde 'x' es un nmero(que es lo que debers buscar
en el manual del mdem;si prefieres prueba-y-error 'x' normalmente estar entre 0 y
4). Luego debers editar el script de marcado del mdem y colocar dicho "& Dx" entre
el "AT" y el "DTnumero_de_telefono". Al usar el caracter '&', no olvides poner todo el
conjunto (desde el AT hasta el final del nmero de telfono) entre comillas dobles (p.e.:
"AT& D3DT055").
Internet me va mucho ms lento con Linux que con Windows.
Esto puede deberse a muchas causas: debers verificar la configuracin del mdem
y del puerto serie. Sigue la descripcin que se da en la seccin correspondiente
de la FAQ. Comprueba que la velocidad que has puesto en /etc/ppp/options '''NO'''
es la velocidad del mdem (nada de 28800, 33600 o lo que sea, no es eso lo que
debes poner ah). Pon 115200 o 57600, preferiblemente la primera. Si tienes una
UART 16450 u 8250 pon 38400 y asegrate de NO poner el flag 'spd_hi' o 'spd_vhi'
con setserial (si has seguido las instrucciones de la FAQ desde el principio no hace
falta que compruebes esto). El tipo de UART que tienes lo podrs ver haciendo
##setserial /dev/ttySx ,donde 'x' es 0 para COM1, 1 para COM2, etc... Si sigue lento
o conectando mal, asegrate de poner una cadena de inicializacin al mdem ("at&
f", "atz") y que la opcin crtscts aparece en /etc/ppp/options. En caso de continuar los
problemas debers echar mano del manual del mdem y buscar las opciones que
"activen el control de flujo RTS/CTS". Suelen ser de la familia de las que empiezan por
'&'. En algunos modems es una sola orden (por ejemplo "& K3") y en otros hay que
activar el RTS y el CTS separadamente. Colocar el o los comandos entre el "AT" y el
"DTnumero_de_telefono". Si usas el carcter '&', asegrate de poner todo el conjunto
(desde el AT hasta el final del nmero de telfono) entre comillas dobles (p.e. "AT&
K3DT055").
Tengo ms de un proveedor de internet,qu hago para poder elegir por cul me
conecto?
Una posible forma sera eliminar de ##/etc/ppp/options la opcin name ##
mi_login@mi_proveedor. De esta forma, si hemos puesto en pap-secrets o chap-

Plataforma de Teleformacin de IFES

Pgina 243 de 384

secrets, el login y el password de todos nuestros proveedores, bastara con escribir


##pppd name login@proveedor para elegir a cul nos queremos conectar. Esto
funciona si todos los proveedores comparten el mismo nmero de telfono (por
ejemplo, si todos estn en infova plus). En caso de tener diferentes nmeros de
telfono, habra que eliminar en connect "/usr/sbin/chat -v -f /etc/ppp/marcado" de /etc/
ppp/options , crearse un fichero de marcado particular para cada proveedor y crearse
un fichero para cada proveedor en /etc/ppp con las dos opciones personalizadas que
le correspondan. O sea: ##/etc/ppp/nombre_del_proveedor: ##connect "/usr/sbin/chat v -f /etc/ppp/marcado_proveedor" name login@proveedor Y ejecutar pppd as: ##/usr/
sbin/pppd file /etc/ppp/nombre_del_proveedor . Las DNS de todos los proveedores
se podran poner en /etc/resolv.conf , aadiendo nuevas lneas ##"nameserver
xxx.xxx.xxx.xxx". Es conveniente ordenar los nameservers poniendo primero todos los
DNS primarios de todos los proveedores y despus los DNS secundarios. Tambin
conviene poner en primer lugar los correspondientes a los proveedores ms usados.
Slo puedo usar internet como root , qu hago para poder hacerlo como
usuario?
Hay dos formas de hacerlo. La forma "buena", sera usando el programa sudo el cual
permite ejecutar como usuario algunos programas que slo podran funcionar como
root. Esto supondra que cada vez que uno quisiera conectarse a internet debera
introducir un password, lo cual es til en caso de que otros tuvieran acceso a nuestro
ordenador. Para lo configuracin de sudo consultar "man sudo". La forma "mala", y
digo mala porque es ms insegura en caso de que otros tengan acceso a nuestra
mquina, consistira en poner pppd "suid root" lo cual posibilita que un usuario normal
tuviera acceso al programa de una forma similar que root. Para esto ltimo, habra
que empezar por localizar pppd. Suele estar en el directorio /usr/sbin. Luego hara
falta echar un vistazo para ver qu permisos tiene. Esto se hace con la orden ls -l
pppd y debe arrojar algo parecido a esto: ##-rws--x--x 1 root ppp 70336 May 18 1996
pppd Lo que se persigue es que la tercera letra sea una 's', como en el ejemplo. Si el
programa no est "suid root", la tercera letra ser una 'x'. Entonces en este caso habra
que hacer ##chmod 4711 pppd para conseguirlo. Los scripts de /etc/ppp necesitaran
tambin acceso libre para los usuarios as que habra que hacer: ##chmod 755 /etc/
ppp ##chmod a+r /etc/ppp/*. El efecto secundario que esto tiene es que cualquier
usuario del sistema puede leer las claves de acceso a nuestro proveedor de internet.
Existe la posibilidad de limitar la conexin a internet (y a los scripts de conexin y
claves de acceso), leer la seccin "Cmo se cambian los permisos de ficheros y
directorios?" NOTA: An as, es posible que no seamos capaces de conectar con
internet como usuario normal. Una posible causa de fallo sera intentar conectar a
internet escribiendo pppd en vez de /usr/sbin/pppd. Para root funciona la primera, pero
para el resto de usuarios no. El motivo es que el PATH (el conjunto de directorios en los
que Linux busca un ejecutable) es diferente para root que para los usuarios normales.

Pgina 244 de 384

Linux

Los usuarios normales no tienen /usr/sbin dentro del PATH as que debern hacer /
usr/sbin/pppd para conectarse a internet o hacer un enlace simblico a /usr/sbin/pppd
desde otro directorio que s est en el PATH de usuario (como por ejemplo /usr/bin), o
hacernos un script (pequeo programa) que se limite a ejecutar /usr/sbin/pppd. Para el
enlace simblico bastara hacer: ##ln -s /usr/sbin/pppd /usr/bin/pppd

Comandos bsicos
Pero hay que saber comandos?
La respuesta a esta pregunta es sencilla: todo depende de cmo vayas a utilizar el
sistema, de las ganas de aprender que tengas y de lo que quieras profundizar en el
sistema. Hay que diferenciar entre tareas de administracin y uso habitual del sistema.
Si vas a realizar tareas de administracin del sistema, deberas saber, o mejor dicho,
tendrs que aprender una serie de comandos para realizar estas tareas. Si vas a
utilizar el sistema a nivel usuario, no necesitars saber ningn comando, solamente
tendrs que aprender a utilizar los programas que uses. Lo que ocurre habitualmente
es que el usuario de la mquina y el administrador son la misma persona, con lo cual
tendrn que saber una serie de comandos mnimos. Como ancdota, os puedo contar
que en el lugar donde trabajo, hay usuarios que utilizan Linux y no tienen ni idea de
administracin del sistema (y no slo en linux), no saben comandos y tampoco los
necesitan. Trabajan en modo grfico, saben utilizar los programas que necesitan y
tienen a alguien (yo en este caso) que se hace cargo de las tareas de administracin/
configuracin del sistema.
Esto no lo puedo hacer en modo grfico?
Como regla general, se podra decir lo siguiente: "Todo lo que se puede hacer en modo
grfico, se puede hacer tambin en modo texto, a base de comandos. Pero no todo
lo que se puede hacer en modo texto, se puede hacer en modo grfico". Cada da
aparecen ms y ms programas, que permiten hacer hacer en modo grfico, a golpe
de ratn y ventanas, lo que se hace en modo texto a base de comandos. Es ms, lo
nico que estos programas hacen, es crear una versin grfica que hace uso de los
comandos que se utilizan en modo texto. Entornos grficos como Gnome y Kde, vienen
con una serie de programas grficos que hacen esto. Para terminar esta seccin, slo
decir a aquellos que quieran profundizar en el sistema, que hasta el momento, ningun
programa grfico, supera en versatilidad y potencia, a una consola de texto donde
ejecutar comandos directamente.
Combinaciones especiales de teclas
# [Ctrl]+[Alt]+[Del]: Shutdown. Apaga el sistema de forma organizada desde
una terminal texto. # [Ctrl]+[Alt]+[F1]: Cambia a la primera terminal de texto. #
[Ctrl]+[Alt]+[Fn]: Cambia a la terminal de texto numero n (n=1,...,6). # [Ctrl]+[Alt]+[F7]:

Plataforma de Teleformacin de IFES

Pgina 245 de 384

Cambia a la primera terminal X (si se est usando alguna) NOTA:Si estamos en Xwindows y por alguna razn nuestro entorno grfico dejase de funcionar, siempre
podramos entrar en una terminal texto con [Ctrl]+[Alt]+[Fn], terminar los procesos que
estn dando problemas y volver a las X con [Ctrl]+[Alt]+[F7]. # [Ctrl]+[Alt]+[Fn]: Cambia
a la terminal X numero n (n=7,...,11) # [Tab]: Autocompleta el nombre de un comando,
fichero, directorio, programa, cuando trabajamos en una terminal texto. P.ej: Si vamos
a usar el programa "programa_de_prueba", podemos escribir progr y pulsar [Tab], el
sistema se encargar de rellenar el resto. # [ArrowUp]: (Flecha arriba). Va editando
la historia de comandos que hemos escrito anteriormente en terminal texto. [Enter]
para ejecutar. # [Shift][PgUp]: Scroll la salida de la terminal hacia arriba, en terminal
texto. # [Shift][PgDown: Scroll la salida de la terminal hacia abajo, en terminal texto. #
[Ctrl]+c: Termina el proceso actual. Cuando lo comenzamos sin & ([localhost]$ proceso)
# [Ctrl]+d: Termina la terminal actual. # [Ctrl]+s: Para la transferencia a la terminal. #
[Ctrl]+z: Manda el proceso actual (comenzado sin &) a "Background". Lo mismo que si
comenzamos el proceso con & ([localhost]$ proceso &).
Lista de comandos ms usados
Todos los comandos citados en este apartado, pueden usarse con multitud de
opciones. Para conseguir informacin detallada de cada comando utilizar " man
comando". A continuacin tenis la manera ms sencilla de utilizacin.Informacin
del sistema *##hostname , devuelve el nombre de la mquina. *## uptime ,devuelve
la cantidad de tiempo trascurrido desde la ltima vez que se arranc el sistema, la
cantidad de usuarios trabajando en el sistema y el load average (carga del sistema).
*## uname -a ,informacin sobre el sistema operativo de la mquina. *## dmesg|
more , imprime el "ring buffer" del kernel. *## free -tm , informacin sobre la cantidad
de memoria disponible y usada. *## df -h ,informacin sobre todo los dispositivos
montados en la mquina. *## du -bh /|more ,informacin sobre el espacio ocupado por
cada subdirectorio, comenzando en el directorio raz /. *## ps , informacin sobre los
procesos del actual usuario, que se estn ejecutando. *## ps axu , informacin sobre
todos los procesos que se estn ejecutando en la mquina. *## top , informacin sobre
el uso de cpu y memoria de los procesos del sistema. *## cat /proc/cpuinfo ,informacin
sobre el microprocesador. *## cat /proc/interrupts , informacin sobre las interrupciones
en uso. *## cat /proc/dma , informacin sobre dma en uso. *## cat /proc/filesystems ,
informacin sobre los sistemas de archivos que se pueden utilizar (compilados en el
kernel). *## /sbin/lsmod , informacin sobre los mdulos en uso. *## finger usuario ,
informacin sobre el usuario usuario. *## who , informacin sobre los usuarios usando
el sistema. *## id usuario , informacin sobre UID, GID y GROUPS del usuario
usuario *## last ,informacin sobre los ltimos usuarios que han usado el sistema.
*##set|more , informacin sobre el entorno de usuario actual. *## ping mquina ,
para comprobar si tenemos contacto con la maquina maquina (maquina: nombre
o IP) *## /sbin/route ,tabla de enrutamiento de nuestro sistema. *## /sbin/ifconfig ,

Pgina 246 de 384

Linux

informacin sobre los distintos dispositivos de red ##* netstat , informacin valiosa
sobre la conexin de red (Este comando tiene muchas posibilidades, ejecutar man
netstat Administracin *## su , te conviertes en administrador(root) despus de
introducir la clave de acceso. Ideal para realizar alguna tarea de administracin sin
necesidad de salir del sistema y entrar de nuevo como root. * ##/usr/sbin/adduser
usuario , registra y crea una cuenta de usuario. *##/usr/sbin/userdel usuario , borra
la cuenta de usuario usuario. * passwd: Cambia la clave de acceso para el usuario
actual. Root puede cambiar la clave de cualquier usuario passwd usuario * ##/usr/
sbin/groupadd grupo , crea un nuevo grupo. * ##/usr/sbin/groupdel grupo , borra un
grupo. *## more /etc/passwd, muestra el fichero de claves del sistema. (Si no se
usa shadow password) *## more /etc/group , muestra los grupos registrados en el
sistema. *## chmod permisos fichero/directorio , cambia los permisos de ficheros/
directorios *## cp fichero1 fichero2 ,copia fichero1 como fichero2 *## rm fichero ,borra
fichero *## rm -R directorio ,borra el contenido completo (ficheros/subdirectorios)
de directorio *## mv fichero1 fichero2 , cambia el nombre de fichero1 a fichero2 *##
mkdir directorio ,crea un subdirectorio *## rmdir directorio ,borra un subdirectorio *##
shutdown -t3 -r now ,reinizializa el sistema (hay que hacerlo como root). *##shutdown t3 -h now ,apaga el sistema (hay que hacerlo como root).

Plataforma de Teleformacin de IFES

Pgina 247 de 384

Linux

Apndices (Conceptos bsicos)


Qu es un sistema operativo?
Un sistema operativo es un programa (o conjunto de programas) de control que
tiene por objeto facilitar el uso de la computadora y conseguir que sta se utilice
eficientemente. Se encarga de gestionar y asignar los recursos hardware que requieren
los programas.
El sistema operativo es el programa principal de nuestro computador: sin l no
funcionara ningn otro y todos los dems programas se ejecutan sobre l, siendo el
S.O. quien los administra y gestiona.
El objetivo fundamental de los sistemas operativos es, por lo tanto, gestionar y
administrar eficientemente los recursos hardware, permitiendo que se ejecuten
concurrentemente varios programas, sin que haya conflictos en el acceso de cada
uno de ellos a cada uno de los recursos que necesite, y sin que ningn programa
monopolice alguno de ellos. Los recursos hardware son: el procesador (CPU), la
memoria principal, los discos y otros perifricos.
Pensemos en un sistema multiusuario, esto es, un ordenador utilizado desde diversos
terminales por varios usuarios (por ejemplo, el ordenador de un banco que gestiona las
cuentas de los clientes o el ordenador que gestiona la reserva de los billetes de una
lnea area). Obviamente, si varios usuarios estn utilizando la misma computadora,
debe haber alguien o algo que asigne los recursos y evite los conflictos que puedan
surgir cuando dos programas requieran los mismos elementos (la misma unidad de
disco, o la impresora, por ejemplo). Esta es una de las funciones del sistema operativo.
Adems de esta funcin de asignar los recursos a cada programa, el sistema operativo
se encarga de contabilizar stos, y de la seguridad (que un usuario no pueda acceder
sin autorizacin a la informacin de otro, por ejemplo).
Del mismo modo, es normal que un ordenador ejecute varios programas
simultneamente. Pueden darse conflictos cuando dos aplicaciones quieran modificar
el mismo fichero. Es funcin del sistema operativo controlar estas situaciones para que
no se produzcan daos o prdidas de informacin, como por ejemplo podra ocurrir si
dos agencias de viaje intentan vender el mismo billete simultneamente.

Pgina 248 de 384

Linux

El sistema operativo facilita el uso de la computadora. Para ello crea un sistema de


capasque evita al usuario y a las aplicaciones de mayor nivel tener que estar pendiente
de las operaciones de menor nivel. Por ejemplo, cada dispositivo de E/S (entrada/
salida, como el teclado, la pantalla, la impresora, etc.), para ser utilizado, requiere
varias instrucciones mquina que establezcan un dialogo entre las unidades centrales
y el perifrico, enviando o captando el dato de salida o de entrada, respectivamente.
Estas instrucciones dependen considerablemente de las caractersticas concretas
del perifrico. Si se trata, por ejemplo, de una unidad de disco, hay que considerar
el ancho de los buses, el tamao de su memoria intermedia, el arranque (y parada)
de los motores de la unidad, el cdigo identificador de la posicin a donde hay que
acceder, etc. Por otra parte, un dispositivo dado, estas instrucciones u operaciones
son comunes para grabar o leer cual tipo de informacin (programas o datos), sea
cual sea su naturaleza. El sistema operativo, con objetivo de facilitar el trabajo de los
programadores, contiene mdulos de gestin de entradas / salidas que evitan a los
usuarios tener que incluir esas instrucciones cada vez que hacen una operacin de
entrada o salida. Se puede decir que esos programas del sistema operativo hacen
transparente al usuario las caractersticas hardware concretas de los dispositivos.
El sistema operativo tambin hace que la computadora se utilice eficientemente.
Para poner de manifiesto cmo el sistema operativo puede incrementar la eficiencia
consideremos otro sencillo ejemplo. Los programas tradicionalmente se ejecutan
secuencialmente; es decir, hasta que no concluye la ejecucin de una instruccin no
se ejecuta la siguiente. Supongamos que dentro de un programa hay una instruccin
que implica la escritura de una pgina en una impresora lser. Hasta que no acabe de
imprimirse dicha pgina el programa no puede continuar ejecutndose. Sin embargo,
el sistema operativo puede recoger la orden de impresin, almacenarla en memoria y
encargrsela a una rutina de impresin, dejando el programa que haba efectuado la
llamada original a la impresora liberado para poder seguir trabajando.
En resumen, el sistema operativo efecta, entre otras, las siguientes funciones:

Facilita el uso de la computadora, en general, la comunicacin


computadora / usuario
Gestiona y asigna recursos hardware (procesador, memoria y perifricos) a
los distintos programas o tareas
Gestiona y mantiene los archivos en dispositivos de memoria masiva
Apoya a otros programas
Protege los datos y los programas, cuestin especialmente compleja en
sistemas multiusuario
Identifica y autentifica a los usuarios que hacen uso de la computadora.
Contabiliza la utilizacin de los recursos realizada por los distintos usuarios

Plataforma de Teleformacin de IFES

Pgina 249 de 384

Qu es el software libre?
Adaptado de:
http://www.sindominio.net/pipermail/hacklabs/2003-May/000212.html
, un documento de
mailto: meskalito-at-sindominio.net

Qu es el software?
Empecemos con la definicin de Software: son los componentes no fsicos(programas)
que un ordenador --o un aparato con capacidades de computacin-- necesita para
funcionar.
Lamentablemente, el castellano no ha adoptado una palabra propia para definir este
concepto y nos vemos obligado a usar este anglicismo. Durante una poca, en los
albores del ordenador personal en la dcada de los 80, se propuso el trmino logical,
pero no lleg a prosperar su uso.
El software, por el tipo de licencia, se divide en dos grupos principales: Software Libre
y Software Propietario.

El software propietario
Este software se define como aquel cuya licencia restringe drsticamente su uso.
Puede ser creado por desarrolladores para el uso en una nica empresa, como es el
caso de numerosas aplicaciones verticales, aunque en este caso la empresa cliente
suele retener la propiedad completa del software, o por pequeas empresas, que lo
venden bajo numerosos tipos de licencias, algunas de ellas gratuitas (pero no libres).
Sin embargo, cuando nos referimos a este tipo de software, estamos pensando en el
que es producido principalmente por grandes empresas. La ms conocida de ellas
probablemente sea Microsoft, pero existen otras: Oracle, Adobe,...
En este caso, cuando pagas por un programa, no pagas por el cdrom, el programa o
su cdigo, solamente pagas por su licencia, que es la autorizacin de su uso, con las
condiciones que ponga la empresa propietaria de dicho software.
En general, las condiciones que tiene la licencia del software propietario son stas,
aunque la empresa propietaria del mismo suele poner las que le interesa:

Pgina 250 de 384

Linux

No se puede averiguar el cdigo fuente del programa; no se puede usar ms que en


una sola mquina; no se puede copiar ni prestar a un amigo (para que lo copie ni para
que lo use, aunque nosotros no lo estemos usando); no se puede ceder, no se puede
alquilar.
Esto hace que, por ejemplo, haya que pagar 2 veces por el mismo programa si se
instala en 2 puestos de trabajo, aunque sean usados por la misma persona (en casa y
en la oficina).
Adems de no poder aprender sobre el software viendo el cdigo, ni adaptarlo a
nuestras posibilidades sin incurrir en delito.
Algunas de estas empresas utilizan en ocasiones procedimientos comerciales que
intentan monopolizar el mercado, causando el mayor nmero de incompatibilidades
posibles para evitar que se use otro software que no sea el de su empresa y tener que
estar pagando para actualizar cada poco tiempo los programas.

El software libre
Este software ha sido desarrollado principalmente por una comunidad de usuarios,
para ponerlo al servicio de la sociedad. Hay excepciones, en que una empresa
comercial, por algn motivo, desarrolla un software abierto y lo pone a disposicin de la
comunidad de usuarios.
Para que un software sea libre, ha de cumplir los siguientes requisitos:
Libertad de uso: se puede usar de la manera que se quiera, por quien quiera, en
el nmero de ordenadores que se quiera.
Libertad de cdigo: la cual permite ver el cdigo, estudiarlo, usarlo, copiarlo,
mejorarlo, adaptarlo a nuestras necesidades y ponerlo a disposicin de la
comunidad. El cdigo fuente de un programa libre, debe estar a la disposicin de
quien lo quiera.
Libertad de distribucin: se puede copiar, regalar o vender, cmo y a quien se
quiera. Sin dar explicaciones a los autores.
Una lista de las licencias ms frecuentes de cdigo abierto est disponible en la pgina
web de la Open Source Iniciatives:
http://www.opensource.org/licenses/index.php
. Quizs el mximo exponente del software libre son las distribuciones GNU/Linux, ms
conocidas globalmente como Linux.

Plataforma de Teleformacin de IFES

Pgina 251 de 384

Por qu usar software libre?


Adaptado de
http://www.sindominio.net/pipermail/hacklabs/2003-May/000212.html
, un documento de
mailto: meskalito-at-sindominio.net

Por economa
Usando software propietario, por cada ordenador, hay que tener una licencia de cada
programa que se use. Por poner un ejemplo, el sistema operativo que es lo mas bsico
para que funcione el ordenador, la versin que se comercializa actualmente para uso
domstico es el WindowsXP homey su licencia suele superar los 120 Euros, pero para
poder hacer algo ms que encender el ordenador necesitamos programas de ofimtica
como la suite de Microsoft Office XPy algunos programas de audio, publicacin y
retoque fotogrfico, por ejemplo.
El precio del software de cada terminal de trabajo puede superar ampliamente los 600
euros pudiendo invertir este dinero en la compra de nuevos equipos o perifricos que
se necesiten si usamos software libre.
Una distribucin de Linux, que se puede conseguir de forma gratuita, aunque
puede costar desde los 20 a los 80 euros, donde se suelen incluir, algn manual,
adems de soporte tcnico y el cdigo fuente del programa para su estudio o
modificacin, un paquete de programas, entre los que hay software de oficina,
editores grficos,herramientas para la administracin de redes, servidores de
pginas web,correo electrnico, edicin de publicaciones... Un paquete de software
que difcilmente podra pagar una persona normal... y pocas empresas con un parque
de ordenadores.

Por su filosofa
Porque el software libre, ha sido y es creado por miles de personas que cooperan
desde todas las partes de la geografa mundial coordinndose mediante Internet,
de forma descentralizada adems de desinteresada en su mayora, aportan su
conocimiento, su trabajo y su tiempo, para la creacin de este software, que ha sido
propuesto a la Unesco a formar parte del patrimonio de la Humanidad.

Pgina 252 de 384

Linux

El Software Libre es la prueba de que las cosas pueden funcionar de muchas formas
diferentes a como funcionan actualmente.
Ensea los valores de la cooperacin por encima de la competicin, el de la libertad
frente a la restriccin, compartir frente a retener, la difusin del conocimiento frente al
oscurantismo y a valorar a las personas por su forma de ser y no por su apariencia,
gnero o raza, ya que en la red desaparecen estas caractersticas.

Por favorecer el desarrollo tecnolgico


La poltica de desarrollo del software libre, tiene el mismo modelo que (hasta hace
poco) la comunidad cientfica, que ha funcionado tan bien a la Humanidad. Cada
descubrimiento, se pone inmediatamente en conocimiento del resto de la comunidad, lo
que permite una rpida evolucin.
Mientras que el software propietario, lejos de potenciarlo, lo frena poniendo
impedimentos para que otras compaas no puedan mejorarlo.

Por seguridad
El software libre basa su robustez y su seguridad en su transparencia. Miles de
miembros de la comunidad del software libre, participa activamente en la bsqueda
de fallos de seguridad, que son rpidamente reportados, siendo los mismos que
encuentran los fallos muchas veces los que reportan la solucin, o los mismos
desarrolladores, en poco tiempo.
Mientras que el software propietario, basa su seguridad en el oscurantismo, esto
es, no dar a conocer los fallos de seguridad del software, para que no puedan ser
aprovechados por supuestos atacantes.
Esto no hace ms que dar una ficticia seguridad a sus usuarios, que ven como da a
da, se ven afectados por una gran cantidad de virus, gusanos e intrusos informticos.

Plataforma de Teleformacin de IFES

Pgina 253 de 384

Licencias de software libre

Introduccin a las licencias de software libre


Jorge Nonius.
v. 0.92, 16 de abril de 2002

Resumen
Este artculo introduce a los usuarios de Debian GNU, con poco o ningn conocimiento
jurdico, en el Derecho espaol sobre propiedad intelectual y su efecto en las licencias
de software libre. Continua la serie dedicada a la propiedad intelectual que se inici
con la "Introduccin a la propiedad intelectual" publicada tambin en La Espiral. Se
completa con tres apndices en el apartado 7.
El artculo se centra en el Derecho espaol, pero las normas sobre propiedad
intelectual de programas de ordenador son prcticamente idnticas en todos los
Estados miembros de la Unin Europea.
El punto de vista adoptado no es siempre el del autor o fabricante de software, sino
que ms bien se les trata de igual a igual con los usuarios, consumidores y dems
personas con derechos y libertades implicados en la creacin, explotacin y utilizacin
del software.
2001, Jorge Nonius. La versin ms actualizada se encuentra disponible en http://
www.laespiral.org/xml/. Para ponerse en contacto con el autor: jnonius@terra.es. Este
artculo puede ser copiado y distribuido en las condiciones de la licencia GNU para
documentacin libre, GFDL (http://www.gnu.org/copyleft/fdl.html).
[Nota de La Espiral: El autor, que firma con seudnimo, es usuario de Debian GNU y
Licenciado en Derecho.]

Pgina 254 de 384

Linux

Los derechos del autor del software


Este artculo continua la serie dedicada a la propiedad intelectual que se inici con la
"Introduccin a la propiedad intelectual" publicada en La Espiral, pero, a diferencia de
all, aqu no se trata slo de los derechos de autor, sino tambin de los derechos de los
consumidores y usuarios, de ciertas libertades pblicas, y en suma de un abigarrado
conjunto de situaciones jurdicas que aparecen en los conflictos, tericos o prcticos,
acerca de las licencias de software libre. Utilizaremos siempre el trmino "libertad" en
su acepcin tcnica estricta: Libertad es la situacin jurdica en que se encuentra uno
cuando no le alcanza una prohibicin. Las prohibiciones, que adoptan muchas formas
y muchas ms denominaciones (deberes, obligaciones, cargas, sujeciones) provienen
de muchas fuentes: directamente de la ley, por medio de un contrato, de una demanda
judicial o de una sentencia, etc. De estas prohibiciones trata este primer apartado.
En el segundo apartado trataremos las libertades y restricciones a los usuarios
implicadas en una licencia de software, y en especial en una de software libre. Pero
antes daremos un repaso rpido a la contrapartida de las libertades de los usuarios: los
derechos del autor del software, reconocidos y garantizados por la LPI.
Vamos a explicar cules y cmo son los derechos del autor del programa. Por ahora
trataremos al software como una obra intelectual ms, sin fijarnos demasiado en
aquello que lo caracteriza y distingue de, por ejemplo, una novela o una cancin.
Despus de tratar algunas cuestiones generales (1.1), definiremos quin es el titular
de los derechos de autor de un programa (1.2), sobre qu objetos recaen y sus tipos
(1.3), qu es y qu implica la divulgacin y la publicacin del software (1.4), cul es
el multiforme contenido del derecho de autor y sus lmites (1.5), su duracin (1.6), las
formas de explotacin y cesin de derechos (1.7) y finalmente las garantas legales de
todo esto (1.8).
El lector que conozca los fundamentos jurdicos de la propiedad intelectual puede
saltarse este apartado 1 y pasar directamente al 2.

Cuestiones generales sobre el software como


obra protegida
La LPI slo protege los programas originales generados por el intelecto. sta es la
definicin legal de programa protegible. Un programa no expresado (p. ej. una idea)
no es un programa, ni tampoco lo es un programa no original, aunque veremos que
se reconocen ciertos grados de originalidad en la LPI, por ejemplo para los programas

Plataforma de Teleformacin de IFES

Pgina 255 de 384

derivados. No estn protegidos pues los programas no originales y en cierto modo


tampoco los que se encuentren en dominio pblico, que son aquellos para los que
ha transcurrido el plazo de duracin. Tampoco estn protegidos los programas que,
aunque originales, estn destinados a producir fallos en el funcionamiento del sistema
(virus, etc). Estas exclusiones se irn detallando en su lugar ms adelante, pues deben
ser analizadas con cuidado. [P. ej.: La divulgacin de programas inditos que estn en
dominio pblico genera derechos de propiedad intelectual a favor del divulgador].

El software no es patentable. Excepciones


La propiedad intelectual de los programas se reconoce y regula en la LPI ya que el
software es oficialmente considerado "obra generada por el intelecto" . Por contra, el
software no tiene consideracin oficial o legal de objeto patentable, pues en derecho
espaol slo son patentables las invenciones nuevas de aplicacin industrial. Resulta
que los programas de ordenador no se consideran invenciones (?), en un juicio ms
formal que de fondo, y por lo tanto no pueden patentarse.
Dicho de otro modo, un programa no puede ser objeto de propiedad industrial, que
es el conjunto de derechos de los inventores sobre sus inventos y de las empresas
sobre sus marcas y rtulos comerciales, o de los ingenieros sobre topografa de
semiconductores, etc. Es una propiedad "incorporal" o "inmaterial" , lo mismo que la
propiedad intelectual, pero se regula no en la LPI sino en la LP y LM, conforme a reglas
y mecanismos diferentes.
No obstante, un programa protegido por la LPI puede ser tambin objeto de
proteccin por la LP si forma parte de un invento patentado. En ese caso, ambas
vas de proteccin de derechos, la garantizada por LPI y la que garantiza la LP, son
independientes, compatibles y acumulables. Vase en el Apndice B la referencia de
las leyes citadas.

Es el software equivalente a una obra literaria?


No es realmente necesario etiquetar a los programas de ordenador como obras
literarias, artsticas o cientficas. Puede leerse en tratados internacionales y normas
de la Unin Europea que los programas de ordenador han de quedar protegidos
como "obras literarias" , por alguna extraa razn; tal vez porque, como no son obras
cientficas (?) ni artsticas (??), en algn cajn hay que meterlos (???). Al fin y al
cabo, el programa fuente viene expresado en lenguaje humano, aunque sea tan
poco literario como C++. Este asunto es demasiado general, y no hace falta tratarlo
aqu. Mejor veamos qu proteccin dispensa la LPI a los programas de ordenador,

Pgina 256 de 384

Linux

comparmosla con la dispensada a las obras literarias, y concluyamos sobre las


diferencias encontradas.
Adelantemos que hay diferencias, y muy notables. Probablemente a causa de que los
programas no son en absoluto equivalentes a las obras literarias.

Los titulares de los derechos de propiedad


intelectual sobre un programa
Menores de edad y asalariados
Los autores de programas que sean menores de edad son por supuesto considerados
titulares nicos de sus derechos, igual que los mayores de edad. Pero slo los menores
de 18 aos y mayores de 16 independientes -de acuerdo con sus padres o tutorespueden ceder sus derechos de explotacin del programa sin la autorizacin de quien
les tenga a su cargo.
Si un asalariado crea un programa original durante y con motivo de su relacin
laboral con un empresario, se entiende que cede a ste en exclusiva sus derechos de
explotacin sobre el programa, salvo pacto en contra. Pero el empresario no puede
disponer del software con fines distintos de los de su actividad empresarial habitual.
Ms adelante volveremos sobre este delicado asunto.

Programas colectivos y en colaboracin


La LPI nunca considera "autoras" de las obras intelectuales a las personas jurdicas
(asociaciones, sociedades annimas, fundaciones), sino slo a las personas naturales
o fsicas, con una excepcin: los programas de ordenador! Tcnicamente hablando
hay otro caso en el que tambin se dice que una persona jurdica queda equiparada al
autor de la obra: las obras colectivas.
Obra colectiva es un concepto difcil de definir con precisin. Para la LPI, programa
de ordenador colectivo es el generado por iniciativa y coordinacin de una persona
(natural o jurdica), que lo edita y divulga bajo su nombre. El programa colectivo est
constituido por aportaciones de diferentes programadores, de las que resulta una
creacin nica y autnoma, sin atribucin de partes o cuotas a cada aportador, y sin
que uno solo de ellos pueda atribuirse derechos sobre el conjunto del programa.
Plataforma de Teleformacin de IFES

Pgina 257 de 384

Programa colectivo no es lo mismo que programa creado en colaboracin, que nace


del trabajo de varios coautores y permite la explotacin separada de cada aportacin.
Volveremos sobre esta distincin enseguida, apartado 1.3.

Titulares originarios y derivados


El autor es el titular originario de los derechos de propiedad intelectual sobre su
programa. Pero muchos de esos derechos, como veremos ms adelante, pueden
ser cedidos a otras personas, que no por ello pasan a ser autores obviamente, pero
s titulares de los derechos. Decimos en este caso que son titulares derivados, o
simplemente titulares. Al hablar de titular originario diremos simplemente "autor" .

Tipos de programas
Los programas pueden clasificarse segn varios criterios con arreglo a la LPI:
1.
2.
3.

Por la autonoma del programa tenemos programas independientes y


programas dependientes.
Por el nmero de autores y su forma de cooperar tenemos programas
individuales, programas en colaboracin y programas colectivos.
Por su originalidad tenemos programas estrictamente originales por un lado
y programas derivados y compuestos por otro.

Ahora nos interesa slo dar algunas definiciones. Llamamos programa independiente
al constituido como una "creacin autnoma" , aunque se publique conjuntamente con
otros programas. Se distingue del programa compuesto, formado por varios programas
independientes preexistentes.
Decimos que un programa es realizado en colaboracin si resulta unitariamente del
trabajo de varios desarrolladores, en el que es posible separar las aportaciones de
cada cual y de explotarlas independientemente. En este caso, los programadores
son co-autores, y pueden entre ellos pactar lo contrario y explotar por su cuenta cada
cual su parte. Si no hay acuerdo, el nico lmite a la explotacin separada consiste
en no perjudicar la explotacin comn. Para divulgar y modificar un programa en
colaboracin hace falta el consentimiento de todos los coautores, que slo el juez
puede excusar. Los derechos de autor pertenecen a cada coautor en la proporcin que
entre ellos pacten; en otro caso, se aplican las reglas generales del Cdigo Civil sobre
la comunidad de bienes.
Programa derivado es el que se ha obtenido de un modo u otro de software anterior, p.
ej. traducindolo, adaptndolo, modificndolo o revisndolo. En general debe hablarse
Pgina 258 de 384

Linux

de programa derivado ante cualquier transformacin de un programa preexistente. Pero


cuidado: La LPI protege los derechos de los dos autores: el del programa primitivo y el
del derivado.
Un programa se dice "compuesto" si se ha obtenido de la incorporacin de uno o ms
programas preexistentes y sin la colaboracin de los autores originarios. Se considera
obra protegida siempre que haya autorizacin de los titulares de los programas
originarios y se respeten sus derechos sobre ellos. Es decir: el autor del programa
compuesto tiene derechos slo sobre la composicin, no sobre el software que la
compone. La distribucin Debian GNU/Linux Potato, p. ej., es una obra compuesta,
compuesta de software. Debian slo tiene derechos sobre la composicin en s, no
sobre los programas independientes incluidos en la distribucin.
Un programa (obra intelectual) se distingue del soporte en que est contenido (bien
mueble, como puede ser un CD). El soporte del programa es el material en que se
plasma, no es lo mismo que el programa. [Advertencia probablemente superflua:
El significado de soporte al que nos referimos nada tiene que ver con el utilizado
constantemente en informtica de "servicio de apoyo" ]. Lo importante es que son
distintos e independientes los derechos sobre el programa (derechos inmateriales, de
propiedad intelectual) y los derechos sobre el CD (derechos materiales, de propiedad
comn). Al cederse los derechos de propiedad intelectual no necesariamente se ceden
los derechos sobre el soporte. Viceversa y ms importante: ser dueo del soporte no
significa ser titular de los derechos sobre el programa que incorpora.

Divulgacin y publicacin de un programa


Divulgar un programa es expresarlo de modo que se haga accesible al pblico por
primera vez en cualquier forma. La divulgacin es facultad exclusiva y personalsima
del autor, se dice incluso que es un "derecho moral" (vase ms adelante). Lo
importante de todo esto es la fecha de divulgacin, porque a partir de ella se cuenta el
plazo de duracin de los derechos de propiedad intelectual.
La publicacin del programa es una forma de divulgarlo, de las ms importantes
pero no la nica. Publicar un programa es expresarlo de modo que lo hace accesible
al pblico mediante ejemplares o copias. Verdaderamente es la forma principal de
divulgacin del software, por eso no trataremos otras, como la comunicacin pblica,
apenas concebible en el mbito de los programas de ordenador. No obstante, vase el
apartado 1.7.

Plataforma de Teleformacin de IFES

Pgina 259 de 384

Facultades del autor del programa y sus lmites


Los derechos del autor se manifiestan ante todo en dos grupos de facultades: 1
Los derechos morales, o facultades personalsimas que tiene sobre los programas
que ha creado; y 2 Los derechos patrimoniales, como la facultad exclusiva de
explotarlos en cualquier forma y obtener remuneracin por ello; o el derecho a obtener
remuneracin por el simple acceso a las fuentes; y el derecho a autorizar o prohibir su
uso, divulgacin y explotacin; etc.
El derecho moral es una figura que slo encontraremos en los derechos continentales,
no en las leyes anglosajonas, al menos con el mismo aspecto. No puede cederse en
vida, como parece deducirse del texto de la LPI. En realidad son varios los derechos
morales del autor:
1.
2.
3.
4.
5.

6.
7.

Decidir si su programa ha de divulgarse y en qu forma;


Decidir si el programa aparecer con su nombre, bajo seudnimo o
annimamente;
Exigir el reconocimiento de su condicin de autor del programa, y el
respeto a su integridad, sin deformaciones, modificaciones o atentados que
perjudiquen el inters o reputacin del autor;
A modificar el programa cuando le plazca, aunque ha de respetar los
derechos adquiridos por otras personas. Volveremos sobre esto al tratar de
las modificaciones de los programas;
A retirar su programa por cambio de convicciones (derecho de
arrepentimiento), indemnizando a quienes perjudique la retirada,
normalmente los usuarios y el explotador del programa. Esta facultad y las
dos siguientes no es probable que un programador las ejercite nunca;
A acceder al ejemplar nico o raro de su programa que se halle en poder de
otra persona, indemnizando los posibles perjuicios;
A publicar su programa en coleccin escogida o completa.

Para ms detalles sobre el derecho moral, vanse los artculos 14 a 16 LPI.


Los derechos patrimoniales son los que tienen relevancia econmica. Los trataremos
muy sintticamente en el apartado 1.7, dedicado a la explotacin del software.

Pgina 260 de 384

Linux

Duracin de los derechos. Programas en


dominio pblico
Los derechos de propiedad intelectual nacen con la simple creacin del programa, no
es preciso anunciarlo ni registrarlo. Pero, como en las dems propiedades intelectuales,
los derechos no duran indefinidamente; se disfrutan por un tiempo y despus se
extinguen; se dice entonces que el programa pasa al dominio pblico.
Esto es esencial, al menos en teora. Veamos: Una vez creado el programa, nacen
los derechos de propiedad intelectual sobre l, que duran toda la vida del autor y 70
aos tras su muerte, contados desde el 1 de enero del ao siguiente al de la muerte,
y despus se extinguen. Hay reglas especiales para los programas annimos y
seudnimos, los realizados en colaboracin y los programas colectivos, los programas
publicados por partes, que no detallaremos aqu (vense los artculos 26 y 30 LPI).
Sin embargo, el derecho moral dura toda la vida del autor, pero slo dos de sus
facultades duran despus indefinidamente sin lmite de tiempo: exigir el reconocimiento
de la autora y exigir la integridad del programa. El resto de las facultades se extinguen
con la muerte del autor, salvo la divulgacin del programa indito durante su vida, pero
ste es un caso muy extrao y tampoco lo trataremos.
Cuando los derechos de explotacin se extinguen por transcurso del plazo, el programa
pasa al dominio pblico, es decir, puede ser utilizado por cualquiera siempre que
respete la autora e integridad del software. Trataremos de nuevo el dominio pblico,
con ms fundamento, en el apartado 4.

Formas de explotacin del programa. Cesin de


derechos
Explotar un programa es difundirlo en cualquier forma con obtencin de beneficio.
Comprende todas las modalidades posibles de ganar utilidad con el programa, pero
las ms importantes son las formas de explotacin tipificadas por la LPI, que son las
habituales: fijacin o grabacin, reproduccin, transformacin y distribucin.
Los beneficiarios de la explotacin son en principio los autores, a quienes se llama
tambin titulares originarios de los derechos de propiedad intelectual sobre el
programa, pero es muy normal ceder la explotacin a empresarios especializados,
quienes pagan al autor por ello. A estos les llamamos titulares derivados.

Plataforma de Teleformacin de IFES

Pgina 261 de 384

No podemos ver aqu en detalle cunto hay detrs de las reglas sobre explotacin de
los programas, recomendamos al lector interesado que acuda a la "Introduccin a la
propiedad intelectual" publicada en La Espiral. Nos arreglaremos con una sinopsis:

Todo el que no sea titular ha de obtener autorizacin para explotar el


programa, salvo en casos tasados que veremos despus. Al titular
corresponde la facultad de explotar el software, con los medios presentes o
futuros, ya que los tipos legales (reproduccin, distribucin, transformacin)
slo son algunos de los posibles. Cualquier otra modalidad corresponde
siempre y en exclusiva al autor, mientras no la ceda a otra persona. Cada
modalidad de explotacin es adems independiente una de otra.
No hemos citado una modalidad de explotacin, la comunicacin pblica,
porque es dudoso que sea apta para el software, como s lo es para, por
ejemplo, una obra musical. Remitimos al lector al otro artculo de esta
serie para algunos detalles sobre esta jurdicamente compleja forma de
explotacin, de todos modos seguramente inaplicable a los programas, pues
no hay forma de acceder a ellas si no es mediante copia.
Las formas tpicas de explotacin son, repetimos, la fijacin, la reproduccin
u obtencin de copias, la modificacin y la distribucin. Nos ocuparn el
resto de este artculo, as que ahora no diremos mucho sobre ellas.

Pero lo dicho no es suficiente. A riesgo de resultar esquemticos en exceso, aunque


con la seguridad de no dejar cosas importantes sin atender, recapitulemos las
facultades del autor de un programa (se encuentran principalmente en el art. 99 LPI):
1.
2.

Derecho exclusivo de autorizar o prohibir la divulgacin del programa,


derecho al reconocimiento de la autora, y dems derechos llamados
morales. Los trataremos con un enfoque diferente en el apartado 4.2.
Derecho exclusivo de explotacin del programa. Aqu comienzan los
obstculos para las libertades de los usuarios que expondremos despus.
Algunos de ellos no slo igualan, sino exceden, las facultades de los autores
de los dems tipos de obras. Resulta que la explotacin de un programa de
ordenador se entiende que incluye:
1.
La reproduccin incluso para uso personal, o sea: la copia privada,
que por tanto est expresamente prohibida. Es ilcito copiar
programas sin autorizacin del autor, autorizacin normalmente
expresada en una licencia. La prohibicin de copia es muy
completa: Cuando la carga, presentacin, ejecucin, transmisin o
almacenamiento de un programa requiera copiarlo (reproducirlo),
debe disponerse de autorizacin del autor;
2.
La transformacin y su reproduccin. De todos modos, es muy difcil
transformar un programa si se carece del cdigo fuente, cdigo que el
autor no tiene en modo alguno obligacin legal de ceder a nadie;

Pgina 262 de 384

Linux

3.

3.

La distribucin pblica. Pero como incluso la reproduccin privada


est prohibida, como acabamos de ver, resulta que tambin est
prohibida o imposibilitada la distribucin privada, aunque la LPI no lo
diga expresamente.
Cuando se produce la cesin del derecho de uso, es decir cuando tenemos
a un usuario legtimo (despus definiremos este concepto), se entiende que
es una cesin no exclusiva -el autor del programa puede ceder el uso a ms
personas, o crear ms usuarios legtimos, dar ms licencias en suma-; se
entiende que la cesin es intransferible -el usuario no puede dar licencias a
su vez-; y la finalidad de la cesin es satisfacer las necesidades nicamente
del usuario y de nadie ms.

Este es el panorama con que se enfrentan las licencias de software libre, que vienen
a subvertir los trminos: No limitar al usuario, que explote el programa a su entero
placer, sin restricciones. Permite esto la LPI espaola? No se encontrar una licencia
de software libre, y especialmente las copyleft que son las ms interesantes desde
el punto de vista terico-jurdico, con el muro infranqueable de algn derecho del
autor que sea inviolable, ni siquiera contando con la propia voluntad del autor? A esto
tratan de responder los apartados siguientes. Pero antes, y para rematar el cuadro,
trataremos brevemente el sistema de garantas de los derechos de autor.

Garantas legales de los derechos del autor del


programa
Registro de programas
Ya sabemos que la autora se reconoce por la simple creacin del programa, no
es preciso inscribirlo en ningn Registro. Pero el hecho es que tener un programa
registrado refuerza muchsimo la prueba de la autora (art. 101 LPI). Los programas
no se patentan, no pueden patentarse, pero s pueden registrarse. Por cierto que el
software libre puede registrarse, precisamente como software libre, y esto no quita
nada a la licencia, que sigue siendo de software libre en sus trminos literales. El
Registro se limita a dar publicidad de su existencia y a dar fe de su validez. De hecho
es la misma licencia lo que se inscribe.
Pero todo esto es teora. Los programas se inscriben en la llamada Seccin VII del
Registro General de la Propiedad Intelectual, cuya organizacin y funciones bsicas se

Plataforma de Teleformacin de IFES

Pgina 263 de 384

exponen en la "Introduccin a la propiedad intelectual" . En realidad slo se inscribe en


l una descripcin del programa o la determinacin de los elementos que permiten su
completa identificacin, que se entiende contenida en las diez primeras y diez ltimas
hojas del cdigo fuente (?), o en un resumen de un mximo de 20 folios del manual
de uso (??), "siempre y cuando [dice el Reglamento del Registro] ste reproduzca los
elementos esenciales del programa" (???) (arts. 13 y 14.7 del Reglamento de 1993). Si
el programa es indito (o sea: si no se ha publicado) entonces debe adjuntarse todo el
cdigo fuente (????). Estas son las reglas. No se dispone de datos acerca del uso que
los programadores hacen del Registro, pero al parecer s lo usan.
Cmo da publicidad el Registro a los programas inscritos? Esto tampoco es lo que
parece: El Registro es ciertamente pblico, pero de un programa inscrito slo podemos
consultar los datos personales del autor y sus derechos sobre el programa (esto es:
la licencia si existe). Y slo nos proporcionarn el ttulo y la fecha de publicacin. Por
supuesto, jams nos permitirn consultar el cdigo fuente ni los manuales. As lo dice el
art. 32 del Reglamento.

Infracciones de los derechos del autor del programa


Hay que estar de acuerdo con la FSF en que las leyes de copyright presentan
como infracciones lo que, visto desde el punto de vista del usuario del software, son
libertades truncadas que ste poda esperar disfrutar en el uso normal de un programa,
libertades que de hecho se reconocen para otro tipo de obras. Una vez uno compra
un libro (soporte fsico de una obra intelectual, literaria tal vez) no necesita licencia
especial para leerlo. Por qu ha de ser as con el uso del software? Volveremos
despus sobre esto. Pero nuestro esquema no estara completo si no se citaran aqu
lo que la LPI llama claramente infracciones del derecho de autor. [Un tratamiento
ms extenso del sistema de proteccin de los derechos de autor se encuentra en la
"Introduccin a la propiedad intelectual" ]. Ahora nos centraremos en las infracciones de
los derechos de autor de los programas de ordenador. Se encuentran especificadas en
el art. 102 LPI y son stas (asstese el lector):

Poner en circulacin una o ms copias de un programa, conociendo o


pudiendo presumir su naturaleza ilegtima (no tener licencia para copiarlo).
Est prohibido copiar un programa de ordenador sin licencia. Esta es la regla
y slo una licencia puede excusar de su cumplimiento. En los apartados 4.3
y 6.2 trataremos este asunto de nuevo.
Almacenar o simplemente tener con fines comerciales una o ms copias
ilegtimas.
Poner en circulacin o tener con fines comerciales instrumentos cuyo
nico uso es facilitar la supresin o neutralizar sin autorizacin cualquier

Pgina 264 de 384

Linux

dispositivo tcnico utilizado para proteger un programa de ordenador. Hay


que entender que adems de los virus, este tipo de software tampoco es
obra protegida? No, pues la ley slo se refiere a ponerlo en circulacin. ste
es de todos modos un caso dudoso.
En fin, si no se arregla de otro modo y por las buenas, el autor o titular que considere
violados sus derechos ha de acudir al Juez de 1 Instancia de la localidad en donde
se haya producido la infraccin, al que pedir que se condene al infractor a devolverle
el beneficio ilcito, a indemnizarle por los perjuicios, a detener la actividad ilegal e
impedirle que pueda reanudarla. Entretanto estudia el litigio y dicta sentencia, el juez
puede adoptar medidas cautelares que llegan a ser muy gravosas para el presunto
infractor, como el secuestro de los equipos y materiales de reproduccin y copia, etc.
No podemos entrar en detalles, adems muy tcnicos y farragosos, fuera del objetivo
de esta "Introduccin" . Para las infracciones de las licencias de software libre, vase el
apartado 4.7.

Las libertades de los usuarios


Despus del examen general del apartado anterior, toca ahora cambiar el enfoque para
tratar un tipo muy especial de frmula de cesin de derechos de explotacin todava
poco conocida en los medios profesionales jurdicos: la licencia de software libre. Para
esto es necesario partir de las libertades del usuario del programa, no de los derechos
de autor. stos se encuentran protegidos por la LPI, como hemos visto en el apartado
1. Las libertades de los usuarios por contra tienen sus garantas (en la Constitucin
y en otras leyes que se citarn) muy difuminadas y dispersas, no en un nico cuerpo
legal sistemtico.
Para empezar despejaremos algunos problemas de nomenclatura. Reservaremos el
trmino software libre ( "free software" ), que abreviaremos sl, para los programas que
se ajustan a la especificacin de la Free Software Foundation, que es la ms rigurosa,
pero puede utilizarse tambin como denominacin genrica del conjunto de licencias
que liberan las facultades tpicas del copyright bsicas para la libre utilizacin del
software, aunque no se ajusten estrictamente a la definicin de la FSF y siempre que
del contexto se deduzca a qu nos referimos (en los apartados 3.1 y 4.1 se encuentran
las definiciones). Sin embargo, no nos atendremos necesariamente al criterio de la
compatibilidad de las licencias con la GPL, no porque este punto de vista no tenga
importancia, en realidad es tal vez el ms importante, sino porque la propia FSF
dispone de documentacin apropiada -vanse las referencias al final en el apndice
C- y porque aqu deseamos examinar solamente la compatibilidad de las licencias de
software libre con el Derecho espaol.

Plataforma de Teleformacin de IFES

Pgina 265 de 384

Huelga decir que el objetivo es el de saber a qu atenernos en Espaa cuando


surjan conflictos de intereses relacionados con el software libre. Y es que la FSF
opera obviamente con categoras jurdicas anglosajonas, sutilmente diferentes de la
europeas continentales en lo sustancial, y decididamente distintas en los formalismos.
Tenemos que asegurarnos de que hablamos consistentemente, pues las palabras son
importantes. Para empezar, los hispanohablantes no tenemos ningn problema en
distinguir algo que es gratis de algo que es libre, pequeez que a los angloparlantes les
ha costado mucha tinta.
El primer objetivo es entonces disponer de un vocabulario apropiado, no
obligatoriamente castellanizado, por exigencias prcticas obvias y que sirva para
entendernos en nuestras discusiones.
Pero hay un segundo objetivo: Comprender lo mejor posible las licencias de software,
que es el instrumento utilizado por el movimiento del sl en general, y por el copyleft
en particular, para articular jurdicamente un fenmeno que sobrepasa el mbito del
software, alcanza a la documentacin tcnica y cientfica y comienza a sustentar
la distribucin de otro tipo de bienes y productos (vase el apartado 5). No es
que software libre y copyleft hayan surgido de las licencias, sino que stas han
"instrumentado" tales movimientos, se han servido de ellas para recuperar las
libertades acadmicas, cientficas y de los usuarios. De hecho, parece que el software
libre es incluso un modelo de negocio, pero tambin es un fenmeno social, un mtodo
de investigacin y de docencia.
Orbitando las licencias de software se encuentran muchos asuntos que no podemos
tratar, pero tan importantes que se citan a continuacin algunos:

Conflictos graves, comerciales o no, entre distribuidores de software, p. ej. el


pleito ATT-Berkeley de 1992, o la cuestin GNU v. KDE de 1997.
Aparicin de sistemas operativos libres, con representantes como la
rama BSD o GNU/Linux, en competencia insospechada con los grandes
fabricantes de software cerrado (expresin que usaremos en lugar de
software propietario, ms adelante se explica por qu).
Alianzas expresas o tcitas entre fabricantes de software libre y hardware,
en competencia tambin inesperada con los chips dominantes. Es el caso
del acuerdo Apple-Universidad Carnegie Mellon para el MacOS X, o el
impulso dado por el software libre a los chips Alpha, SPARC...
Nuevos modelos de negocio, como el de Cygnus con el compilador GCC,
acuerdos de Red Hat con Penguin Computer y con la misma Cygnus
Solutions (noviembre de 1999).

Pgina 266 de 384

Linux

La aparicin de un instrumento incomparable de colaboracin profesional y


cientfica, y de frmulas como la FDL para la transmisin de documentacin
tcnica. Vase sobre esto el apartado 5.
Iniciativas legislativas, como la reciente sobre uso de software libre en la
Administracin pblica del Per, 9 de abril 2002.

Todos estos son asuntos del mayor inters, en el apndice C se encontrarn algunas
referencias. Tambin se trata de cuestiones complejas, pero alejadas en cierto modo
de nuestro tema, mucho ms restringido: las licencias de software segn el Derecho
espaol, y especialmente las de software libre.
Comenzaremos con unas cuantas frases fuertes y un esquema lo ms breve posible,
para comodidad del lector, de lo que ya se ha ido apuntando con otro enfoque en el
apartado 1, es decir: Qu exige la LPI espaola a las licencias de software libre para
considerarlas viables o atendibles por los jueces (stos como ltimo recurso, claro
est).

Premisas del software libre


El sistema jurdico espaol, como todos los europeos y anglosajones de corte
"constitucional" , se basa en la libertad, en el sentido de que uno puede hacer lo que
guste mientras no est prohibido. Esta es una afirmacin muy general, pero nos sirve
para enfocar la cuestin tal y como interesa, o sea: desde el punto de vista de las
libertades del usuario, y no el de los derechos de autor. Este ltimo, as lo esperamos,
ha quedado expuesto ya en el apartado 1. Para ms detalles, vase la "Introduccin a
la propiedad intelectual" publicada en La Espiral.
En nuestros modernos sistemas legales se entiende que la libertad tiene lmites, no se
garantiza la libertad absoluta. Un gnero esencial de esos lmites a la libertad son los
derechos y libertades de los dems. As que nuestra primera afirmacin queda "uno
puede hacer lo que guste mientras no dae los derechos y libertades de los dems" .
Por supuesto, los derechos y libertades de los dems tampoco son absolutos.

Las libertades del usuario de software


Algunos derechos y libertades se consideran fundamentales, se les garantiza una
proteccin reforzada sobre los dems derechos y libertades ordinarias. De entre ellos,
las licencias de software se encuentran con los siguientes, que vamos a clasificar en
tres grupos:

Plataforma de Teleformacin de IFES

Pgina 267 de 384

1) En el primer grupo tenemos los fundamentos de nuestra sistema poltico. No se trata


de un autntico reconocimiento de libertades y derechos fundamentales, sino de su
basamento:

La libertad es el fundamento de todo lo dems. Se ha dicho muchas veces,


y no se trata slo de una dificultad idiomtica del ingls, que el concepto
software libre trata de la libertad, no del precio. El concepto de libertad es
calificado por nuestra Constitucin, nada menos que en el primer prrafo
de su primer artculo, como uno de los valores superiores del ordenamiento
jurdico espaol, junto con la justicia, la igualdad y el pluralismo poltico.
Es cometido de los poderes pblicos promover las condiciones para que
la libertad y la igualdad de los individuos y grupos sean reales y efectivas;
remover los obstculos que impiden o dificultan su plenitud; y facilitar la
participacin de todos en la vida cultural (art. 9.2 CE).
El libre desarrollo de la personalidad es uno de los fundamentos de nuestro
orden poltico (art. 10.1 CE).

2) El segundo grupo es el ms importante a efectos prcticos. Se trata de las


libertades y derechos fundamentales que directa y necesariamente los jueces han de
proteger. Los ms importantes son los tres ltimos de los que se citan a continuacin,
directamente esgrimibles ante argumentos del tipo "el software libre atenta contra
la libre expresin, embota la creatividad y vulnera el copyright" , etc. No es as, sino
justamente al contrario. En trminos jurdicos, el usuario de cualquier software debera
poder argir conforme a los siguientes tems, que incluso tienen proteccin de amparo
garantizada hasta el recurso ante el Tribunal Constitucional, y aplicables segn las
circunstancias. Son los siguientes:

Derecho a la igualdad y no discriminacin por condicin social (art. 14 CE).


El uso de la informtica ser limitado por la ley para garantizar el pleno
ejercicio de los derechos de los ciudadanos (art. 18.4 CE). Este artculo
se incluy en la Constitucin con una finalidad relativamente clara: evitar
que mediante la informtica se alcanzara un control excesivo sobre las
personas, y con la misma finalidad se promulg la Ley de proteccin de
datos personales de 1998. Pero cabe una segunda interpretacin interesada,
y un poco traida por los pelos, pero no irrazonable: Las limitaciones al
uso del software, especialmente algunas clusulas abusivas (vase el
apartado 6), dificultan de tal modo el pleno ejercicio de los derechos de los
consumidores y ciudadanos en general que deben quedar restringidas por la
ley [Me complace hacer constar aqu que estando ya estas lneas escritas,
encuentro este mismo argumento como motor del proyecto (proposicin)
de ley sobre uso del software libre en la Administracin pblica remitido
al Congreso peruano en abril de 2002 por los congresistas VILLANUEVA
NEZ y RODRICH ACKERMAN, as como en la admirable carta que

Pgina 268 de 384

Linux

el primero dirigi al gerente de Microsoft del Per. Los textos se pueden


encontrar en http://www.gnu.org.pe/rescon.html]
Derecho a la libre expresin de pensamientos e ideas (art. 20.1.a CE).
Derecho a la produccin y creacin literaria, artstica, cientfica y tcnica (art.
20.1.b CE).
Derecho a la educacin y a la libertad de enseanza. Aunque la libertad
acadmica, y una de sus componentes, la libertad de estudio, no figuran
expresamente en el art. 27 CE, puede entenderse que se encuentran
implcitamente reconocidas por la Constitucin, pues son necesarias y
congruentes con el modelo docente general que pretende garantizar.

3) Finalmente tenemos los principios rectores de la poltica social y econmica. No


son derechos y libertades fundamentales propiamente dichos, sino directrices que,
aplicadas a stos, han de inspirar su efectividad y garanta. Se trata concretamente del
mandato que la Constitucin contiene en el art. 44, dirigido a los poderes pblicos, de
promover y tutelar el acceso a la cultura, a la que todos tenemos derecho, as como a
la ciencia y la investigacin cientfica y tcnica en beneficio del inters general.

El derecho de autor no es un derecho fundamental


Por contra, y desde el punto de vista del autor del programa, no puede decirse que
haya derechos fundamentales implicados. No es pensable una lesin a los derechos
de propiedad intelectual que afecte tambin a un derecho fundamental de los que
acabamos de citar, ni a ningn otro, con una sola excepcin, por lo dems bastante
rara en la prctica: el atentado contra el honor, la reputacin, la imagen del autor,
derivado de una infraccin de los derechos de propiedad intelectual (vase el art. 18.1
CE). Este es un caso poco usual y no vamos a tratarlo, salvo algunos apuntes en 4.5.2.
En realidad, s tiene que ver la propiedad intelectual con un derecho fundamental, pero
de los que la Constitucin considera de segunda categora, el derecho de propiedad
(art. 33 CE). No puede negarse que tanto el fenmeno del software libre, como ms
acentuadamente el copyleft, parecen superficialmente ir directos contra el derecho
de propiedad (intelectual). Nada ms falso. El software libre se basa en el derecho de
autor para, sobre l, modular sus facultades intrnsecas a las necesidades prcticas de
las libertades que hemos citado antes, sin machacarlo en modo alguno. Simplemente el
software libre tiene copyright.
Asmismo, una licencia copyleft, que impide la redistribucin de software con
restricciones aadidas a las de la distribucin originaria, no atenta contra el derecho
de autor del programa originario, pero esto no es obvio y en lo que sigue tratar de
demostrarse. Tampoco atenta contra los derechos del autor del programa derivado, que
modific el software porque la licencia copyleft se lo permita, si no no hubiera podido
Plataforma de Teleformacin de IFES

Pgina 269 de 384

hacerlo; y se ve obligado a redistribuirlo con licencia copyleft por el mismo motivo, es


decir: por haber aceptado previamente una licencia copyleft, una decisin voluntaria y
libre.
Naturalmente que cuando uno acepta una licencia (copyleft o no) ve limitadas algunas
de sus libertades y derechos, se dice que asume obligaciones, deberes y sujeciones,
lo mismo que cuando se casa o cuando firma un prstamo hipotecario. Simplemente
acepta de forma libre los trminos que se le ofrecen. En este sentido puede decirse que
la GNU-GPL es un tratado de desarme (WAYNER), porque da total libertad a todos,
salvo a quien quiere apropiarse -para s y con exclusin de los dems- de la libertad
que recibi, la que le permiti y permite explotar el programa.
El derecho de propiedad, decimos en Espaa, queda delimitado por su funcin social
de acuerdo con la ley (art. 33 CE). No puede haber otra finalidad del Derecho de
propiedad intelectual que garantizar al autor la percepcin de los beneficios de su
explotacin, lo que es perfectamente acorde con los postulados del software libre.
Pero tampoco hay funcin social de la propiedad del software que no sea su libre uso y
explotacin por quien sepa hacerlo.
No debe olvidarse que el autor tiene derecho al honor y a la propia imagen, ya se ha
dicho; pero tambin l mismo est manifestando, al escribir cdigo, su libertad de
expresin de pensamientos e ideas y su derecho a la produccin cientfica y tcnica.
En resumen, las licencias de software son expresin de un derecho individual ordinario:
el derecho de autor. Aunque la autora de una obra tiene mucho que ver con algunos
derechos fundamentales, es muy dudoso que, fuera de los aspectos relacionados con
la reputacin del autor, los dems sean considerados por un juez como expresin de
sus derechos fundamentales. Por contra, los usuarios s pueden esgrimir sus derechos
y libertades fundamentales frente a ciertos atentados contra el software libre (vase el
apartado 4.7).

Las normas imperativas de la LPI


Los lmites de las libertades de la gente sobre los programas de ordenador, y los
derechos sobre ellos de sus autores o titulares, se encuentran principalmente en
la LPI, aunque no solamente. Debe tenerse en cuenta tambin toda la legislacin
existente sobre proteccin de los consumidores y usuarios, competencia desleal,
condiciones generales de la contratacin y tantos otros asuntos. No se har aqu as,
nos limitaremos al campo de los derechos de autor, o de propiedad intelectual. Ms
adelante aadiremos de todos modos algunas notas sobre estas cuestiones.

Pgina 270 de 384

Linux

La LPI est pensada sobre todo para proteger a los autores, es decir, sus derechos
ordinarios sobre la obra; no para proteger las libertades de los dems (usuarios, otros
programadores), aunque no falten artculos que garantizan algunas, muy escasas e
indefensas, como vamos a ver.
Efectivamente, ya se habr advertido que hay reglas claramente limitativas a los
usuarios o destinatarios de los programas o a quienes los explotan; y otras por contra
limitan a los autores. Esto es lo que puede esperarse de un sistema jurdico que no
admite libertades o derechos absolutos. Pero lo importante ahora est un paso ms
all: Hay reglas de la LPI que son solamente indicativas, pueden no seguirse sin
cometer ninguna ilegalidad (se llaman reglas "dispositivas" ); y tambin hay reglas que
necesariamente han de seguirse, a riesgo de que despus el sistema no te proteja si
las infringes, se llaman reglas "imperativas" .
Uno no puede saltarse las reglas imperativas de la LPI impunemente. Cmo se
sancionan sus infracciones? Depende del grado de la infraccin, pero para resumir
diremos que va desde tener la falta por inexistente -como una clusula invlida de
una licencia, simplemente no se aplica- hasta la prisin -desde luego, slo en casos
muy graves y poco frecuentes. Ahora lo que interesa es recalcar que si una licencia
de software contiene clusulas contrarias a las normas imperativas de la LPI, tales
clasulas no valen, incluso si el perjudicado hubiera dado su acuerdo para aceptar la
licencia (p. ej., porque desconoca que tales clasulas eran ilegales).

Beneficios irrenunciables de los autores de software


Aunque una licencia de software libre no implica renuncia alguna, al menos en sentido
tcnico, conviene aclarar algunas cuestiones que al parecer sus crticos mantienen en
reserva. Para empezar, en Espaa es en general posible la exclusin voluntaria de la
ley aplicable, lo mismo que la renuncia de derechos reconocidos en la ley, a condicin
de que no se contrare el inters o el orden pblico ni se perjudique a terceros (art. 6.2
CC). Lo que no se permite es obligar a nadie a renunciar a sus derechos irrenunciables,
y justamente para prevenir esta posibilidad se establecen las reglas que se citan a
continuacin, pensadas para proteger al autor de contratos leoninos con empresarios
sin escrpulos, no para proteger a distribuidores de software dominantes frente al
desorganizado pblico de usuarios, en su mayora desconocedores de las posibilidades
inauditas de sus mquinas.
Por lo tanto, interesa saber cules son esas normas imperativas. Relacionarlas
todas no es fcil ni por suerte tampoco muy til. Basta conocer las ms importantes.
Hay de todo: beneficios renunciables slo por acuerdo de las partes, ventajas

Plataforma de Teleformacin de IFES

Pgina 271 de 384

irrenunciables... Nos quedaremos nicamente con las reglas imperativas relevantes


sobre los programas de ordenador:
1) Los derechos morales son irrenunciables y no transmisibles (artculo 14 LPI).
Veremos ms adelante que las licencias de software libre no afectan a esta limitacin,
vase el apartado 4.2.
2) La cesin de derechos de autor no puede alcanzar nunca a las modalidades de
utilizacin o medios de explotacin o difusin inexistentes o desconocidos al tiempo de
la cesin (artculo 43.5 LPI). En general, para la cesin de derechos y el efecto de esta
regla sobre el software libre vase el apartado 4.2.
3) Tambin son irrenunciables los beneficios que la LPI otorga a los autores en los
actos de transmisin de sus derechos, o contratos de cesin de derechos de autor.
As lo dice el artculo 55 de la Ley. Esto tiene mucha ms importancia, y de hecho
algunos de los siguientes tems nos dar algn trabajo despus. Pero en general
las licencias de software libre no se ven afectadas por estas reglas sobre "derechos
irrenunciables" , aunque parezca paradjico. Pinsese que al fin y al cabo la GPL (p.
ej.) no supone renuncia alguna para el autor, sino la cesin voluntaria de sus derechos
transmisibles. Todo esto se tratar despus, ahora nos limitaremos a enumerar, slo
aproximativamente, los beneficios irrenunciables de los autores al ceder sus derechos:

Es nula la cesin de derechos de explotacin respecto del conjunto de obras


que pueda el autor crear en el futuro (art. 43.3).
Es obligatorio documentar las cesiones (art. 45).
Durante 10 aos desde la cesin de la explotacin, el autor puede exigir la
revisin de la cantidad con que se le ha remunerado si considera (y logra
probar) que es inequitativa o desproporcionada al beneficio obtenido por el
cesionario o explotador del programa (art. 47).
Supongamos que Juan cede sus derechos a Pedro mediante la licencia L-1,
y Pedro los cede a su vez a otro mediante L-2. Si L-2 no respeta los trminos
de L-1, esta primera licencia puede quedar sin efecto y dejar de amparar a
Pedro, a requerimiento de Juan (art. 68.1.d LPI).
Las cesiones no exclusivas son intransmisibles (art 50.1).
En general, las obligaciones de los editores suponen en muchos casos -en el
polo opuesto- derechos irrenunciables del autor del programa.

Garantas a favor de los usuarios


Por otro lado estn las normas imperativas de la LPI que establecen garantas a favor
de los usuarios, insoslayables para el autor. A diferencia de antes, algunas garantas no

Pgina 272 de 384

Linux

desaparecen ni siquiera mediante pacto en contra, pero otras s (se encuentran en el


art. 100 LPI). Las primeras son stas:

El usuario legtimo -vase ms adelante su definicin- siempre ha de poder


hacer una copia de seguridad, si es necesaria (?) para la utilizacin del
programa.
El usuario legtimo siempre puede observar, estudiar y verificar el
funcionamiento del programa para determinar las ideas y principios implcitos
[algoritmo] en cualquier elemento, mientras lo haga durante cualquiera
de las operaciones de carga, visualizacin, ejecucin, transmisin o
almacenamiento del programa que tiene derecho a hacer.

Las siguientes son facultades del usuario legtimo, pero son renunciables mediante
pacto contrario entre el usuario y el autor:

Puede reproducir o transformar un programa, includa la correccin de


errores, si es necesario para su utilizacin legtima y conforme con la
finalidad. Pero cabe pacto en contra, que es lo normal, pues mal pueden
corregirse los errores sin tener a mano el cdigo fuente.
El autor no puede oponerse a que el titular de derechos de explotacin
realice o autorice versiones sucesivas y programas derivados. El lector
ha ledo bien: la LPI garantiza al titular de derechos de explotacin
(aparentemente no al mero usuario) de un programa del que no sea autor
la posibilidad de modificarlo o de que otros lo hagan con su autorizacin.
Este apartado supone un aparente obstculo a algunos requerimientos
del software libre, lo despejaremos despus. Aunque no parece que un
usuario realice con el mero uso una explotacin del programa, la LPI no
parece excluirlo, tal vez a causa de una redaccin defectuosa del precepto
o por falta de sistemtica. Nuestra conclusin provisional podra ser: La
LPI garantiza a cualquier usuario o explotador legtimos hacer este tipo de
transformaciones en el cdigo. Pero desde luego, necesitar para ello el
cdigo fuente. Y la interpretacin estndar no es sa, sino la siguiente: Esta
regla se refiere slo a los programas realizados por encargo, o slo a los
titulares no autores de derechos de explotacin distintos del mero uso.
Tampoco puede el autor de un programa oponerse a su reproduccin y
transformacin si se dan todas las condiciones siguientes:
1.
Que sea indispensable para obtener la informacin necesaria para
la interoperabilidad con otros programas de un programa creado de
forma independiente;
2.
Que la reproduccin o transformacin la haga el usuario legtimo o
persona facultada para utilizar una copia del programa, o persona
autorizada en su nombre;

Plataforma de Teleformacin de IFES

Pgina 273 de 384

3.
4.
5.

Que la informacin necesaria para conseguir la interoperabilidad no


haya sido puesta a disposicin, fcil y rpidamente, de las personas
citadas antes;
Que la reproduccin o transformacin se limiten a las partes del
programa original necesarias para la interoperabilidad;
Que el resultado se utilice slo para la interoperabilidad del programa
creado de forma independiente; slo se comunique a terceros si es
necesario para la interoperabilidad; y no se utilice para el desarrollo,
produccin y comercializacin de un programa sustancialmente
distinto en su expresin o para cualquier otro acto que infrinja los
derechos de autor.

Estas reglas sobre la interoperabilidad (excepcin o lmite a la prohibicin de reproducir


y transformar un programa sin autorizacin del autor) no pueden interpretarse de
modo que se perjudique injustificadamente los legtimos intereses del titular de los
derechos de autor, o se contrare la explotacin normal del programa. Est claro
adems que esta garanta para el usuario, muy limitada y borrosa, no es efectiva si no
se proporciona el cdigo fuente, al menos de las partes del programa necesarias para
la interoperabilidad.
Una interpretacin restrictiva acerca de los derechos sobre los interfaces es
la siguiente: La especificacin del interfaz est protegida, pero no lo estn los
protocolos en que se base y que sean necesarios para escribir cdigo que cumpla las
especificaciones. Tales protocolos no pueden ser obra protegida.
Hasta aqu llega la proteccin que garantiza la LPI a los usuarios de programas de
ordenador. No olvidemos que esta ley, como todas las de su clase en los dems
pases, y lo mismo en los tratados internacionales, est pensada para proteger los
derechos del autor. De un autor preconcebido, idealizado en el literato, en el pintor,
indefensos frente a los editores, los galeristas. Un autor de aspecto distinto al del titular
de derechos de explotacin de un programa de ordenador, p. ej. un gran fabricante de
software cerrado. Sea como sea, la LPI reconoce y protege sobre todo los derechos del
autor de un programa, no los del usuario del programa.
Ahora estamos listos para acometer nuestra tercera tarea: Seguir aclarando la
terminologa, dar algunas definiciones ms, desentraar el contenido estndar de
una licencia de software y, digamos en general, perder un poco el respeto a las ms
abtrusas discusiones jurdicas e incluso poder participar en ellas. Para esto, disponer
de un lenguaje preciso es esencial.

Pgina 274 de 384

Linux

Cuestiones generales y terminolgicas sobre las


licencias de software
Inevitablemente y antes de nada, hemos de ponernos de acuerdo sobre las
definiciones, sobre el significado de los conceptos que vamos a emplear, que
confrontaremos con los de la ley espaola para obtener conclusiones congruentes.
Aadiremos ms definiciones, que no necesitaremos hasta entonces, en el apartado
4.1.

Qu es una licencia de software


Es un tipo de contrato de software, de software ya creado. Recae sobre los derechos
de propiedad intelectual. En este artculo no se tratan los contratos de software
por crear, como el contrato de desarrollo de programas por encargo, servicios de
adaptacin de software; ni contratos como "escrow" , etc. Pero ojo: s trata de los
derechos de propiedad intelectual originados por motivo de esos contratos, o de
cualquier otro por el que se genere software original.
Externamente una licencia puede adoptar muchas formas, desde un documento en
papel hasta un archivo electrnico de texto, parte de un ejecutable, etc. Puede ser un
acto jurdico independiente o puede integrarse documentalmente en el seno de otro
contrato, aunque la LPI exige documentos independientes. La licencia puede recaer
sobre software tambin muy variado, aunque la LPI hable slo de programas. En
esencia es una oferta de acuerdo realizada por el autor o titular del programa, que si es
aceptada por un usuario o explotador del software, pasa a convertirse en contrato entre
las partes. Aqu hay varios conceptos involucrados, necesitamos desmenuzarlos.

Qu es una licencia
En realidad lo que llamamos licencia pasa por varios estadios: Primero es una
declaracin unilateral del autor del programa en la que expresa las condiciones en que
se puede acceder a l y explotarlo. Como tal declaracin prcticamente no tiene ningn
valor legal, slo lo adquiere (se dice que pasa a ser ley entre las partes) cuando otra
persona acepta sus trminos. Como es lgico, cuando la licencia se rechaza, o no se
acepta, simplemente no llega a tener efecto.
Es preciso recalcarlo: Aunque la licencia es unilateral, pues la origina el autor
voluntariamente y en los trminos que le interesen, est pensada para ser aceptada
o rechazada por otros, normalmente quienes van a usar el programa o van a

Plataforma de Teleformacin de IFES

Pgina 275 de 384

explotarlo de algn modo. Si la contraparte rechaza la licencia no hay ms que hablar:


probablemente el autor del programa no ceder su software, p. ej. no permitiendo
su instalacin. Pero si la licencia es aceptada, entonces deja de ser una declaracin
unilateral y se convierte en un negocio bilateral, entre licenciante (el autor o el titular de
los derechos de autor) y licenciatario (quien va a usar o explotar el software).
A este negocio puede llamrsele "licencia" o "licencia contractual" o tambin "acuerdo
de licencia" . Su denominacin tcnica precisa es, para la mayora de los casos, la de
"contrato de cesin de derechos de uso y/o explotacin del programa de ordenador" .
Es normal que el documento de licencia contenga otras cuestiones, como garanta,
servicios de soporte y postventa, que no tienen nada que ver con la propiedad
intelectual ni con el software libre, y no los tratamos en este artculo. Tal vez haya
ocasin en versiones sucesivas de tratar alguno de estos asuntos.

Qu es "software"
La LPI no habla nunca de software desde luego, sino de "programas de ordenador" ,
que define (art. 96) como secuencia de instrucciones o indicaciones destinadas a ser
utilizadas, directa o indirectamente, en un sistema informtico para realizar una funcin
o una tarea o para obtener un resultado determinado, cualquiera que sea su forma de
expresin o fijacin.
No es una bella definicin, ni tampoco un modelo de precisin. Dice la LPI que gozan
de la misma proteccin que los programas tanto la documentacin preparatoria como
la documentacin tcnica y los manuales de uso. Ya sabemos adems que se protegen
las versiones sucesivas y los programas derivados, pero no los creados con el fin de
ocasionar efectos nocivos a un sistema informtico. Tampoco estn protegidas las
ideas y principios en que se base cualquier elemento de un programa, incluidos los que
sirven de fundamento a los interfaces. Esta exclusin parece referirse a los algoritmos
y otros elementos, que no necesitamos determinar completamente para saber a qu
nos referimos con el trmino legal genrico "programa de ordenador" . En la prctica,
el problema de la definicin se plantea ante casos como los sitemas expertos, los
interfaces, etc.
Los programas no pueden patentarse, pero s formar parte de un objeto patentado.
Entonces, la proteccin de la Ley de Patentes tambin se activa a favor del programa,
aunque sea indirectamente. [Nota sobre patentes: Recurdese lo dicho en el apartado
1, en Derecho espaol son patentables las invenciones nuevas de aplicacin industrial,
pero los programas de ordenador no se consideran invenciones, y por lo tanto son no
patentables]. Asmismo un programa puede incorporar una marca comercial, sea su

Pgina 276 de 384

Linux

mismo ttulo u otra marca. La marca comercial del programa no es objeto de proteccin
por la LPI pero s por la Ley de Marcas, lo mismo que antes.
Por supuesto podemos considerar incluidos en la definicin legal de programa todo
aquello que tcnicamente lo es: ejecutables de cualquier tipo, mdulos, controladores,
aplicaciones de usuario y sistemas operativos, suites, paquetes y distribuciones, con
toda la documentacin. La GPL concretamente se aplica a programas y a "cualquier
otro tipo de trabajo" . No olvidemos que la LPI exige que la secuencia de instrucciones
sea original, obra del intelecto, y se destine a un sistema informtico. La Directiva
1991/250, traspuesta a la ley espaola en 1993, incluye los programas "incorporados al
hardware" . En Espaa, por otra parte, la topografa de semiconductores est protegida
en una ley propia de 1988; vase el art. 104 LPI.
Son programas protegidos tanto los originales como los derivados, las versiones
sucesivas y las originadas en bifurcaciones. Tenemos obras independientes, como un
kernel; y obras compuestas, como paquetes y distribuciones. Tenemos obras originales
como el primer ncleo Linux, y obras derivadas como un kernel 2.2.x.
Sin embargo, puede que no encontremos software en dominio pblico por expiracin
del plazo de duracin de los derechos, pues no han transcurrido aos suficientes
desde la aparicin de los primeros programas a mediados del siglo XX. Es cierto que,
adems, este software slo tiene utilidad histrica.
Puede un autor poner su software en dominio pblico voluntariamente? No en
Derecho espaol, para el cual una obra est en dominio pblico slo cuando se
extinguen todos los derechos de explotacin por transcurso del plazo de duracin. No
es exactamente lo mismo que carecer de copyright, como lo definen la FSF y la OSI
en su digamos "plataforma jurdica anglosajona" . Volveremos sobre todo esto ms
adelante en 4.1.

Quin es el autor del software


Aqu no vamos a extendernos, porque esto ha debido quedar claro desde el apartado
1. Recordemos los conceptos de autor asalariado, y de obra colectiva frente a obra
en colaboracin. Un programa como Windows XP es obra colectiva, creada por
asalariados de Microsoft, que asume la autora del programa y sin que ninguno
de los desarrolladores puedan reclamar la explotacin separada sobre su parte.
La distribucin Debian GNU/Linux es una obra en colaboracin en cuanto a los
componentes individuales, pero la distribucin en s es una obra colectiva, compuesta,
cuyo titular es una asociacin de desarrolladores voluntarios que se sirve de la
organizacin Software In The Public Interest, Inc. para dotarse de personalidad jurdica,

Plataforma de Teleformacin de IFES

Pgina 277 de 384

titular de los derechos de autor de la distribucin en sus diferentes versiones [Esta


explicacin es conforme con el Derecho espaol, y en realidad vale para todo el
mundo. Se incluye aqu a ttulo de ejemplo, esperemos que apropiado].
Una observacin comn en la literatura jurdica acerca de lo ventajosa que resulta
la proteccin del programa no libre para una empresa de software por las reglas del
derecho de autor, se basa en que normalmente los autores de los programas son
annimos y quien se beneficia de los derechos de autor (la empresa) no es autor.
Pero lo cierto es que, primero, la observacin tambin rige para los autores de obras
literarias salvo excepciones; segundo, la observacin no se aplica al software libre,
cuyos autores no son casi nunca annimos; y, tercero, la mayor parte de los derechos
de explotacin -y por tanto su proteccin legal- queda cedida a la comunidad de
usuarios y por tanto las vas para obtener beneficio no derivan ya de la exclusividad.

Quin es "usuario legtimo" del software


Este es un concepto mucho ms importante, aunque la LPI no lo define. Podemos
suponer, en un examen superficial de las premisas del apartado 2.1, o simplemente
deducindolo de nuestra experiencia cotidiana, que usuario legtimo es quien ha
comprado el software, y en efecto as es cuando la compra del soporte incorpora mediante la licencia- la autorizacin para usarlo.
Pero hablando estrictamente, no existe la "compraventa de software" . Lo que uno
compra en la tienda (tal vez un CDROM con un juego o una distribucin GNU)
no es el programa, sino slo su soporte ms una oferta de licencia para uso y
explotacin -licencia que despus habr de aceptar. Y esto es todo (y nada menos,
dirn el vendedor, el distribuidor, el titular de derechos de explotacin y/o el autor del
programa). Esta explicacin suele encontrarse en las licencias de software propietario,
que en este artculo y por las razones que se explicarn despus, preferimos
denominar "software cerrado" . No es una explicacin realmente necesaria, pues todo
software nace con copyright.
Pero tambin puede adquirirse software por ftp annimo gratuitamente con licencia
copyleft, y por supuesto quien lo obtiene as puede usarlo muy legtimamente;
simplemente la LPI no estaba pensando en esta circunstancia. Cuando se aprob la
LPI en 1987, incluso cuando se aprob en Bruselas en 1991 la directiva que oblig a
hacer algunas modificaciones en la ley espaola en 1993, el software libre no era un
movimiento lo suficientemente relevante en Europa y menos en Espaa.
Lo relevante para nosotros ahora es otra cosa: No hay otro tipo de obras para las que
la LPI distinga entre usuarios legtimos e ilegtimos, slo hace la distincin para los

Pgina 278 de 384

Linux

programas de ordenador y para las bases de datos. No se habla nunca de usuario


ilegtimo de un libro, o espectador ilegtimo de un cuadro. Esto parece absurdo, y puede
que lo sea en cierto sentido que vamos a explicar. Ante todo, no estamos hablando de
quien roba un CD que contiene un programa, o roba un libro, o entra en un museo sin
pagar. Estamos hablando de quien usa un programa que instal desde un CD prestado
por un amigo, de quien ha ledo un libro prestado por un amigo, de quien contempla en
casa un cuadro prestado por un amigo. Es evidente que en los dos ltimos casos no
hablamos de "lector ilegtimo" ni de "espectador ilegtimo" , pero para la LPI el primer
fulano, el del programa de ordenador prestado, se es un usuario ilegtimo. Esta es una
extraa asimetra. Nos dar que hablar despus.

Quin es el responsable ante el usuario


El autor tiene siempre algunas obligaciones frente a quienes explotan su obra. Ante
todo responde de la autora y de la originalidad de la obra. Responde tambin de su
propia capacidad jurdica para licenciar el programa. El supuesto que ms problemas
puede dar es el de un redistribuidor de software que l cree libre y que en realidad no lo
es, por error, a sabiendas o mediante engao (y esto tendr que probarlo).
Ocurre que las exigencias jurdicas del software libre (sl) pueden confundir: Redistribuir
software libre del que no se es autor no traslada automticamenten al redistribuidor
las responsabilidades del autor. Para empezar, la habitual clusula de ausencia de
garanta deja claras ya algunas cosas. En general, si el licenciante del programa
original (normalmente el autor pero no necesariamente, p. ej. en el caso de los
asalariados) y el licenciatario (quien tal vez lo va a modificar y redistribuir) acuerdan
vlidamente los trminos de la licencia, est claro que de la autora de los programas
responde cada cual: del original el autor o licenciante; y del derivado el licenciatario,
pero por motivo de una segunda licencia, en la que es l ahora el licenciante de
un tercero licenciatario, y as sucesivamente. Ms en general no es posible, ni
seguramente til, tratar los diferentes supuestos de responsabilidad (patrimonial o no,
ya sea civil, penal o administrativa). Es un asunto demasiado amplio, rido y complejo.
Y a efectos prcticos no muy til. Tal vez sea ste, como otros del presente artculo,
objeto apropiado para una apartado FAQ en versiones sucesivas. De todos modos, uno
debera ser capaz de deducir la respuesta a su duda a partir de cuanto contienen la
presente "Introduccin" (sa es su finalidad).

Contenido deseable de una licencia de software


Lo que sigue pretende indicar al lector, que probablemente no ser ducho en
cuestiones jurdicas, en qu debera fijarse al leer una licencia para entenderla

Plataforma de Teleformacin de IFES

Pgina 279 de 384

correctamente y sin mucho trabajo. El mtodo no va a ser la presentacin de un


prototipo de licencia abstracta, sino el examen de la mejor licencia concreta que hemos
podido encontrar, ya sirva a un programador tal cual, o como modelo para obtener otra
a su gusto, o tal vez de anticristo para estigmatizarla a placer. Se trata de la GPL.
La GNU-GPL es una pieza jurdica de gran valor. Entre otras utilidades, contiene
la estructura completa del sistema de cesin de derechos de autor sin atentados al
copyright y respetuosa con los derechos y libertades de los usuarios. Es superior
tcnicamente a los mejores ejemplos de licencias de software no libre, es ms
completa que las licencias breves tipo BSD, y mucho ms clara y fcil de leer que
cualquier otra de software no libre que conozcamos.
Para empezar, la GNU-GPL carece de traducciones oficiales. Pero esto no es ningn
problema prctico, primero porque hay traducciones oficiosas; segundo, porque el
ingls original es fcilmente traducible a trminos jurdicos de cualquier pas; tercero,
porque el texto evita deliberadamente los tecnicismos y expresiones o rodeos oscuros.
Sin ser coloquial, que casi lo es, pasa por ser un modelo de redaccin jurdica.
Estas cualidades no se deben slo a su punto de vista distinto al de la propiedad
intelectual. Por cierto, la GPL no se opone a la propiedad intelectual, pero su enfoque
no es desde luego el de la proteccin de los derechos de autor -para eso ya est la
LPI- sino el del respeto de la libertad de los usuarios. Para redactar una licencia que
acabara por dar nombre a una forma de distribucin ( "copyleft" ) la FSF debi sortear
ms de un serio escollo, adems de enfrentarse con crticas no siempre benvolas,
con el punto de mira desviado y finalmente incapaces de demoler el imponente edificio
que se estaba levantado bajo su proteccin. Por ahora no disponemos de un modelo
mejor, aunque todo es perfectible. Las directrices Open Source son muy prcticas, pero
tcnicamente hablando no son un modelo de licencia, y en trminos jurdicos significan
un paso atrs sobre el esquema de la FSF, como se tratar de demostrar despus. No
son tampoco fciles de entender. Pero su importancia e influencia son enormes y le
dedicaremos el apartado 4.5.2. Iremos dando indicaciones por orden, para desmenuzar
la licencia deseable, aunque no llegaremos a los detalles.
La forma ms segura de licenciar el programa consiste en incluir un anuncio al principio
de cada fichero fuente, unas lneas de indicacin de autora y ao de publicacin
(es decir, lo que se llama "lnea de copyright" ) y la indicacin de uno o dos lugares
fcilmente accesibles donde encontrar el texto completo de la licencia.
Una licencia no necesita un prembulo que exponga la justificacin de las clusulas
o cuerpo de la licencia, pero la GPL tiene uno, y muy til porque sirve para solventar
las dudas que pueden aparecer al leer o al aplicar las clusulas. La GPL no es neutral,
pretende ser interpretada en un sentido dado y no en otro distinto u opuesto. Su sentido

Pgina 280 de 384

Linux

es el de la libertad, y est recogido justamente en el prembulo, que forma parte de


la licencia misma, aunque esto la FSF no se ha ocupado de indicarlo as. De todos
modos, la licencia es toda ella autoexplicativa, e interpretarla debera de resultar fcil.
No puede decirse lo mismo de muchas otras licencias estndar que hemos podido
consultar.
En el cuerpo de una licencia de software debe encontrarse 3 grupos de clusulas,
slo en lo que se refiere a los derechos de autor; habr ms apartados si se tratan
asuntos sobre garantas, servicios de apoyo, pagos y dems, pero las materias ajenas
a la propiedad intelectual no son tratadas en estas notas. Los grupos de clusulas
son los siguientes, y se incluye despus de cada uno, como ejemplo, las clusulas
correspondientes de la GPL. La discusin del grupo segundo, el cuerpo principal sobre
explotacin del programa, la dejamos para el apartado 4.
1.

2.

3.

Clusulas generales
1.
Definiciones y mbito de aplicacin de la licencia. Advertencias de
copyright (GPL clusula 0)
2.
Formas de aceptacin de la licencia (GPL clusula 5)
Uso y explotacin del programa
1.
Copia, modificacin y distribucin libres (GPL clusulas 1 a 3)
2.
Copyleft, o persistencia de la libre distribucin de programas
derivados (GPL clusulas 4, 6 y 10)
3.
Integridad del sistema copyleft en caso de impedimento forzoso a la
libre distribucin (GPL Clusula 7)
4.
Posibilidad de lmites geogrficos a la libre distribucin (GPL clasula
8)
Intangibilidad de la licencia. Versiones sucesivas (GPL clusula 9)

Las diferencias entre el orden lgico y el de presentacin por la GPL se deben a


necesidades prcticas de exposicin de la FSF. Comprobaremos que para analizar
el funcionamiento de una licencia de software libre es ms apropiada la ordenacin
lgica. A continuacin tratamos las clusulas generales, y como se ha dicho dejamos
las relativas a la explotacin para el apartado 4.

Clusulas generales
Definiciones, mbito de aplicacin de una licencia y avisos de copyright
Estas declaraciones de la licencia no tratan directamente de la explotacin del
software, e incluso pueden ser tericamente innecesarias, pero siempre ayudan a
la comprensin del cuerpo principal. En cuanto a las definiciones, podemos usar las
contenidas en las leyes o bien habremos de hacerlo nosotros mismos. Son esenciales

Plataforma de Teleformacin de IFES

Pgina 281 de 384

las de programa u objeto licenciado, programa derivado (el obtenido a partir del que
ahora licenciamos) y las formas de explotacin. De todo ello se encuentra informacin
en los apartados anteriores. Es tpico de las licencias, como de muchos otros contratos,
fijar los trminos importantes que vayan a usarse ms a menudo: "usted" puede ser
el licenciatario, "titular del copyright" o simplemente "titular" es el autor o el derechohabiente de las facultades de explotacin que van a autorizarse, "versiones y/o
programas derivados" son el resultado de cualquier modificacin del programa, incluida
la traduccin, etc. Todo esto depende de las concretas necesidades en cada caso.
Una licencia debe delimitar claramente su mbito geogrfico de aplicacin, su duracin
(que puede ser indefinida) y las formas de explotacin que se van a tratar, las que
se retienen y las que se ceden. Aqu bastar limitarse a definirlas lo mejor posible
y siempre que parezca conveniente o necesario. Hacen referencia a cuestiones
generales tratadas en otras partes de este artculo, as que no las repetimos. Es clsico
advertir que la licencia no se aplica a la entrada o a la salida del programa, salvo que
se diga otra cosa, es decir: siempre que una y otra no sean a su vez obra protegida.
Es casi esencial que el programa incluya de algn modo uno o ms avisos de copyright
y de la licencia, como ya hemos reseado antes.
La copia impresa debe prevalecer sobre la informacin que muestre la pantalla, porque
es ms sencillo hacer modificaciones de ltima hora en aqulla.
Formas de aceptacin de la licencia
Este asunto es clave, al menos formalmente, pero no debe dar problemas en su puesta
en prctica. No hay autntica licencia hasta su aceptacin por el destinatario, esto ya
lo sabemos. La forma de la aceptacin es variada, las hay muy rebuscadas, incluso
puede encontrarse algunas definitivamente abusivas para el usuario (vase el apartado
6.1). Aqu nos referiremos slo a las habituales. En esencia, se trata de que queden
claras las voluntades del licenciante y del licenciatario, por cualquier medio admitido.
Primero, es conveniente advertir al destinatario que no est obligado a aceptar la
licencia para el uso y la copia privada, pero s para la modificacin y distribucin (o
redistribucin) del programa. Los dos primeros actos son privados, normalmente; pero
los segundos involucran a terceras personas. A primera vista, de lo dicho se podra
deducir que este software no va a tener "usuario legtimo" en el sentido genuino de la
LPI, ni estar prohibida la copia privada, tambin en contra de la LPI. Pero no es as.
El uso y la copia privada son actos que normalmente slo conocen los mismos usuario
y copista, p. ej. si se realizan en casa. Por tanto no tiene mucho sentido exigir la
aceptacin de la licencia para estas dos formas de explotacin. Esto es as sobre todo
para el software libre, en donde por definicin prcticamente todo usuario es legtimo

Pgina 282 de 384

Linux

y quedan autorizadas las formas principales de explotacin. Obviamente, para el


software cerrado la situacin es muy distinta, ya que su explotacin est radicalmente
restringida desde el mismo uso. De hecho, desde antes del uso, pues para algunos
fabricantes el romper los precintos del paquete de CDs supone la aceptacin de la
licencia (puede comprobarse en las licencias de conocidas casas comerciales).
Suele darse por vlido que la realizacin de actos de explotacin permitidos por
la licencia suponen su aceptacin. Por supuesto, pulsar "aceptar" en el ejecutable
interactivo tiene exactamente -jurdicamente- ese valor, aunque debera darse
la oportunidad al usuario de poder usar el programa durante un tiempo para
comprobaciones y ajustes, antes de la aceptacin. En fin, que no hace falta una
declaracin pesonal por escrito, firmada y fechada, para aceptar una licencia. S tal vez
para rechazarla, si uno cree que ha realizado, por error o defecto del programa, algo
que puede significar la aceptacin de lo inaceptable. El software libre, de todos modos,
no se enfrenta con estos problemas casi nunca.

Intangibilidad de la licencia
El contenido de una licencia, sobre todo de una licencia de software libre, no es libre.
Dicho de otro modo, el efecto de una licencia de sl no es reflexivo, no se aplica a s
misma. Una licencia no puede permitir su propia modificacin entretanto est en vigor,
salvo por acuerdo expreso de ambas partes. En Derecho espaol se dice, ms en
general, que los trminos de un contrato no pueden quedar al arbitrio de uno solo
de los contratantes. Por todo esto se exige que la licencia sea intangible, intocable
mientras est en vigor.
Tenemos que distinguir las novaciones, o cambios que puede sufrir una licencia por
acuerdo entre las partes o por sentencia judicial, p. ej. si un tribunal anula una clasula
abusiva; de las revisiones de una licencia-modelo o general, como p. ej. la GNU-GPL.
El supuesto interesante es el segundo. Una licencia-tipo, como la GPL o la FDL, que al
fin y al cabo son obras literarias, estn protegidas por las leyes de derechos de autor,
aqu aplicados estrictamente con la finalidad de mantener el texto sin cambios. Estas
licencias estn sujetas al copyright, en este caso de la FSF, con domicilio en BostonMA. Esto significa que quien use la GPL para licenciar su programa y mantenga el
nombre de la licencia en el ejemplar que utilice para su programa, debe mantenerla
ntegra y sin modificaciones. En otro caso, y si prefiere el autor realizar algn cambio,
no ser ya "licencia GPL" y no podr utilizar tal denominacin. A esto se refiere la GPL
en la advertencia que va antes del prembulo.
La intangibilidad de las licencias-tipo se debe a su papel de destinataria de tantas
remisiones que circulan por ah. La seguridad del trfico exige que los trminos literales

Plataforma de Teleformacin de IFES

Pgina 283 de 384

no cambien. An as, una licencia modelo puede pasar revisiones, y por tanto podemos
encontrarnos con versiones distintas, pero no deberan serlo mucho sino slo en
mejoras, aclaraciones y tratamiento de casos nuevos. Todas las versiones deben
ajustarse al esptitu de la licencia original, en otro caso habr de redactarse una licencia
distinta y con otro nombre o identificador. La FSF admite adems que si alguien licencia
su programa con la versin x puede hacerlo al mismo tiempo con referencia a cualquier
versin posterior. Esto se contrapesa estableciendo que cuando no se especifique el
nmero de versin de la licencia, el destinatario elegir la que ms le convenga, algo
perfectamente vlido y respetuoso con el usuario.
Puede revocarse una licencia?
Una licencia es revocable por el autor en muchas circunstancias y en ejercicio de
varias facultades. Una de ellas, el caso del llamado derecho de arrepentimiento, por
cambio de convicciones del autor, forma parte del derecho moral. Por supuesto tiene un
lmite: indemnizar los perjuicios que pueda producir a terceros. Y lo mismo ocurre con
cualquier revocacin unilateral (no pactada) de la licencia. Si hay acuerdos sobre este
asunto, habr que estar a lo acordado. En el sl la situacin no tiene mayor relevancia,
salvo en un caso: la revocacin de la licencia copyleft Es ello posible? Y de serlo,
qu consecuencias tiene para el autor? Y para los licenciatarios antiguos y nuevos?
En el software de uso masivo, sea libre o no, las dificultades en la aplicacin prctica
de las reglas sobre revocacin de licencias son tan grandes que se usa otra frmula:
nueva licencia para una nueva versin del programa; o bien la doble licencia. Los
problemas resueltos de esta forma resultan ms manejables, pero no dejan de ser
serios. Su tratamiento aqu excede del mbito de las presentes notas, aunque se
espera poder tratarlo mnimamente en versiones sucesivas.

Tipos de licencias de software


Aunque la GNU-GPL, BSD, XFree86, Mozilla, y otras muchas son las licencias ms
conocidas, lo cierto es que no podramos enumerarlas todas porque cada autor puede
tener la suya, y una distinta para cada programa. Pero esto no es ningn problema,
por varias razones. Primera, porque disponemos de un instrumento de anlisis de las
licencias: las premisas del apartado 2.1 de este artculo. Segunda, porque hay varias
licencias que sirven como modelos para otros programas, y as hablamos de "tipo BSD"
para referirnos a licencias similares a la del sistema operativo de Berkeley. Hay incluso
licencias y modelos creados en abstracto, sin referencia a un concreto programa,
como la misma GNU-GPL o la Open Source Definition. Las licencias tpicas son muy
cmodas de usar ya que el autor de un programa dado, conocedor de la que ms le
conviene, la incluye tal cual o hace slo las modificaciones que precisa, sin el trabajo

Pgina 284 de 384

Linux

de redactar una por entero, o encargarla a un abogado. Por otro lado, quienes van a
usar o explotar un programa (los licenciatarios) tambin conocen estas licencias tpicas
y saben de antemano a qu atenerse. Igualmente, los abogados y los jueces tienen
mejor conocimiento de ellas que de una licencia nueva u original. Todo esto simplifica
las relaciones y los negocios y resulta til.
Nosotros vamos a ocuparnos slo de las licencias tpicas. Las ms interesantes son
las licencias de software libre, ya que en una licencia se materializa la voluntad del
autor sobre cmo desea que su programa se use y explote, y las de software libre
materializan una voluntad radicalmente contraria a la que la LPI espera de un autor. En
particular, las licencias copyleft revierten literalmente las relaciones autor-usuario que la
LPI presupone.
Por contra, las licencias de software no libre, exactamente las de software cerrado, se
asientan en la LPI y desde ella pueden incluso lanzarse ms all en la limitacin de los
derechos y libertades de los usuarios. Pero esto slo es vlido, como ya sabemos, si no
se atenta contra las normas imperativas, que conocemos del apartado 2.1.3. Por eso
se dice que las licencias de software no libre estn acompasadas con la LPI y son por
lo tanto mucho menos interesantes. La lectura completa de una de estas licencias no
libres puede resultar adems una penosa experiencia.
Con todo, slo las licencias tpicas forman ya un buen montn. Tampoco tiene mucha
utilidad hacer una seleccin, pues la FSF y la OSI ya han hecho algunas muy valiosas,
aunque no siempre detalladas, y de las que en el apndice C se encuentran las
referencias. Nosotros vamos a examinarlas de una forma distinta, y nos evitaramos
tanto el tedio de la exposicin de licencias una por una, como una lectura rida o
abrumadora. De todos modos, se encontrar en 4.6 una breve discusin final sobre los
criterios de las clasificaciones principales.
Y llegamos por fin al ncleo de la cuestin.

Las licencias de software libre

Ms definiciones
Necesitamos an algunas definiciones ms para seguir aclarando la terminologa que
estamos usando y otra nueva que introduciremos enseguida. Las definiciones ms
tiles para hablar de software libre son, de nuevo por su rigor jurdico, las de la FSF,
que usamos en este artculo por convencin.

Plataforma de Teleformacin de IFES

Pgina 285 de 384

Tenemos dos grandes superconjuntos: el software libre y el resto del software, que
por tanto llamamos no libre. Cualquier otra terminologa para estos superconjuntos
no es aceptable en espaol. Por cierto, software no libre no es sinnimo de "software
propietario" , y como esta ltima expresin es horrible adems de inexacta, nosotros
no la utilizaremos, adems en el fondo nos sobra. En caso necesario hablaremos de
"software cerrado" . Es ms preciso hablar en general de software no libre, y de paso
englobamos a los semipropietarios, semilibres, sharewares y dems. Esta terminologa
tambin nos facilitar la comprensin cabal de un cuadro bastante grande de licencias.
"Software libre" (sl) es el que incorpora una autorizacin general no discriminatoria para
usar, copiar, modificar y distribuir el programa original o sus derivados, gratuitamente
o no. Debe proporcionarse las fuentes, directa o indirectamente, pero siempre de
forma fcil y asequible. Todo programa que no incorpore esta autorizacin no es libre,
decimos que es software no libre.
Abusaremos un poco del lenguaje llamando "licencia libre" a la licencia de un programa
libre.
Estas definiciones no son pacficas. Nosotros las usaremos convencionalmente, pero
ignorar cunto hay detrs es un pobre servicio al conocimiento, porque no se trata
de pequeeces. Para empezar, las definiciones de software libre ( "free software" )
y fuente abierta ( "open source" ) no son coincidentes, aunque vienen ciertamente
a significar casi lo mismo. Pero estas diferencias no son importantes por ahora, las
dejamos para el apartado 4.5.2.
Tambin es esencial distinguir sl (superconjunto) de copyleft (subconjunto). ste es
software libre cuyos trminos de distribucin no permiten a los re-distribuidores aadir
a su licencia restricciones adicionales a las de la licencia de que se sirvieron. Esto
supone la perpetuacin de la condicin de libertad del software hasta su extincin.
El copyleft determina la imposibilidad (jurdica) de apropiarse del software libre. Y
ste es el hallazgo de la FSF, al que dedicaremos por entero el apartado 4.5.1. El
resto del sl que no es copyleft puede ser modificado aadiendo restricciones a la libre
distribucin que no se encontraban en la licencia del programa originario. Los ejemplos
caractersticos son las licencias BSD y X11.
Esta segunda dicotoma "sl-copyleft v. sl-no-copyleft" es en cambio pacfica, porque
los trminos de distribucin de, p ej., la GNU-GPL son claros y terminantes. Es cierto
que una cuestin de estrategia invit a la FSF a redactar la Lesser GPL, y que se
han detectado una o dos lagunas relativamente importantes, pero procedentes slo
de una interpretacin forzada del sentido de su texto. Un programa es copyleft o no
lo es, y esto es fcil distinguirlo. Aun as, la FSF habla de "grados" de copyleft (hay
programas ms copyleft que otros), y finalmente introduce una ltima subdivisin:

Pgina 286 de 384

Linux

"copyleft compatible GNU v. copyleft no compatible GNU" . Lo mismo hace la OSI con
su calificacin de compatibilidad Open Source. Pero estas expresiones, graduacin y
compatibilidad, forman otro de los asuntos en los que, dado el mbito de este artculo,
no podremos entrar a fondo hasta una versin ulterior.
En Derecho anglosajn se incluye dentro del sl el software que se encuentra en
dominio pblico, pero esto generalmente no es as en los Derechos continentales.
En primer lugar, no es fcil con arreglo a la ley espaola encontrar programas en
dominio pblico por las razones expuestas antes, simplemente no ha transcurrido
suficiente tiempo desde la aparicin de los primeros programas protegidos para que
se haya producido la extincin de los derechos de autor sobre ellos (recurdese:
toda la vida del autor y 70 aos ms). Segundo, probablemente las fuentes pueden
no estar disponibles. Tercero, el Derecho espaol admite la apropiacin del dominio
pblico indito (art. 129.1 LPI), y desde luego la apropiacin de las obras derivadas del
dominio pblico, pero no del dominio pblico mismo. Con razn la FSF considera que
el software en dominio pblico no es en modo alguno copyleft, sobre todo en Derecho
anglosajn. Ni siquiera tiene que ser necesariamente libre, p. ej. no lo es si las fuentes
no estan disponibles. Volveremos an sobre el dominio pblico en 4.5.1.

Encaje general de las licencias de software libre


en la ley espaola
Sin rodeos, no plantean problemas en Derecho espaol, son perfectamente vlidas y
viables. Trataremos de demostrarlo en lo que resta de este apartado 4. En primer lugar:
1.

2.

No afectan a los derechos morales del autor, aunque la existencia del


llamado derecho de arrepentimiento, tpico de los Derechos continentales,
parece sugerir otra cosa. Pero ya tratamos este asunto (superficialmente,
es cierto) en el apartado 3.2.2 al hablar de la revocacin de las licencias.
Aunque all quedaron temas por tratar, ste en particular qued allanado.
Se trata de un asunto ms terico que otra cosa, de todos modos. Y an
volveremos de nuevo a l cuando tratemos de la Open Source Definition.
En cuanto a los derechos patrimoniales del autor, tampoco hay nada en las
licencias de software libre que infrinja las normas imperativas de la LPI. En
efecto:
1.
El derecho de autorizar o prohibir la explotacin de la obra se
manifiesta justamente en la facultad del autor de dar licencia a su
programa, siempre que no se vulneren otras normas imperativas u
obligaciones asumidas.

Plataforma de Teleformacin de IFES

Pgina 287 de 384

2.

3.

Las licencias de software libre no implican renuncia del derecho de


remuneracin, aunque en muchos casos se renuncie de hecho a
una remuneracin, que es cosa distinta, perfectamente renunciable.
Es claro que el autor no renuncia a la explotacin por s mismo.
Y respecto de la explotacin por los dems, la cede con causa
(liberalidad, prestigio, obtencin de una marca comercial, de apoyo en
el mantenimiento del programa, etc, etc).
Las licencias regulan sobre todo la cesin de los derechos de
explotacin, que es su cometido, y por tanto son el vehculo apropiado
para contener las condiciones de uso y explotacin de un programa
de ordenador.

Una dificultad ms seria se encuentra en la limitacin que la ley espaola impone a


cualquier cesin de derechos de explotacin: Queda limitada siempre a los medios
de explotacin existentes en el momento de la cesin, esto es, en el momento de la
aceptacin de la licencia; y no se extiende por tanto a los medios futuros de copia,
modificacin, etc, ni a los inexistentes. Por su parte la GPL deja bien claro que
la explotacin libre autorizada se refiere "a cualquier medio" (clasula 1) y queda
restringida a determinadas formas de explotacin (y no a otras), concretamente la
copia, modificacin y distribucin. Si se produce una explotacin de distinto tipo, la
GPL deja de amparar al licenciatario (cl. 1 y 4), pero el sentido de la GPL es el de
respetar las libertades del usuario, no la restriccin injustificada del uso y explotacin
de los programas; y no entra, salvo lo ya sealado, en buscar limitaciones ms all de
las necesarias a su finalidad. Por lo tanto se concluye que la GPL ampara formas de
explotacin sobrevenidas despus de la aceptacin de la licencia, pero siempre que no
se atente contra el espritu de la GPL. Aunque nunca est de ms avisar al licenciante,
puede incluso ser imprescindible.
Tambin hemos de resolver una aparente contradiccin entre la regla imperativa de la
LPI que dice "las cesiones no exclusivas son intransmisibles" (art. 50.1) y el hecho de
que una licencia de sl, que consiste en una cesin no exclusiva, justamente permite la
transmisin ulterior de derechos por el licenciatario si ste crea un programa derivado.
Pero no hay tal contradiccin. Por al menos dos razones: 1 La esencia del sl est
en la cesin de derechos de explotacin sin exclusiva, y no en ninguna renuncia del
copyright. Mediante la licencia libre el autor cede sus derechos de explotacin sin
exclusiva, pero ello no permite al licenciatario re-licenciar la obra originaria, ni licenciar
su obra derivada en trminos contrarios a los aceptados en la primera licencia. 2 El
art. 50.1 no es realmente una norma imperativa, existe para proteger al autor, pero
ste puede disponer de ella, es en realidad una norma dispositiva. Se incluy en su
momento como imperativa por pura precaucin, pues el tenor literal de la LPI da que
pensar. Para los ms juristas: una licencia de sl tiene algo de donacin modal (te doy

Pgina 288 de 384

Linux

algo si haces esto), y esta es otra forma de demostrar que la contradiccin es slo
aparente.
A continuacin veremos con ms detalle las libertades aparejadas a una licencia
de software libre. Seguiremos el orden expuesto al final del apartado 3.2, o sea: el
segundo grupo de clasulas que tenamos pendientes. Puede adelantarse que no se
trata de un examen pormenorizado de cuantas cuestiones suscitan los rtulos de los
apartados, sino un vistazo general. Esto podemos en cierto modo permitrnoslo porque,
primero, estamos tratando con el negativo de las habituales licencias de software
cerrado, innecesariamente prolijas y obsesivas. Segundo, estamos tratando acerca de
las libertades, ms simples de expresar que las sujeciones.

Libertades de uso y reproduccin


Estas libertades no nos darn ya mucho trabajo. Todo ha quedado definido en
apartados anteriores y sabemos por tanto que una licencia de sl otorga libertad
prcticamente plena para utilizar y copiar el programa cuando, como, cuanto y donde
a uno le apetezca. Suele incluirse restricciones formales, como el mantenimiento del
aviso de copyright, que si son razonables no hacen al programa no libre.
Por supuesto, es lcito bajo licencia de sl cobrar por el acto fsico de transfererir copias
del programa (p. ej. en CDROM), as lo dice entre otras la GPL en el ltimo inciso de
la clusula 1. Significa esto que la cesin de derechos de explotacin del programa
(que es una transferencia de objeto inmaterial) ha de ser gratuita si se utiliza la GPL?
Aqu la GPL parece confundir el programa (obra intelectual, inmaterial, objeto de los
derechos de autor) con el soporte de la obra (un binario o cdigo fuente, grabados
en un CDROM). Debera estar claro que la GPL no exige gratuidad en la cesin de
derechos de explotacin, no hay restriccin a los derechos de autor ni a la libertad
del usuario, pero es un hecho la cesin gratuita en muchas ocasiones. Adems,
a quin se cobra por una cesin de derechos de explotacin muy amplia y con
destinatario indeterminado? Este asunto es muy terico y no merece ms atencin en
este momento.

Libertad de modificacin
Tampoco aqu encontraremos a estas alturas dificultades mayores, aunque siempre
es posible complicarse la vida. Uno puede modificar libremente un programa libre,
que lo es porque entre otras cosas se dispone de su cdigo fuente. Puede traducirse,
transformarse, combinarse con otros, o dividirse. Todos los programas o colecciones

Plataforma de Teleformacin de IFES

Pgina 289 de 384

de programas obtenidos son obras derivadas, pero (un gran pero) no necesariamente
libres.
Qu ocurre si redistribumos un programa en el que hemos includo parte del cdigo
de un programa libre? Que el programa obtenido ha de ser libre en su totalidad. Es
decir, no puede extraerse de un programa libre copias u obras derivadas que a su
vez se licencien como libres slo en la parte derivada. En varias ocasiones la GPL
tiene en cuenta este supuesto, especialmente para los trabajos derivados (clasula
2), exigiendo que la licencia se aplique al programa "como un todo" , de modo que el
carcter libre se transfiera al programa derivado. Aunque hay excepciones.
Esta es una exigencia coherente con las bases del sistema copyleft, de hecho es
la primera exigencia del copyleft, en el mbito de la modificacin de programas.
Es el primer supuesto que nos encontramos en nuestro recorrido con el llamado
incorrectamente "virus copyleft" , calificado tambin de efecto contaminante. Desde el
punto de vista de las libertades del usuario es ms bien un efecto supermineralizante,
reconstituyente. Estos calificativos no tienen mucha importancia, s el efecto mismo
por supuesto. Pero esta restriccin no es toda la clusula copyleft, en realidad no lo
es en absoluto en cuanto a las modificaciones que no se redistribuyen. Ms bien, la
transmisin del carcter libre de un programa original a sus derivados es una exigencia
del copyright: Si el programa original es copyleft, porque el derecho del autor del
programa derivado se origina en una licencia copyleft, de la que no puede sustraerse. Y
si el programa original no es copyleft, exactamente igual.
Luego el mal llamado carcter contaminante del copyleft resulta que se da bajo
cualquier licencia, como cualquier jurista esperara. Las crticas habituales suelen
tener lugar en otro plano, sea econmico, empresarial o poltico. Por ejemplo, que
la contaminacin por licencias no libres es una calamidad para el usuario, que la
producida por licencias Open Source no copyleft es incierta, y que la producida por
el copyleft es defitivamente una bendicin para el usuario y la libre computacin en
general, porque mantiene la libertad. Nada de esto se deduce del Derecho, que,
todo lo ms, establece reglas muy generales, como que lo accesorio sigue la suerte
de lo principal (art. 379 CC) y que los derechos sobre una mezcla indivisible son
proporcionales a los elementos mezclados (art. 381 CC), siempre que no haya otros
pactos.
Puede darse el caso de un programa que posee partes identificables no derivadas
de un programa libre. Entonces, y siempre que se trate de trabajos independientes y
separados ( "autnomos" en nuestra nomenclatura del apartado 1), slo entonces no
se transmite el copyleft. Pero si esas partes se distribuyen como un todo derivado del
programa libre, la distribucin del todo debe producirse segn la licencia libre, cuyas
autorizaciones se extienden al todo. La finalidad de esto (vase cl. 2 GPL) no es otra
Pgina 290 de 384

Linux

que la de controlar la distribucin de los trabajos derivados del programa libre. Adems,
y esto es esencial en las distribuciones y paquetes, la reunin o coleccin de trabajos
libres y no libres en un volumen de almacenamiento o medio de distribucin NO hace
que unos trabajos pasen al mbito licenciado por otros. Esto se ajusta como un guante
a las reglas comunes, o sea las del CC que hemos citado. Vamos a ser ms explcitos.

Adquisicin de propiedad: Unin y especificacin de


cosas
Como base del debate sobre cmo han de transmitirse los efectos de las licencias
de programas originales a los programas derivados, vamos a utilizar las reglas del
CC citadas arriba, y algunas ms. Se trata de saber cmo se adquiere la propiedad
sobre objetos derivados, bien por unin de cosas distintas (mezcla y adjuncin), bien
por especificin de una cosa. Este es un viejo asunto de los juristas, desde hace ms
de 2000 aos. "Nada ms complicado y de ms difcil apreciacin jurdica en la vida
real... Las relaciones que supone... han llegado a [considerarse] de casi imposible
determinacin..." , as se expresaba un magistrado, J.M MANRESA, hace un siglo
aproximadamente. Con esta alentadora perspectiva, vamos a basarnos en las normas
del CC aplicables a los bienes muebles, porque de cierto que los programas de
ordenador no son inmuebles (!).
Unin de programas
Tenemos dos tipos de unin de cosas, la mezcla y la adjuncin. La mezcla de
elementos supone que stos resultan despus inseparables, de modo que cada
propietario adquiere un derecho proporcional sobre la parte que le corresponde segn
el valor de las cosas mezcladas (art. 381 CC).
La adjuncin ocurre por la unin de cosas heterogneas que se unen indisolublemente
para constituir un solo y nuevo objeto, no desmontable. En este objeto pueden
distinguirse tal vez sus antiguos componentes, pero no pueden ya separarse. En
este caso, la regla es que lo accesorio sigue la suerte de lo principal (art. 375 CC).
Accesorio es lo que facilita el uso o perfecciona lo principal (art. 376 CC). Pero suele
utilizarse como criterio ms prctico el del valor econmico de los componentes (art.
377.1 CC).
Versiones de programas o especificacin
La especificacin consiste en dar a una cosa una nueva forma. Ms estrictamente,
es dar nueva forma a una cosa ajena, crendose as una nueva cosa de ms valor.
El art. 383 CC dice que el especificador hace suya la cosa nueva, si efectivamente

Plataforma de Teleformacin de IFES

Pgina 291 de 384

es de mayor valor, aunque habr de indemnizar al dueo de la cosa especificada


( "versioneada" ). En otro caso, ste puede optar por quedarse con la nueva especie,
indemnizando el valor de la obra nueva; o pedir indemnizacin de la materia original.
Todo esto slo vale si quien mezcla, adjunta o especifica acta de buena fe.

Exigencias razonables para la modificabilidad del


software
Por supuesto, no hay modificacin factible de un programa de ordenador si no se
dispone del cdigo fuente. La disponibilidad del cdigo recompilable puede darse de
varias formas, pero slo algunas son admitidas en la definicin de software libre. Habr
de escogerse alguna de stas en tal caso y dependiendo de la explotacin que se
prev:

Acompaar las fuentes completas en formato electrnico y en el soporte


habitualmente utilizado para intercambiar programas. Actualmente estos
medios y soportes son casi siempre ftp annimo y/o CDROM. La carencia
simultnea de estos dos citados resulta inaceptable.
Acompaar un compromiso escrito, vlido por un plazo razonable (la FSF
exige 3 aos), de proporcionar las fuentes a quien las pida a un coste no
superior al de la distribucin fsica por medio estndar (ftp y CDROM al
menos).
Una tercera forma de poner a disposicin el cdigo fuente, y que
normalmente slo debera aplicarse a usos no comerciales, es la de
acompaar el programa con la informacin recibida por el licenciatario sobre
la oferta anteriormente citada del cdigo fuente. Esto sirve para disminuir
costes y no cargar a ciertos usuarios con elementos posiblemente intiles.
[Queda claro que las frmulas segunda y tercera slo tienen sentido cuando
la distribucin del programa nicamente es en programa objeto o binario
ejecutable]

La LPI no define "cdigo fuente" . La GPL y las OSD dicen que es "la forma preferida
del trabajo cuando se hacen modificaciones" . Para un ejecutable, fuente es el cdigo
completo de todos sus mdulos, ficheros asociados de definicin de interfaces y
guiones utilizados para controlar la compilacin e instalacin del ejecutable. No
comprende necesariamente el cdigo que suele acompaar a los componentes
principales del sistema (el compilador y el ncleo sobre el que funciona el ejecutable),
salvo que el propio componente principal acompae al ejecutable.

Pgina 292 de 384

Linux

Libertad de distribucin
Todas las formas anteriores de explotacin pueden ser realizadas individualmente
y sin conocimiento por nadie. Pero la distribucin es inherentemente relacional, ya
que hay intercambio, y es en este punto en el que reside una de las ms importantes
polmicas dentro del sl. En su seno, la libertad de distribucin no se pone en duda,
libertad sin restricciones aparentes, salvo por cuestiones formales, algunas limitaciones
geogrficas lgicas, asuntos de poca monta comparados con la general libertad de
distribuir y redistribuir programas originales o transformados.
Tambin est claro para todos que la distribucin slo es libre si puede tener por
causa cualquiera que sea lcita: nimo de lucro, altruismo, proselitismo... Asmismo no
admite dudas que el sl slo es libre si la licencia del programa libre original persiste
durante toda la vida til del software y de sus derivados, que por lo tanto tambin han
de ser libres. La cuestin es la de la transmisin de efectos de las licencias, que ya
avanzamos en el apartado anterior. Se transmite el carcter libre de un programa
a sus programas derivados siempre, o slo para determinadas modificaciones
(derivaciones, agregaciones, paquetes, bibliotecas, distribuciones), tal vez slo para
la redistribucin? O se reconstituye plenamente el copyright? Esto depende de la
licencia misma, y por eso el movimiento del software libre se articula no mediante una
forma especial de escribir cdigo, ni por una nueva mercadotecnia, ni por el apoyo del
sector empresarial, todo eso son consecuencias de mover la palanca sobre cierto punto
de apoyo: esos extraos e indigeribles documentos llamados licencias de software.
El criterio para resolver el dilema reside, obviamente y una vez ms, en las libertades
ciudadanas, incluidas las exigencias de la libre competencia, entre las que no est
-ms bien al contrario- la limitacin de entrada en el mercado por apropiacin de
resultados obtenidos en el desarrollo de software, mucho menos de software libre. As,
el copyleft es una exigencia de la autntica libre competencia.
No se conoce ninguna norma jurdica que prohba la apropiacin del software, ah est
la LPI para garantizar que los programas pertenecen a sus autores. Pero el art. 81
del Tratado de la Comunidad Europea (ojo: en la nueva numeracin de Amsterdam)
califica de incompatibles con el mercado comn, y quedan prohibidas, las prcticas
tendentes a impedir, restringir o falsear la competencia; y en particular el limitar o
controlar la produccin y el desarrollo tcnico, subordinar la celebracin de contratos
a la aceptacin por la contraparte de prestaciones suplementarias sin relacin con su
objeto. Tambin prohbe el art. 82 abusar de la posicin dominante, p. ej. limitando
la produccin o el desarrollo tcnico en perjuicio de los consumidores. No es el sl el
que usa estas prcticas, de hecho las dificulta. Por contra, hay paladines del software

Plataforma de Teleformacin de IFES

Pgina 293 de 384

cerrado y (tericamente) de la libre competencia que se encuentran expedientados en


Bruselas por presuntas prcticas ilcitas.
Este apartado 4 trata de las libertades del usuario de software, no de los derechos de
autor. Muchos entienden que la libertad del usuario no puede restringirse mediante
el uso de la misma libertad. Si quien modifica un programa libre hace uso de sus
derechos de autor (de su libertad, dir l tal vez) aadiendo en la licencia del programa
derivado (y en perjuicio de sus usuarios) restricciones que no figuraban en la licencia
del programa libre original, lo que est haciendo no es ejercitar sus derechos de
autor -que estn indeleblemente unidos a la licencia libre original- sino apropiarse
ilegtimamente de algo que no le corresponde a l en exclusiva, la libertad de los
dems a usar y explotar libremente el nuevo programa, libertad garantizada por las
constituciones, sin duda por la Constitucin espaola cuando reconoce el derecho
fundamental a la produccin cientfica y tcnica (art. 20.1.b CE).
Las licencias libres tipo BSD-original no pudieron tener en cuenta que el software
estaba empezando a ser usado masivamente y a gran escala, los fabricantes
intentaban patentar los productos y prescindir de una vez por todas de los desarrollos
abiertos. Habiendo encontrado mejor cobijo en la ley de derechos de autor que en la de
patentes, actualmente han debido frenar su expansin tras la recuperacin del modelo
de software libre.
Este modelo se ha repuesto del declive de los aos 80 aadiendo a su definicin
la nica prohibicin importante que contiene la licencia deseable: Est prohibido al
destinatario de un programa libre restringir la libertad de explotacin de los programas
derivados creados por l. Esta prohibicin es tan importante que se dedica el apartado
siguiente slo a ella. Tiene incluso nombre propio.

Copyleft o prohibicin de aadir restricciones sobre los


programas derivados de un programa libre
La esencia jurdica del software libre se encuentra en la libre explotacin de los
programas por los usuarios, sin discriminacin. A su vez, el autor de un programa
derivado tiene el derecho exclusivo de autorizar o prohibir la explotacin de su obra.
Pero el programa derivado existe y es legtimo porque la licencia del programa original
facilita su creacin, porque es libre. Y como es libre, exige la persistencia de la
libertad de uso y explotacin sobre los programas derivados. De haber resistido las
universidades en las ltimas dcadas sus carencias financieras de otra guisa, y no
aprovechando a toda costa el modelo de patentes, tal vez no hubiera sido necesario
tener que recordar semejantes afirmaciones. Pero ha sido necesario. El recordatorio de

Pgina 294 de 384

Linux

la existencia de libertades fundamentales, constitucionalmente garantizadas, ha tomado


la forma de una clusula prohibitiva, la clusula copyleft.
El mejor ejemplo de clusula copyleft es, de nuevo, la GNU-General Public License, o
simplemente GPL, publicada por la Free Software Foundation. En realidad la clusula
se halla dividida en tres apartados, nmeros 4, 6 y 10 de la versin 2 de 1991.
Las modificaciones sobre la licencia original pueden ser irrelevantes (correcciones
gramaticales, de ordenacin, inclusin de asuntos ajenos al derecho de autor). El
copyleft se ocupa slo de las modificaciones relevantes, que afectan a los trminos
de la explotacin del programa. Pueden a su vez ser de dos tipos: las que hacen
la explotacin ms libre (difciles de imaginar) y las que la restringen, por ejemplo
cerrando el software, licencindolo slo para uso no comercial, impidiendo su
modificacin, copia o redistribucin. De stas s hay numerosos ejemplos. Son las del
segundo tipo las modificaciones prohibidas por el copyleft. La LesserGPL permite una
excepcin "estratgica" , para las bibliotecas y otros elementos, que no podemos tratar
aqu, ni es para nuestro estudio demasiado importante.
Persistencia de la libertad del software
El copyleft pretende justamente la transmisin de los efectos de la licencia del
programa originario a las licencias de los programas derivados, como cualquier licencia,
aunque no se trata slo de eso: Requiere seriamente la persistencia del carcter libre
del software libre modificado y (re)distribuido. El copyleft preserva el carcter de sl
prohibiendo que de un programa libre se obtenga otro no libre o que se redistribuya con
restricciones adicionales a las libertades de los destinatarios.
El copyleft no afecta directamente a los derechos del autor del programa originario,
pero s a los del autor del programa derivado en el momento de su redistribucin.
Cmo es esto posible? Porque el segundo acept la licencia del primero. Copyleft
no es lo contrario de copyright. El copyleft contiene lo que tcnicamente se conoce en
Derecho como "condicin resolutoria" [otros preferirn hablar de "modo" , pero esto
apenas tiene importancia]. Se trata de un suceso (condicin) que, de darse, produce
determinado efecto en los derechos. El suceso en nuestro caso es la infraccin de una
licencia, que por tanto queda desactivada (resuelta). La condicin resolutoria implcita
en el copyleft se produce al aadirse restricciones a la libre explotacin del programa
derivado sobre las que figuraban en la licencia del programa original.
La clusula copyleft la impone el autor de la obra original en uso de sus facultades
de copyright, no en contra de tales facultades, que ya hemos demostrado no quedan
afectadas por ello. Y la aceptacin por el destinatario de la licencia con clusula
copyleft supone que si vulnera la clusula, la licencia deja de ampararle a l y al

Plataforma de Teleformacin de IFES

Pgina 295 de 384

programa derivado que redistribuya, que pasa a ser automticamente ilegtimo. Lo


mismo que en cualquier explotacin de otras obras intelectuales distintas del software.
Estructura de la clusula copyleft
El copyleft es fcil de entender, se condensa en una prohibicin. Pero lo cierto es que
se encuentra formada por varios elementos:
1.

2.

3.

Una sujecin: No cabe explotacin del programa sino en los mismos


trminos copyleft. Cualquier explotacin en trminos diferentes no queda
amparada por la licencia. Esto es un requerimiento general en casi cualquier
contrato de cesin de derechos. La explotacin indebida por alguien no
afecta a todos los dems que s ajusten el uso del programa copyleft a sus
trminos.
Una obligacin: Quien redistribuya el programa copyleft u otros derivados
de l, ha de poner ipso facto a disposicin del receptor una licencia copyleft
equivalente, sin restricciones adicionales. Como aclara la GPL (cl. 6),
el licenciatario original, ahora licenciante del programa derivado, no es
responsable del incumplimiento de la licencia original por terceras personas.
Pero s es responsable de ajustar la redistribucin a los trminos copyleft.
Una carga: Si se desea incorporar partes del programa copyleft a otros
programas libres que tengan condiciones de distribucin distintas, debe
obtenerse permiso del autor de aqul. Es decir, la incorporacin es posible
pero su legitimidad no es automtica, depende de que en la transmisin
de derechos se preserven las condiciones que hacen libre al programa
incorporado, y se promueva o fomente el uso compartido y la reutilizacin del
software en general.

La clasula copyleft se complementa con una aclaracin y una excepcin, ambas de


poca importancia en el fondo:

Integridad del copyleft en caso de impedimento forzoso a la libre


distribucin (cl. 7 GPL): No puede redistribuirse un programa copyleft si,
por impedimento forzoso (decisin judicial, vnculo con patentes, etc), la
redistribucin no va a poder ser copyleft.
Posibilidad de limitaciones geogrficas a la distribucin libre (cl. 8 GPL):
Normalmente por motivos de vinculacin con patentes o interfaces bajo
copyright, pero siempre que se incluyan en la licencia indicaciones al
respecto, claras y prominentes.

Y esta es la construccin jurdica, tomada de la FSF aunque podra servir cualquier


otra. Ha sustentado, desde el Derecho y sin litigios judiciales, la realizacin de sistemas
como GNU, del ncleo Linux, de colectivos como Debian y de innumerables foros; ha

Pgina 296 de 384

Linux

estimulado la formacin de empresas, proyectos editoriales y docentes; la aparicin de


cuerpos orgnicos de software libre en distribuciones multiformes... No son sus nicos
frutos, como se ver en el apartado 5.
Notas finales, un poco fuera de lugar
El copyleft, mediante un dispositivo jurdico impecable, da y asegura la libertad,
protege al autor favoreciendo la explotacin de su programa, incluso por s mismo si
lo desea, e impide en fin que nadie, salvo eventualmente l mismo y con dificultades,
tome demasiado control en el desarrollo. Es un artilugio equivalente, salvando
ciertas distancias, a la divisin de poderes del Derecho constitucional (LOCKE,
MONTESQUIEU y dems). El control por el explotador del programa nunca podr ser
absoluto, pero el de los dems usuarios y desarrolladores tampoco. Y el programa con
ms distribucin ser necesariamente el mejor posible, en otro caso ser corregido
rpidamente. Etc.
Esto es tericamente cierto, pero la realidad no se ajusta exactamente a esta
descripcin. Por qu? Porque la rentabilidad financiera del copyleft slo se manifiesta
si alcanza a cubrir una rama de desarrollo mnima explotable, sea un solo programa
o una plataforma completa. Si no es el caso, no deja por ello de ser rentable, pero no
necesariamente en trminos financieros, de generacin de ingresos, de inversin y
crecimiento. Hay otras rentabilidades buscadas por el copyleft, prioritarias en realidad.
Hay economistas que pueden demostrar si es o no cierto lo anterior, al cabo slo una
conjetura.
Evidentemente no es cierto que el copyleft haga a un programa menos libre porque
"limita la libertad del autor del software derivado" . Esta es una apreciacin incorrecta.
Por una parte, el copyleft preserva el carcter libre del software sin afectar en nada a
la esencia del copyright (s por supuesto al ejercicio de determinadas facultades del
copyright, como cualquier contrato de cesin de derechos de autor). Segundo, entre
la libertad de un nmero determinado de usuarios que desean apropiarse del software
derivado y la del nmero indeterminado de usuarios que no tienen tal intencin,
el copyleft opta por stos, pero no exactamente quitando libertad a aqullos, no
restringindoles su libertad de eleccin (lo que s se produce mediante determinadas
prcticas comerciales en perjuicio de los usuarios) sino hasta despus de aceptar la
licencia, que por tanto han de respetar. Para todos los dems usuarios, los que no
desean vulnerar la libertad de distribucin, el copyleft simplemente no les supone ni
siquiera una prohibicin, porque la mayora nunca agotamos toda la libertad que se
nos ofrece. Si el copyleft es una camisa de fuerza, al menos se la pone uno mismo.
Pero ms bien el copyleft es un pacto de no agresin, y esto es saludable, no vrico.
Al contrario, hay pautas comerciales que s pueden resultar vricas, lo son de hecho.

Plataforma de Teleformacin de IFES

Pgina 297 de 384

Pero es tan fcil hablar en trminos tales (contagio general-monopolio, etc) como poco
seguro.
El copyleft, o ms bien las manifestaciones de su potencia, son una materia enorme,
que excede lo jurdico con creces. Se ha pretendido con lo anterior dar breve cuenta
de ello. Quedan muchas cuestiones por tratar y explicar, como las dobles licencias,
la remota posibilidad de un programa copyleft que entra efectivamente en dominio
pblico, los problemas especficos de los paquetes, distribuciones, medios de
almacenamiento y canales de distribucin. Confiamos en una versin ulterior de este
artculo para tratarlos apropiadamente.
No obstante la claridad de su construccin jurdica, y por razones que en este artculo
no podemos tratar sino muy por encima, a los hombres de negocios el sistema copyleft
no les gustaba. Teman su aspecto comunista, anarquista o libertario. En esencia,
no les gustaba la clusula que impeda apropiarse, al no restringir la libertad de
los dems, del trabajo realizado a costa de su dinero. Tambin se encontraban los
programadores que sufran un temor anlogo respecto del futuro fruto de su esfuerzo.
Este temor provena de un malentendido, inexcusable pero persistente, acerca de
cmo rentabilizar los proyectos copyleft, normalmente origen de riqueza (fondo) si
son buenos claro est; pero no necesariamente generadores de dinero (flujo) si la
explotacin es defectuosa. En el software no copyleft no pasa exactamente lo mismo,
porque los costes de desarrollo y mantenimiento no garantizan siquiera lo primero. Por
supuesto, tambin el software no libre puede ser objeto de explotacin defectuosa.
El caso es que en el movimiento del software libre se produce una bifurcacin en
1997-1998. Para nosotros es "la" bifurcacin, porque afect a las definiciones y a las
licencias y su clasificacin.

Autorizacin de restricciones adicionales: Open Source


La distribucin de software, y en particular la re-distribucin de software modificado,
es el punto crtico del sl. La Iniciativa Open Source (OSI) surge de las Directrices
Debian de Software Libre (DFSG), adaptadas en 1997 sin cambios sustanciales a unos
trminos ms generales bajo el rtulo que se usa actualmente: Definicin de Fuente
Abierta (Open Source Definition - OSD). No se trata de una licencia, ni siquiera de un
modelo de licencia, sino de directrices para la clasificacin y adopcin de licencias en
productos de software (programas, paquetes y distribuciones).
La definicin de fuente abierta no es del todo equivalente a la de software libre. Las
diferencias esenciales son dos: Una fundamental, pues la OSD entiende por libertad
del usuario una situacin jurdica menos amplia que el sl, segn la definicin de ste
hecha por la FSF, que es la que estamos utilizando en este artculo por su notable rigor

Pgina 298 de 384

Linux

y ajuste a las exigencias constitucionales y legales espaolas. La otra diferencia es


instrumental, est ubicada en la clusula de persistencia del sl, que en la OSD no es ya
necesariamente software libre tras la distribucin, con o sin modificaciones del software
originario. Se permite aadir determinadas restricciones a los trminos de distribucin
de originales y redistribucin de derivados. Esto es una simplificacin compacta que
debe explicarse y matizarse.
El punto de vista de la FSF no es slo econmico, que no se excluye de todos modos,
sino ultrajurdico pues comprende tambin postulados ticos y por lo tanto filosficos.
El punto de vista de la OSI, que reconoce inspirado por la FSF, es sin embargo slo
econmico (disminucin de precios, apertura de nuevos mercados). Se trataba de
atraer a los hombres de negocios y a importantes sectores de desarrolladores al
movimiento del sl, lo que se consigui en parte. Pero no se logr mediante la atraccin
de aqullos al mbito del sl, sino eliminando la necesidad de persistencia del sl, vale
decir llevando a los usuarios al coto de los temerosos. El copyleft qued eliminado de la
definicin deseable de sl, se volvi a las definiciones ms antiguas, perfeccionadas es
cierto, de lo que poda entenderse por software libre, expresin que adems se cambi
por "fuente abierta" , menos expresiva en ingls y todava menos en castellano. Para
el Derecho, la OSD no impide restringir la libertad del usuario, facilita la apropiacin del
software derivado, aunque su intencin primordial sea asegurar al autor la posibilidad
de apropiacin exclusiva del fruto principal del esfuerzo invertido, sobre todo en los
desarrollos ms originales, con marca, etc.
Estructura de la OSD
Para examinar detalladamente la OSD bastara con tratar cuatro de los diez apartados
que tiene la versin 1.0, ya que el ltimo es tan slo es un ejemplo, sin valor normativo,
y los cinco restantes tratan cuestiones que han quedado ya examinadas en apartados
anteriores. Pero slo daremos unas breves notas.
Interesan los apartados que eliminan la necesidad del copyleft y, en general, la
persistencia de la libre explotacin, que son los nmeros 3, 4, 8 y 9. El nmero
3 permite cambiar los trminos de sl del programa originario a trminos no libres
en el programa derivado (tipo BSD), y se justifica -errneamente- en la necesidad
de evitar al autor del programa originario el riesgo que supone a su reputacin la
derivacin de un programa con cdigo muy defectuoso que se pudiera atribuir no al
autor derivado, sino a l, al autor del programa original. Lo mismo para evitar caballos
de troya, prohibiciones locales sobre transferencia tecnolgica, como en criptografa,
etc. El apartado 4 exige la integridad del cdigo original (algo legtimo) con medidas
innecesariamente restrictivas. El punto 8 sirve para separar claramente un programa
libre de una coleccin no libre de software. El programa libre lo seguir siendo en
cuaquier caso, incluso si despus se desagrega de la coleccin. Y el 9 seala que la
Plataforma de Teleformacin de IFES

Pgina 299 de 384

parte no transmite su carcter al todo. Esto supone la estanqueidad de las licencias.


La eficacia de la licencia de un programa no depender de las de los otros que se
encuentren en el mismo medio o soporte.
El argumento de la posible mayor vulnerabilidad del sl frente al software no libre, por
ejemplo ante caballos de troya, simplemente no tiene que ver con las condiciones
jurdicas de modificacin y distribucin del software, y naturalmente no es tratado aqu.
El software no es vulnerable en ese sentido por motivo del tipo de licencia que lleva
aparejada. S es necesario, en ciertos mbitos de distribucin y ante cierto tipo de
modificaciones (es decir, no siempre) un seguimiento adecuado de las versiones y de
su autora. Pero estas exigencias no se atienden alterando el sistema copyleft, basta
el sistema de marcas, que nada tiene que ver con los derechos de autor; y un buen
sistema de control de versiones, se supone. No podemos tratar estos asuntos ahora, y
tal vez estemos en un error. Pero hay indicios de que estos argumentos contra el sl y el
copyleft son invlidos.
Para disipar los temores de los hombres de negocios, o quienquiera que vea tras
el copyleft al gran satn, es aconsejable muchas veces el uso adecuado de la Ley
de Marcas. Quien desee apropiarse de sl para mantener la autora sin riesgos de
confusin har mejor en registrar una marca, crendose as versiones oficiales de fcil
control y gestin. Esto es lo que se ha hecho con Linux -que es GPL- y tantos otros
casos. Todo ello sin tocar la licencia libre, incluso manteniendo la clusula copyleft.

Clasificaciones de las licencias


No vamos a reproducir las clasificaciones ms importantes, que puede encontrar
el lector en www.gnu.org/philosophy/categories.html y en el artculo de B. Perens
en "Open Sources..." citado al final, Apndice C. Aqu nos basta retener tres
clasificaciones muy generales pero importantes:
1.
2.
3.

La divisin bsica con la que se est de acuerdo, aunque no completamente,


entre software libre-software no libre. Esperamos haber convencido al lector
de que el trmino open source-fuente abierta es menos riguroso.
La divisin GNU aade dos criterios ms a su clasificacin de licencias:
"grado" de copyleft y compatibilidad con el sistema GNU, que aunque son de
inters no podemos tratar ahora.
La compatibilidad Open Source se basa en criterios ms simples que los
anteriores de GNU, stos ms rigurosos en todos los sentidos.

Confiamos en versiones ulteriores de estas notas para desarrollar todo esto como
merece.

Pgina 300 de 384

Linux

Infraccin de una licencia de software libre


Para este asunto se recomienda consultar www.gnu.org/licenses/gpl-violation.html. All
se ofrece sintticamente el camino para reaccionar ante lo que uno cree que es una
infraccin de las condiciones de explotacin y uso del software libre. En resumen, se
trata de comprobar la infraccin, documentarla, e informar al titular del copyright, nico
legitimado en apariencia para actuar contra el infractor. La FSF presta asistencia para
reaccionar contra las infracciones de la GPL.

Reaccin por quien no es titular del copyright


En este subapartado presentamos una conjetura, probablemente vlida, pero de la que
desconocemos aplicaciones prcticas: Es muy probable que en Espaa dispongamos
actualmente de una o dos frmulas de reaccin adicionales frente a un atentado contra
una licencia de sl, vas que GNU-Espaa extraamente no menciona, y que trataremos
de demostrar sumariamente.
Es cierto que, bajo una licencia de software libre con copyleft, estrictamente hablando
slo el titular del copyright (que no es necesariamente el autor!) tiene accin jurdica
contra la infraccin de su derecho, manifestado en la licencia violada. Pero tambin
lo es que los usuarios del programa copyleft cuya licencia alguien ha infringido tienen
inters legtimo en que la infraccin se rectifique. Los usuarios pueden incluso haberse
organizado, por ejemplo en un colectivo de desarrolladores o simplemente en una
asociacin de consumidores. Pues bien, la suma [inters legtimo + organizacin de un
grupo de consumidores] abre claramente la va judicial tambin para quienes no son
autores, va no basada en el copyright directamente sino indirectamente, a travs de
la licencia. De hecho, debera bastar el inters legtimo esgrimido por un solo usuario,
pero esto puede resultar a menudo impracticable y es de ms difcil digestin por los
jueces.
Esta va est fundamentada muy sencillamente en el ensamblaje de varios preceptos
de la Constitucin espaola y algunos ms de otras leyes ordinarias. En sntesis,
se trata de la proteccin judicial de un genuino inters legitimo, para el que los
grupos, y singularmente las Asociaciones de Consumidores, se dice que tienen
"legitimacin activa" . Puede llegar a obtenerse incluso proteccin administrativa
(oficinas municipales de consumo, p. ej.). No nos extenderemos aqu, slo citaremos
los artculos, que el lector puede consultar por su cuenta: arts. 9.2 y 24.1 CE, 2.1.e y .f
LCU y 6.7 LEC.

Plataforma de Teleformacin de IFES

Pgina 301 de 384

Con esto ha debido de quedar tratado lo ms importante. Para completar el cuadro slo
resta tratar brevemente dos asuntos complementarios y de distinto inters.

Expansin del modelo de las licencias de software libre


Este apartado se incluye como ilustracin del potencial de la construccin jurdica
contenida en las licencias de software libre, y no pretende ni de lejos dar cuenta al
mismo nivel que en los apartados anteriores de los modelos que se citan.
La Licencia de Documentacin Libre. Otras licencias similares
No vamos a tratar de la licencia de documentacin libre, GNU-FDL (GFDL o
simplemente para nosotros FDL), propuesta por la FSF para los manuales de uso,
documentacin tcnica y otros textos. El lector sabr ahora leerla y comprender
su significado por s solo, es similar a la GPL. Estrictamente hablando, en Derecho
espaol no es necesaria, pues la documentacin de un programa se protege con el
mismo copyright que el del programa mismo. Pero en la prctica es muy til, por dos
razones: En primer lugar permite modular las exigencias de una licencia copyleft,
pensada para el software, a las de los textos escritos, por ejemplo preservando algunos
fragmentos, normalmente todo el contenido no tcnico, clusulas externas, etc, de
la caracterstica autorizacin de libre explotacin. Es la licencia apropiada para la
documentacin del software, pero no slo. Efectivamente, y en segundo lugar, una
licencia como la FDL permite, sin merma de los derechos de autor, la formacin de
proyectos colectivos de documentacin libre, normalmente tcnicos y cientficos. No es
apropiada para libros de poemas y memorias, al menos no se pens con esa finalidad.
En general, la documentacin FDL debe permitir la libre modificacin del contenido
tcnico, no del valorativo-personal.
Para la FDL, en la documentacin libre debe distinguirse claramente los siguientes
textos de un manual o trabajo tcnico cualquiera:

Textos de Cubierta, que son los de Portada y Contraportada.


Pgina de Ttulo, que incluye la pgina de ttulo misma y adems las
necesarias para contener legiblemente cuanto la FDL requiere. En los libros
con formatos carentes de esta pgina, se llama Pgina de Ttulo al texto
inmediato a la aparicin ms prominente del ttulo de la obra, que precede al
comienzo del Cuerpo del Texto.
Cuerpo del Texto.
Secciones Secundarias, para materias como notas editoriales, advertencias
legales, valorativas, etc, sin conexin directa con el Cuerpo del Texto.
Dentro de ellas se encuentran las Secciones Invariantes, inalterables en las
modificaciones.

Pgina 302 de 384

Linux

Puede, incluso a veces debe, incluirse secciones como Historia,


Reconocimientos y Dedicatorias. Obligatoriamente han de quitarse en
las modificaciones las aprobaciones (endorsements), homologaciones o
similares que recaigan sobre el texto original, pues son exclusivos de ste.

La advertencia de copyright y el aviso de licencia FDL deben contener las siguientes


indicaciones: a) cules son los Textos de Cubierta, si los hay, ya sean de portada o
contraportada; y b) cules son las Secciones Invariantes. No puede exponerse ahora
ni siquiera los aspectos ms relevantes de este singular sistema de liberacin de
facultades de propiedad intelectual.
Tal vez a los tericos del sl les sorprenda que el ejercicio del Derecho sea una
profesin abierta, en el sentido de que los profesionales intercambiamos libremente
nuestros conocimientos y argumentaciones jurdicas (no los derechos sobre nuestros
libros!). Es un hecho normal, indiscutido, el que unos a otros nos fusilemos nuestros
textos, desde siempre jams, con ciertos lmites, claro est. La FDL y otras licencias
parecidas tal vez completen el rgimen de libertad intelectual de que disfrutamos los
juristas, propiciando p. ej. textos universitarios libres, de los que tan necesitados estn
los estudiantes, los profesores y los profesionales.
El examen de la documentacin libre requerira un trabajo por s solo, pero en cuanto al
contenido jurdico de las licencias lo esencial ya ha quedado expuesto antes. Adems
de la FDL se puede encontrar documentacin amparada en licencias libres como la
FreeBSD Documentation Lic., la Apple's Common Documentation Lic., la algo menos
estricta Open Publication Lic., que puede o no aplicarse "copylefting" , y algunas ms.
Tambin se dispone de la Open Science Lic., licencia libre y copyleft, redactada para
dar esa cobertura a datos en general, no slo software.
Advirtase que otra idea surgida en el seno de Debian, Open Hardware, no tiene
directamente que ver con las licencias de software. Consiste en un programa de
certificacin, exactamente de calificacin de hardware segn ciertas especificaciones,
diseado para verificar que una configuracin de mquina es apta para un sistema
Linux o FreeBSD. Incluye la promocin de un certificado de la verificacin, llamado
"certificado open hardware" para uso por los vendedores y consumidores.

Software no libre
Comprende todo el software que no es libre. Es un gnero, con muchas especies.
Primero tenemos el software semilibre, cuya licencia contiene autorizacin para la libre
copia, modificacin y distribucin, pero siempre que no tengan carcter comercial. Esta
es una restriccin muy importante sobre todo a la distribucin, que desnaturaliza la
Plataforma de Teleformacin de IFES

Pgina 303 de 384

finalidad del sl, por eso no lo calificamos como libre. Por ejemplo, el software semilibre
no permite su incorporacin a paquetes copyleft. La restriccin de la autorizacin a la
explotacin no comercial aade muy poco a la libertad de uso, o ms bien restringe la
posibilidad de ser utilizado. Parte de una idea errnea o de una valoracin incorrecta
del nimo de lucro. La primera versin de la GPL encajaba en esta definicin, pero la
versin 2 (1991) retir la restriccin, por innecesaria.
El segundo grupo de software no libre es el "propietario" . Esta denominacin es
inexacta por ms de un motivo. Con ella quiere denominarse lo que la FSF llama
"software no libre que no es semilibre" . Podra decirse entonces que es software
aprisionado, enjaulado, inaccesible. Desde luego est lleno de limitaciones al libre
uso, es intransferible, incopiable sin convertirse uno en infractor, inmodificable (no
mejorable por los usuarios directamente) y de ningn modo redistribuble. En este
artculo preferimos denominarlo software "cerrado" . As entendidos, estos programas
ni siquiera forman parte de la mquina. No seran ni contendran piezas que uno puede
examinar, reparar, o sustituir si son defectuosas. Pero la realidad es que el software
s forma parte de la mquina, y no hay razn para que quien puede reparar o repintar
o recauchutar un automvil utilitario no pueda hacerlo en un programa utilitario, sobre
todo si es un sistema operativo o un compilador.
Hay otras subespecies de software no libre, las repasamos en los apartados siguientes,
apuntando rpidamente las restricciones que imponen a las libertades bsicas de los
usuarios.
En este artculo no tratamos el pseudotipo "software comercial" , categora para
nosotros intil porque no es puesta en cuestin por el sl; aunque s por el software
semilibre, que no admite el uso comercial de los programas licenciados. Tampoco
podemos tratar fenmenos tan extraos como MSAgent, una especie de "software libre
revocable" que no es en modo alguno software libre.

Restricciones de uso
Lo que califica a un programa como semilibre es que su uso y explotacin quedan
limitados a un destino no comercial. Esta restriccin no resulta aceptable, ya lo hemos
dicho, y no la trataremos ms.
Tambin el software cerrado impone graves restricciones de uso del software. Se
prefiere en este artculo llamar al software propietario "software cerrado" no por afn
de neologismo sino para ilustrar mejor que su uso y explotacin no son libres, adems
de por correccin idiomtica y jurdica. Sobre l no es preciso decir mucho ms de
cuanto ha quedado expuesto en los apartados anteriores, y quien desee informacin

Pgina 304 de 384

Linux

adicional har bien en acudir a un manual de propiedad intelectual sobre programas de


ordenador, cosa que este artculo no pretende ni puede ser.
No tiene sentido examinar las limitaciones impuestas en las licencias estndar de
software cerrado, ya se han citado algunas en apartados anteriores, como la frmula
de aceptacin de licencia consistente en romper los precintos del paquete de CDs, es
decir, antes de toda posibilidad de uso y comprobacin, contra el art. 10bis LCU. En
el software cerrado simplemente la licencia no tiene otra finalidad que la de plegarse
de modo obsesivo a las facultades del copyright (de la LPI en Espaa), prescindiendo
de cualquier consideracin sobre las libertades constitucionalmente garantizadas de
los usuarios de software, sin otra finalidad que la explotacin exclusiva, normalmente
no por su autor sino por un titular derivado, y lesionando (sin advertirlo, claro est) sus
propios intereses de mercadotecnia y desarrollo.
El uso queda prohibido sin licencia aceptada, imposibilitndose la instalacin,
restringindola a monopuesto, o necesitndose una reactivacin de la licencia si se
supera determinado nmero de componentes del hardware (!). No pueden evitar estas
licencias el que se apliquen las normas imperativas que hemos visto en el apartado
2.1.3, pero quedan restringidas al mximo, de hecho se imposibilitan porque las
modificaciones necesarias no son factibles sin el cdigo fuente, nunca disponible.
Con lo visto hasta ahora, queda claro que la subcategora "shareware" se refiere
a programas cerrados que restringen el uso si no se paga una cantidad de dinero
adicional pasado un perodo de prueba. Normalmente son programas incompletos,
mejor dicho mutilados.

Limitaciones a la libre reproduccin y copia


Estas actividades no son autorizadas en el softawre cerrado, e incluso pueden
impedirse automticamente. Las copias de seguridad se restringen en lo posible. La
copia privada es calificada incorrectamente de piratera en varias licencias que se ha
podido consultar.

Lmites a libre transformacin y modificacin


En el software cerrado y sus variantes la transformacin est prohibida, y ni siquiera
es factible, pues el cdigo fuente nunca se acompaa en la distribucin. Los
componentes del software no pueden separarse legtimamente. Caso de hacerse
alguna transformacin legtima, si la licencia se revoca los archivos fuentes derivados

Plataforma de Teleformacin de IFES

Pgina 305 de 384

han de destruirse (!). El shareware tampoco es modificable, pues casi siempre es


cerrado y adems no acompaa las fuentes.
El denominado "freeware" es normalmente software cerrado que, aunque puede
redistribuirse con muchos lmites -no libremente- no puede sin embargo ser modificado,
entre otras razones porque el programa fuente no est disponible. No es en modo
alguno software libre contra lo que indica su (impropio) nombre.

Lmites a la libre distribucin


En el software cerrado la distribucin y la redistribucin estn sencilla y rotundamente
prohibidas, salvo en los casos del llamado freeware. Esto incluye la prohibicin de
alquiler y prstamo.

Conclusin
El matemtico David Hilbert, refirindose a la teora de conjuntos creada por Georg
Cantor, objeto del desprecio de otros matemticos, deca "nadie podr expulsarnos del
paraso que Cantor ha creado para nosotros" . Desde los ingenieros y programadores
hasta los usuarios menos avezados, pasando por distribuidores, empresas comerciales
y universidades, formamos legin quienes hacemos correr sobre nuestras mquinas
programas libres, hackeados y compilados por nosotros mismos conforme a nuestras
necesidades y gustos, que nos prestamos y copiamos libremente, con la destreza y
seguridad que permiten el mejor banco de pruebas posible, una variedad inagotable
de soluciones, siempre en renovacin, y una documentacin de calidad superior a
la estndar de los programas no libres. El software libre, sobre todo si es copyleft,
mantiene e impulsa el entusiasmo universal en la computacin, especie en peligro en
las dos ltimas dcadas, e incluso comienza a servir de referencia para otros mbitos
de la libertad intelectual.
No es seguro que esta apreciacin de la realidad sea completa, pero es la de mucha
gente. Adems, es el objeto de una polmica contempornea trascendental, que no se
trata en este artculo sino muy de pasada. Las piezas puestas en juego por el software
libre son muchas y poderosas. Es cierto que el software libre trata de la libertad, y que
ste no es un asunto slo comercial o industrial. Simplemente, es una asunto muy
grande, de enjundia, origen o final de conflictos a veces muy serios.
En fin, tal vez la cosa est a estas alturas algo ms clara y podamos parafrasear a
Hilbert tranquilamente, pero sin bajar la guardia: Nadie podr expulsarnos del paraso
que la GNU-GPL ha creado para nosotros.

Pgina 306 de 384

Linux

Apndices
Apndice A - Abreviaturas utilizadas

CC - Cdigo civil
CE - Constitucin espaola
CP - Cdigo penal
Disp. Ad. - Disposicin adicional
Disp. Trans. - Disposicin transitoria
FSF - Free Software Foundation
GNU-GPL - Licencia Pblica General del proyecto GNU - GNU's Not Unix
LCU - Ley de consumidores y usuarios
LEC - Ley de enjuiciamiento civil
LPI - Ley de propiedad intelectual
MEDC - Ministerio de Educacin, Cultura y Deporte
OSD - Definicin de Fuente Abierta, de la Open Source Initiative
OSI - Open Source Initiative
RD - Real Decreto
RTV - Radiotelevisin
sl - Software libre
UE - Unin Europea

Apndice B - Leyes, reglamentos, tratados


internacionales
Disposiciones espaolas:

La LPI vigente est recogida en el texto refundido de 1996, aprobado por


Real Decreto Legislativo 1/1996 de 12 de abril, publicado en el BOE nm.
97 de 22 de abril. Las ltimas reformas se produjeron en marzo de 1998 y
enero de 2000. Est en elaboracin una nueva modificacin, por motivo de
la Directiva 2001/29/CE del Parlamento y Consejo, 22 de mayo, publicada
el 22 de junio 2001, sobre armonizacin de determinados aspectos de los
derechos de autor y derechos afines en la sociedad de la informacin.
Ley orgnica, de proteccin al honor, a la intimidad personal y familiar y a la
propia imagen, 1/1982 de 5 de mayo.
Ley general para la defensa de los consumidores y usuarios, 26/1984 de 19
de julio.
Ley de patentes, 11/1986 de 20 de marzo.

Plataforma de Teleformacin de IFES

Pgina 307 de 384

Ley de proteccin de las topografas de los semiconductores, 11/1988 de 3


de mayo.
Ley de marcas, 17/2001 de 7 de diciembre.
El Cdigo penal espaol fue aprobado por la Ley Orgnica 10/1995 de 23 de
noviembre, BOE 281 de 24 de noviembre.
Ley de enjuiciamiento civil, 1/2000 de 7 de enero.
Real Decreto 1584/1991 de 18 de octubre, que aprueba el Reglamento del
Registro General de la Propiedad Intelectual. Es el que viene aplicndose
hasta que se encuentre totalmente en funcionamiento el sistema de registro
diseado por el Real Decreto 733/1993 de 14 de mayo, que aprueba el
nuevo Reglamento del Registro General de la Propiedad Intelectual.
RD 114/2000 de 28 de enero (BOE 33 de 8 de febrero), de la Comisin
Interministerial para actuar contra las actividades vulneradoras de los
derechos de propiedad intelectual e industrial (Comisin antipirateo).
Reglamento del Consejo de la UE que prohibe la comercializacin de
mercancas piratas y la intervencin de las aduanas para impedirla, Rgl.(CE)
241/1999 de 25 de enero, DOCE 2.2.1999 L 27.

Convenios internacionales:

Convenio de 14 de julio de 1967 que establece la Organizacin Mundial de


la Propiedad Intelectual.
Convenio de Berna de 9 de septiembre de 1886 para la proteccin de las
obras literarias y artsticas, revisado en Pars el 24 de julio de 1971.
Convencin Universal de Ginebra de 6 de septiembre de 1952 sobre
Derecho de Autor, revisada en Pars el 24 de julio de 1971.

La Organizacin Mundial de la Propiedad Intelectual (OMPI) con sede en Ginebra, y


la Organizacin Mundial del Comercio (OMC) son foros generadores de importantes
documentos y acuerdos internacionales en materia de derechos de propiedad
intelectual.

Apndice C - Referencias
Se incluye slo una breve nota de los materiales utilizados.
Un libro introductorio, que no trata a fondo las cuestiones jurdicas pero s el tema
general del software libre, WAYNER, P., "La ofensiva del software libre" , ed. Granica,
Barcelona, 2001.
Los sitios web en los que puede encontrarse informacin sobre los asuntos tratados
en este artculo son naturalmente innumerables. Un buen libro en lnea se encuentra

Pgina 308 de 384

Linux

en www.oreilly.com/opensources/, "Open Sources: Voices from the open source


revolution" , con artculos de E. S. Raymond, M. K. McKusick, S. Bradner, R. Stallman,
M. Tiemann, P. Vixie, L. Torvalds, R. Young, L. Wall, B. Behlendorf, B. Perens, T.
O'Reilly, y J. Hamerly y T. Paquin con S. Walton, ed. O'Reilly Ass., Inc., 2000.
Para conocer los fundamentos del software libre, y no slo los jurdicos, es evidente
que el directorio recomendado est en www.gnu.org/philosophy/. La mejor aplicacin
prctica de la teora del proyecto GNU est basada en www.debian.org/social_contract.
Un buen lugar para empezar a leer sobre programas libres y sus problemas en cuanto
a licencias es www.opensource.org
En castellano puede consultarse http://gsyc.escet.urjc.es/sobre/, grupo SoBre de
software libre.
Una lectura nueva y prctica se encuentra en el proyecto (proposicin diramos en
Espaa) de ley sobre uso del software libre en la Administracin pblica, remitido al
Congreso peruano el 9 de abril de 2002 por los congresistas E.VILLANUEVA NEZ y
J.RODRICH ACKERMAN, http://www.gnu.org.pe/rescon.html.

Artculos

Lista por temas


Lista por autor
Licencia GFDL
Licencia GPL

La Espiral

Objectivo/ Noticias
Recetas
Contribuir
Historia
Repositorio CVS
Contacto

v. 0.92, 16 de abril de 2002


Copyright 2001, 2002, 2003, 2004, La Espiral, debian-laespiral@lists.debian.org
Permitida la cpia y distribucin textual, integral, siempre y cuando se mantenga este
aviso.
Plataforma de Teleformacin de IFES

Pgina 309 de 384

Internet y herramientas de red

Navegadores de la World Wide Web (WWW)


Adaptado de:
http://www.gulic.org/cila/libro
, un documento libre del Grupo de usuarios Gulic
Durante muchos aos Netscape Communicator 4 fue el nico navegador
multiplataforma real, dando cobertura a muchos de los distintos UNIX comerciales
existentes. Puesto que Linux no poda ser menos, casi desde que Linux tiene interfaz
grfico ha existido una versin del navegador de Netscape para este sistema operativo.
Netscape Communicator 4 proporciona soporte para navegacin de pginas web
con JavaScript y Flash 5, y permite visualizar documentos PDF dentro del navegador
(mediante un plugin para el Adobe Acrobat Reader). Tambin nos permite gestionar el
correo electrnico y componer pginas web. Los Linuxeros siempre hemos considerado
que el navegador de Netscape consuma demasiados recursos en Linux, adems de
tener bastantes problemas de estabilidad. Debido a ste y a otros factores importantes,
como fueron la forma de competir con la casa Microsoft Corporation, Netscape
Communications Corporation lleg a la sana conclusin de que la mejor manera de
mantener su navegador en el mercado era liberando su cdigo fuente. As naci el
proyecto Mozilla .
Sin embargo, Mozilla sigue siendo un navegador excesivamente pesado para un
nmero importante de mquinas. Dentro de la comunidad del Software Libre, se
alzaron voces en contra de ese desperdicio de recursos, proponiendo la creacin de
navegadores alternativos. Aqu listamos algunas de las alternativas que podemos
encontrar en el rea de los navegadores web dentro del Software Libre:

Netscape Communicator: Bajo dicho nombre podemos encontrar el


navegador original de Netscape. La ltima versin es la 4.77.
Epiphany: Es un navegador que utiliza el motor de rendering Genko de
Mozilla para mostrar el contenido de la World Wide Web. Sin embargo,
puesto que utiliza las bibliotecas de GNOME y GTK es ligeramente
ms rpido que Mozilla, y se integra perfectamente con el resto de las
aplicaciones GNOME.
Konqueror: Gestor de ficheros, navegador web y visor de documentos del
KDE.
Mozilla: Es un sofisticado navegador grfico de la World Wide Web que
soporta un gran nmero de tecnologas, como por ejemplo soporte para

Pgina 310 de 384

Linux

HTML 4.0, CSS 2, JavaScript y Java. Adems de poder ser utilizado como
un sencillo visor de HTML. Mozilla est basado en parte del cdigo de los
navegadores Netscape Communicator y Netscape Navigator.
Mozilla Firefox: Navegador que tambin procede de fundacin Mozilla. En
los ltimos tiempos se est convirtiendo en un navegador de referencia por
su rapidez y sencillez de uso.

Bueno, seguro que en el momento de leer este apartado, habrn surgido nuevos
navegadores web dentro del mundillo del Software Libre.

Mozilla
Mozilla es probablemente el ms completo de los navegadores multiplataforma. Esto
es debido a que implementa soporte para un gran nmero de tecnologas de la World
Wide Web, y se cie rigurosamente a los estndares del W3C (nombre con el que
se conoce al World Wide Web Consortium, que es el organismo encargado de la
estandarizacin de las diferentes tecnologas presentes en la World Wide Web).

Plataforma de Teleformacin de IFES

Pgina 311 de 384

Ventana del navegador web Mozilla


Para centrarnos en el manejo de Mozilla empezaremos mirando la Figura. En ella
podemos observar la clsica ventana de navegacin de Mozilla que es semejante a
la de otros muchos navegadores. A continuacin enumeramos los elementos de la
ventana de arriba a abajo y de izquierda a derecha:
1.
2.
3.
4.
5.
6.

Barra de mens
Barra de herramientas de navegacin
Barra de herramientas personales
Panel lateral
rea de visualizacin de la navegacin
Barra de tareas

Pgina 312 de 384

Linux

La visualizacin de la mayor parte de estos elementos puede activarse o desactivarse


desde el men VER -> BARRA DE HERRAMIENTAS de la barra de men del
programa.
Adicionalmente disponemos de una barra denominada barra de componentes. Dicha
barra se muestra como unos pequeos iconos a la izquierda de la barra de tareas
(parte inferior de la ventana del programa). Dicha barra nos permite lanzar de forma
sencilla y rpida algunas de las otras herramientas de Internet que acompaan al
navegador web Mozilla. Entre dichas herramientas disponemos de un editor de HTML y
de un lector de noticias y de correo electrnico.

Navegacin bsica
Para navegar por la World Wide Web basta con introducir la direccin de la mquina
o recurso al que deseamos acceder en la barra de herramientas de navegacin. La
misma barra dispone a la izquierda de botones para avanzar o retroceder a travs de
las pginas visitadas, recargar la pgina actual, o detener la descarga. A la derecha
de la barra disponemos de un botn de acceso rpido al men de impresin, con el
que podemos imprimir la pgina actual. Para simplificar el aprendizaje, si dejamos el
puntero del ratn sobre cualquiera de los botones durante unos segundos la aplicacin
nos informar de la funcin de cada uno.
Adems de las funciones bsicas la barra de herramientas de navegacin nos permite
realizar bsquedas de trminos en Internet. Para ello basta con introducir las palabras
a buscar en la propia barra y a continuacin pulsar en el botn BUSCAR. El navegador
consultar al buscador que tengamos configurado (por defecto se trata del de Netscape
Network) y nos mostrar los resultados. El buscador utilizado puede ser configurado
en EDITAR -> PREFERENCIAS... -> NAVIGATOR -> BSQUEDA EN INTERNET.
Mientras que el contenido de la propia barra de herramientas de navegacin puede
ser configurado en EDITAR -> PREFERENCIAS... -> NAVIGATOR. Nos ocuparemos
de describir el cuadro de dilogo PREFERENCIAS y las opciones de configuracin de
Mozilla ms a delante.

Plataforma de Teleformacin de IFES

Pgina 313 de 384

Men del botn de retroceso de la barra de herramientas de navegacin


Algunos de los botones de la barra de herramientas de navegacin disponen de un
pequeo icono con forma de flecha en la parte inferior-derecha de los mismos. Dicho
icono suele desplegar un men con opciones adicionales. En el caso particular de los
botones de avance y retroceso dicho men nos permite elegir a que direccin, de entre
las ya visitadas, queremos avanzar o retroceder. Hay que tener en cuenta que si no
existiera el men tendramos que retroceder o avanzar por las pginas visitadas de una
en una.
Durante nuestra visita a la World Wide Web la barra de tareas suele mantenernos
informados de las acciones que realiza el navegador. Por ejemplo, nos informa de si

Pgina 314 de 384

Linux

estamos detenidos y de cuanto se tard en descarga la pgina actual, o de si estamos


descargando alguna pgina.
Adems, la barra de tareas dispone de una serie de iconos en la parte derecha
con el objetivo de mantenernos informados del estado de la conexin. Si dejamos
unos segundos el puntero del ratn sobre dichos iconos seremos informados de
su significado, e incluso podremos realizar alguna accin relacionada con dicha
informacin.

Trabajar sin conexin: Mientras disponemos de conexin a la red y


navegamos, Mozilla descarga las pginas que vamos visitando y las
almacena en el disco duro en lo que se denomina una cach. La existencia
de est cach es importante puesto que si visitamos varias veces una misma
direccin Mozilla no tiene necesidad de volver a repetir la descarga. En su
lugar nos proporciona directamente la pgina almacenada en la cach. En
ocasiones no disponemos de conexin a red por lo que sera deseable que
Mozilla no intentar descargarse la pginas desde la red y nos mostrara
directamente la copia en la cach. Tambin es posible que aun habiendo
conexin estemos interesados en que Mozilla no haga uso de ella. Ese
modo de trabajo que andamos buscando es el denominado trabajo sin
conexin. Existe un icono que representa dos enchufes desconectados que
nos indica que estamos en dicho modo. Si los enchufes estn conectados
significa que estamos haciendo uso de la conexin de red, es decir trabajo
con conexin. El paso de un modo de trabajo a otro se puede realizar
pulsando con el ratn sobre el icono, o seleccionando el elemento de men
ARCHIVO -> TRABAJAR SIN CONEXIN.
Cookies: En ocasiones algunos servidores de la World Wide Web requieren
que los navegadores que los acceden almacenen cierta informacin. En
muchos casos se trata de informacin sobre nuestras preferencias que
dichos servidores han recopilado, y que desean que guardemos para volver
a reclamarla cuando nos volvamos a conectar a sus pginas. Este tipo de
comportamiento puede ser un agujero de seguridad en potencia (o al menos
un problema de privacidad) por lo que Mozilla dispone de un filtro de cookies
que nos permite decidir en que servidores confiamos y en cuales no. Si
nuestro navegador ha aceptado una cookie para ser almacenada podremos
observar el icono de una galleta. Pulsando sobre la misma podremos
averiguar la informacin que contiene, ascomo configurar el filtro de cookies
frente a posibles peticiones futuras.
Seguridad: Es importante recordar que todo lo que recibimos o enviamos
desde o hacia la World Wide Web es fcilmente interceptarle. Cuando
accedemos a pginas donde la seguridad de las comunicaciones es de vital

Plataforma de Teleformacin de IFES

Pgina 315 de 384

importancia dicha comunicacin se hace cifrando los datos. Si disponemos


de un icono con un candado abierto en nuestro navegador significa que todo
lo que hagamos en Internet puede ser observado por otros. Sin embargo, si
dicho candado est cerrado es porque las comunicaciones son seguras, por
lo que tenemos garantas de que nuestros datos no pueden ser fcilmente
interceptados. Al pulsar sobre dicho icono obtendremos la informacin de
seguridad para la pagina actual.
Al igual que en muchos otros navegadores Mozilla dispone de un men de contexto
activable pulsando con el botn derecho del ratn sobre alguno los elementos del
rea de visualizacin. Dicho men nos permite, por ejemplo, recargar la pgina actual,
descargar un enlace, o abrir un enlace en una ventana diferente, entre otras muchas
posibles acciones.
Durante la navegacin por la World Wide Web resulta habitual disponer de varias
ventanas de Mozilla abiertas en pginas diferentes. Sin embargo, todas esas ventanas
estn ligadas a un mismo proceso en ejecucin del navegador Mozilla. Es importante
conocer esto puesto que si seleccionamos el elemento de men ARCHIVO -> SALIR
TODAS las ventanas de Mozilla se cerraran, al terminar el proceso que las gestionaba.
Si por el contrario deseamos cerrar nicamente una de las ventanas en particular,
debemos seleccionar ARCHIVO -> CERRAR o utilizar el botn correspondiente de la
barra de ttulo del marco de la ventana.

Pestaas
Una de las innovaciones tomada de otros navegadores e introducida en Mozilla es el
uso de las pestaas durante la navegacin. Tanto si seleccionamos la opcin ARCHIVO
-> NUEVO -> PESTAA DE NAVIGATOR, como si seleccionamos en ABRIR EN
UNA PESTAA NUEVA cuando pulsamos con el botn derecho en un enlace, se
nos abre una nueva rea de visualizacin dentro de la misma ventana de Mozilla.
Podemos disponer de tantas reas como deseemos y en cada una visualizar una
pgina diferente.

Pgina 316 de 384

Linux

Navegacin con pestaas en Mozilla


En la figura anterior podemos observar cmo cada rea est representada por una
pestaa en la parte superior del rea de visualizacin. Seleccionando un pestaa u
otra podremos navegar por una pgina u otra. Cuando deseemos cerrar la pestaa
seleccionada bastar con que pulsemos en botn a la derecha de todas las pestaas.
Tambin podemos arrastrar un enlace en la pagina web del rea de visualizacin sobre
una de las pestaas. Con ello conseguimos que en dicha pestaa se cargue el recurso
del la World Wide Web al que apunta dicho enlace (por ejemplo, una pgina web, una
imagen, etc).
Algunos aspectos del comportamiento de las pestaas pueden ser configurados en
EDITAR -> PREFERENCIAS... -> NAVIGATOR -> PESTAAS.
Plataforma de Teleformacin de IFES

Pgina 317 de 384

Marcadores
Mozilla nos permite almacenar de forma ordenada y clasificada las direcciones de los
recursos de la World Wide Web que ms nos interesan. Dicho almacenamiento se hace
en forma de lo que se denominan marcadores.
Aadir la direccin de la pgina actual como marcador es tan sencillo como seleccionar
MARCADORES -> AADIR A MARCADORES. Tambin podemos pulsar con el
botn derecho del ratn sobre un enlace y seleccionar la opcin correspondiente para
aadirlo a los marcadores.
En todo caso el marcador se crea siempre al final de la lista. Si deseamos tener un
control ms fino para, por ejemplo, aadir el marcador a una carpeta determinada,
podemos utilizar el men MARCADORES -> ARCHIVAR MARCADOR...Dicha opcin
del men muestra un cuadro de dilogo que nos permite seleccionar el nombre del
nuevo marcador, crear carpetas de marcadores, y elegir en que carpeta deseamos
guardarlo. Los marcadores as creados son accesibles en forma de mens en el men
MARCADORES de la barra de mens.
En ocasiones es necesario realizar sobre los marcadores tareas de administracin
mucho ms avanzadas. La opcin MARCADORES -> ADMINISTRAR MARCADORES
despliega un cuadro de dilogo (figura siguiente) que nos permite manipular los
marcadores a nuestro antojo. Podemos movernos por el rbol de marcadores y
copiarlos o pegarlos con ayuda de ratn. Tambin podemos alterar sus propiedades
utilizando el men de contexto que se despliega con el uso del botn derecho de
nuestro ratn.

Pgina 318 de 384

Linux

Cuadro de dilogo ADMINISTRAR MARCADORES


El administrador de marcadores dispone de opciones para ordenar los marcadores
segn diversos criterios, para realizar bsquedas, y para exportar o importar hacia o
desde los marcadores de otros navegadores. Adems de carpetas, el administrador
de marcadores nos permite crear separadores que se utilizan para separar elementos
dentro de los mens. Al igual que con el resto de las ventanas de Mozilla debemos
evitar utilizar la opcin ARCHIVO -> SALIR puesto que sta cierra todas la ventanas del
programa.
Entre las carpetas de marcadores existe una con un significado especial. La carpeta
PERSONAL TOOLBAR FOLDER representa la barra de herramientas personales, que
est situada debajo de la barra de herramientas de navegacin. Todos los marcadores
Plataforma de Teleformacin de IFES

Pgina 319 de 384

insertados en dicha carpeta aparecern automticamente como botones en la citada


barra de herramientas.

Panel lateral
A la izquierda del rea de visualizacin est el panel lateral o sidebar de Mozilla. Dicho
panel dispone de una serie de pestaas con funciones que ayudan a la navegacin.
Utilizando el men PESTAAS del panel lateral podemos decidir que pestaas vemos
de entra la disponibles. Tambin podemos personalizar nuestro panel aadiendo
nuevas pestaas con nuevas funciones descargadas desde Internet.
Para que no interfiera con la navegacin podemos modificar el ancho del panel
pulsando con el ratn en la barra que lo separa del rea de visualizacin. Si hacemos
una pulsacin sencilla sobre la pequea marca del centro podremos plegar y desplegar
el panel de forma rpida. Tambin podemos ocultarlo de forma permanente pulsando
en la equis de la parte superior-derecha del panel.
Por defecto, en el reducido espacio del panel lateral podemos consultar el historial y los
marcadores, y realizar bsquedas por palabras o por temas relacionados en Internet.
Sin embargo, como ya hemos comentado, dichas funcionalidades son completamente
ampliables.

Preferencias
Muchas de las caractersticas de Mozilla son personalizables. En la figura siguiente
podemos observar el cuadro de dilogo de preferencias de Mozilla. A dicho cuadro
podemos acceder desde la opcin EDITAR -> PREFERENCIAS...
Las preferencias de Mozilla estn clasificadas en categoras. Al seleccionar una
categora podemos observar en el lado derecho de la ventana las opciones de
configuracin relacionadas. Adems, cada categora puede contener subcategoras
cuya lista se despliega o se pliega con una pulsacin simple del ratn sobre dicha
categora.

Pgina 320 de 384

Linux

Cuadro de dilogo de preferencias de Mozilla

APARIENCIA: Preferencias tales como los colores, o los tipos de letras


utilizados por el navegador en la visualizacin de las pginas web son
establecidas en esta categora. Tambin podemos seleccionar el idioma
y el tema de la aplicacin. Seleccionar un nuevo tema cambia el aspecto
visual de los botones, cuadros de dilogo, men, barras de herramientas y
otros objetos. En Internet resulta sencillo encontrar todo tipo de temas para
personalizar nuestro navegador.
NAVIGATOR: Las preferencias especficas del navegador son establecidas
en esta categora. Entre ellas contamos con la direccin de la pgina
de inicio, el buscador por defecto, o la administracin del historial de

Plataforma de Teleformacin de IFES

Pgina 321 de 384

direcciones. En ocasiones el contenido de las pginas web est disponible


en varios idiomas. En esta categora podemos establecer los idiomas en los
que preferimos ver dichas pginas web.
COMPOSER: En esta categora podemos encontrar toda una serie de
opciones relacionadas con el editor de pginas web que viene con Mozilla.
MAIL & NEWS: En caso de haber instalado el lector de noticias y de correo
electrnico de Mozilla, podemos acceder a esta categora para configurarlo.
PRIVACIDAD Y SEGURIDAD: Las preferencias de privacidad y seguridad
determinan las caractersticas del filtrado de cookies e imgenes. Adems,
nos permite configurar el navegador para que guarde contraseas o datos
de formularios que utilizamos habitualmente. Tambin nos permite gestionar
los protocolos y certificados utilizados durante las conexiones encriptadas.
Debido a que la mayor parte de esta informacin confidencial es almacenada
en el disco duro, Mozilla permite la encriptacin de dichos datos bajo una
contrasea maestra. Con ello se consigue que esa informacin no pueda ser
accesible a terceros.
AVANZADAS: En esta categora se configuran aspectos avanzados como
el soporte de Java y JavaScript, la configuracin del cach, o el acceso a
la red a travs de proxies. La opciones de esta categora nos permiten, por
ejemplo, establecer qu permitimos y qu no permitimos hacer a las pginas
web a las que accedemos.
SIN CONEXIN Y ESPACIO EN DISCO DURO: Configuracin sobre el
comportamiento del navegador en los modos de trabajo con conexin y sin
conexin. Podemos utilizar la ayuda para obtener informacin ms detallada
de cada una de las opciones.

Programas FTP (gFTP)


Existen multitud de programas clientes de FTP tanto para la consola como para el
entorno grfico.
gFTP es el cliente FTP del entorno de escritorio GNOME. Se trata, por tanto, de un
cliente en modo grfico diseado para facilitar el acceso a los recursos FTP. El uso de
un cliente en modo grfico nos permite olvidarnos de los comandos del protocolo FTP.
En su lugar todas las operaciones se reducen a sencillas acciones sobre la interfaz
grfica.

Pgina 322 de 384

Linux

Ventana de gFTP en una conexin a ftp.es.debian.org


En la figura anterior podemos observar la ventana de un gFTP con una conexin a
ftp.es.debian.org. Para iniciar una sesin de FTP con gFTP debemos recurrir a la
barra situada justo debajo de la barra de mens. En ella debemos especificar los datos
requeridos para realizar la conexin.

SERVIDOR: En este campo debemos escribir el nombre de la mquina


remota a la que nos vamos a conectar. En el de la figura anterior fue
ftp.es.debian.org.
PUERTO: Cada servicio que se ofrece en Internet tiene un puerto asociado.
El puerto por defecto para el servicio de FTP es el 21, aunque algunas
mquinas dan dicho servicio en otro puerto cualquiera. En este campo se

Plataforma de Teleformacin de IFES

Pgina 323 de 384

debe especificar el puerto en el que la mquina remota est esperando


las peticiones de FTP. Si no se indica nada, como es nuestro caso, gFTP
asumir que queremos utilizar el puerto por defecto, es decir, el 21.
USUARIO: En este campo debemos indicar el nombre de usuario con el que
queremos acceder a la mquina remota. Si el servidor es pblico, lo ms
probable que utilizando el nombre anonymous podamos acceder a travs de
la cuenta de usuario annima.
CONTRASEA: La contrasea asociada al usuario con el que queremos
acceder. En caso de acceder a travs de la cuenta de usuario annima
debemos indicar nuestra direccin de correo electrnico.
PROTOCOLO: El ltimo campo nos permite indicar el protocolo que vamos
a utilizar para nuestra conexin. gFTP no slo puede utilizar el protocolo
FTP para realizar transferencias de archivos. Por ejemplo, podemos utilizar
SSH2 para realizar transferencias de archivos encriptadas. Esto garantiza
que tanto nuestro datos (nombre de usuario, contrasea, etc) como los
de los archivos estn seguros frente a intentos de interceptacin de las
comunicaciones. Es importante destacar que el protocolo FTP no es un
protocolo seguro, en el sentido de que nuestra contrasea y todos los dems
datos que viajen por la conexin son fcilmente interceptables.

Tras completar los datos podemos pulsar en el botn de la izquierda para iniciar la
sesin. gFTP se encarga de enviar los comandos necesarios para iniciar la conexin,
evitndonos el engorroso problema de tener que conocerlos. El botn de la izquierda
nos permite iniciar una conexin si sta no ha sido iniciada, o terminarla si ya ha sido
iniciada correctamente. Sin embargo, si queremos detener el intento de conexin en
curso debemos recurrir al botn de la derecha. Dicho botn se utiliza para abortar
cualquier tarea que gFTP est realizando en el momento actual.
En la parte inferior de la ventana de gFTP podremos observar un registro de la
conexin. En rojo veremos informacin propia de gFTP, en verde observaremos
los comandos que gFTP enva a la mquina remota, y en azul podremos ver la
respuestas de la mquina remota a dichos comandos. Sea cual sea la tarea que
estemos realizando siempre quedar registrada en esa zona de la ventana. Por eso
suele ser importante estar atento a ella para saber en todo momento lo que est
sucediendo. Utilizando la barra de desplazamiento de la derecha podremos ver los
mensajes antiguos, o que hayan pasado demasiado rpido.
El centro de la ventana de gFTP est dividido en dos reas que podemos utilizar para
navegar por el rbol de directorios. El rea de la izquierda podemos utilizarla para
movernos por el rbol de directorios de la mquina local. Mientras que el rea de la
derecha, siempre y cuando gFTP est conectado, podemos utilizarla para movernos

Pgina 324 de 384

Linux

por el rbol de directorios de la mquina remota. En ambos lados podemos utilizar el


botn derecho del ratn para desplegar un men de contexto con un amplio conjunto
de opciones. Con ellas podemos crear directorios, renombrar archivos, ver y editar
archivos, modificar sus atributos, borrar, etc.
Mientras que la doble pulsacin sobre una directorio nos permite ver su contenido,
una doble pulsacin sobre un archivo inicia una transferencia para que el archivo sea
enviado al otro lado de la conexin. El mismo efecto conseguimos si seleccionamos
uno o ms archivos (p. ej. pulsando con el botn izquierdo del ratn sobre el archivo
deseado mientras mantenemos pulsada la tecla Ctrl o Shift) y los arrastramos al rea
del otro lado. Tambin podemos conseguir el mismo efecto si pulsamos sobre los
botones situados en el centro de las dos reas. Dichos botones nos permiten iniciar la
transferencia de archivos en el sentido que ms nos convenga.
Justo entre el rea donde se registran las tareas realizadas por gFTP y la que
utilizamos para explorar los rboles de directorios, tenemos la cola de transferencias.
Todas las transferencias iniciadas o pendientes se muestran en dicha rea, as como
informacin relacionada con ellas. Utilizando el men de contexto que se despliega
con el botn derecho de nuestro ratn podemos detener o iniciar una transferencia, o
alterar el orden de la cola para decidir qu transferencia se iniciar despus de que se
complete la actual. Por defecto, las transferencias desde mquinas remotas diferentes
se realizan en paralelo, mientras que las transferencias desde una misma mquina
remota que se van realizando secuencialmente.

Mensajera instantnea y IRC

Gaim
Entre la surtida gama de clientes de Mensajera Instntanea, destacaremos el
programa Gaim. La caracterstica que nos mueve a destacar este programa en
particular es la gran cantidad de protocolos soportados en un nico cliente. Con este
cliente de Mensajera Instntanea podremos conectarnos con los servicios de MSN,
Yahoo, AOL, ICQ, Jabber, Napster o el propio IRC, por citar algunos de los protocolos
soportados.

Plataforma de Teleformacin de IFES

Pgina 325 de 384

Ventana de Gaim en una charla con otro usuario a travs de Jabber

XChat/KVirc
Otro de los servicios que se suelen utilizar con bastante frecuencia, se encuentran las
consultas al IRC. Este protocolo nos permite estar interconectados con otros grupos
de usuarios, de una manera muy dinmica. En Linux, en el apartado de clientes de IRC
grficos, destacan especialmente dos clientes: XChat y KVirc
XChat es un cliente de IRC muy flexible, que nos permite mantener sesiones no slo
en varios canales al mismo tiempo, sino que incluso nos permite conectar con varios
servidores de IRC al mismo tiempo, todo ello de una manera muy intuitiva.

Pgina 326 de 384

Linux

Ventana de Xchat en un canal de IRC


De la misma manera, el KVirc es otro cliente grfico capaz de satisfacer al ms
exigente de los usuarios. Entre otras cosas destaca por las ayudas que presta a
aquellos que les gusta disfrutar haciendo scripts para los clientes de IRC.

Aplicaciones de correo electrnico


Adaptado de:
http://linux-cd.com.ar/manuales/rh9.0/rhl-gsg-es-9/chemailclients.html
, un documento libre del Manual oficial de referencia de Red Hat Linux

Plataforma de Teleformacin de IFES

Pgina 327 de 384

El correo electrnico es un modo muy popular de comunicarse con otros a travs


de Internet. Puede usarlo con un cliente de correo, una aplicacin que entiende las
diversas transmisiones de correo electrnico estndar y le permite enviar, recibir y
leer el correo electrnico. Cualquier distribucin Linux contiene varias aplicaciones
de correo electrnico, incluyendo los clientes de correo electrnico grficos como por
ejemplo Evolution Mozilla Mail y clientes en modo texto tal como mutt . Todas las
aplicaciones de clientes de correo electrnico estn diseados para satisfacer a ciertos
tipos de usuarios; de manera que pueda escoger uno con las caractersticas que mejor
satifacen sus necesidades en particular.
Ya que algunos clientes de correo electrnico ejecutan las mismas tareas bsicas
(enviar y recibir correo electrnico), escoja la ms conveniente y fcil de usar.
Antes de lanzar el cliente de correo electrnico, debera tener alguna informacin til
sobre su Internet Service Provider (ISP) de manera que pueda configurar el cliente
adecuadamente. Las siguientes listas muestran algunas cosas que es necesario que
conozca:
Su direccin de correo electrnico
La direccin de correo electrnico que utilizar para enviar y recibir el correo.
Normalmente adopta la forma de yourname@yourisp.net .
Tipo de servidor para recibir correo (POP o IMAP)
Para recibir correo, debe saber el tipo de servidor que utiliza su administrador
de la red o proveedor de servicios de Internet. Esta direccin POP o IMAP
normalmente adopta la forma de mail.someisp.net .
POP, acrnimo de Post Office Protocol, se usa para enviar correo electrnico
desde un servidor de correo a su buzn de correodel cliente de correo electrnico,
el lugar en el que el correo electrnico de entrada est almacenado. La mayora
de los servidores de correo electrnico ISP usan el protocolo POP, aunque
puedan utilizar el protocolo ms reciente IMAP (Internet Message Access
Protocol).
IMAP, acrnimo de Internet Message Access Protocol, es un protocolo para
recuperar los mensajes de correo electrnico desde su servidor de correo
electrnico ISP. IMAP se diferencia de POP en que los correos electrnicos de
los servidores IMAP estn almacenados en el servidor y permanece all incluso
si descarga y lee su correo electrnico, mientras que el correo de POP est
descargado para su cliente de correo electrnico directamente y noest en el
servidor.

Pgina 328 de 384

Linux

Tipo de servidor para enviar correo electrnico (SMTP)


El Simple Mail Transfer Protocol (SMTP)(Protocolo de transferencia de
correo simple), es un protocolo para enviar mensajes de correo electrnico entre
servidores. La mayora de los sistemas de correo electrnico que envan correo a
travs de Internet utilizan el protocolo SMTP para enviar mensajes de un servidor
a otro; los mensajes se pueden recuperar posteriormente con un cliente de correo
electrnico que utilice el protocolo POP o IMAP. SMTP se utiliza normalmente
para enviar mensajes de un cliente de correo a un servidor de correo. Por este
motivo, deber especificar tanto el servidor POP o IMAP como el servidor SMTP
cuando configure la aplicacin de correo electrnico.
Si tiene alguna duda o pregunta sobre la informacin necesaria, pngase en contacto
con su proveedor de servicios de Internet o administrador de la red. Salvo si ha
configurado correctamente esta informacin, no podr hacer un uso completo de los
clientes de correo electrnico que se describen en este captulo.

Evolution
La aplicacin Evolution es ms que un simple cliente de correo electrnico.
Proporciona todas las funciones de administracin de correo electrnico estndar,
que incluyen una administracin eficaz de buzones, filtros definidos por el usuario y
bsquedas rpidas. Admite el uso de un calendario/programa flexible y permite a los
usuarios crear y confirmar reuniones de grupo en lnea y eventos especiales. Evolution
es la primera herramienta completa de administracin de informacin personal y de
trabajo en grupo para Linux y sistemas basados en UNIX.
Para lanzar Evolution en el panel del escritorio, seleccione Men principal =>
Programas =>Internet =>Correo electrnico .

Plataforma de Teleformacin de IFES

Pgina 329 de 384

Pantalla de bienvenida de Evolution


La primera vez que inicie Evolution aparecer la pantalla de bienvenida, que le permite
configurar su conexin de correo electrnico. Siga las instrucciones de la pantalla en
la informacin que ha recopilado desde su ISP o administrador en las casillas de texto
proporcionadas. Cuando acabe, haga click en Finish y ver la pantalla principal como
se muestra en la figura.

Pgina 330 de 384

Linux

Pantalla principal de Evolution

Plataforma de Teleformacin de IFES

Pgina 331 de 384

Para ver el contenido de su buzn o enviar un correo, haga clic en el icono Inbox .

Pgina 332 de 384

Linux

Pantalla de la bandeja de entrada de Evolution


Para componer un correo, seleccione New Message en la barra de herramientas.

Pantalla de nuevo mensaje de correo electrnico de Evolution

Plataforma de Teleformacin de IFES

Pgina 333 de 384

Cuando haya compuesto el mensaje y haya introducido la direccin de correo


electrnico a la que enviar el correo, haga clic en Send en la barra de herramientas.
Mientras que Evolution hace mucho ms que leer y enviar correo electrnico, este
captulo se centra exclusivamente en las posibilidades del correo electrnico. Si
desea conocer ms sobre el uso de algunas de las caractersticas de Evolution ,
como calendario/programa y mensajes de grupo, haga click en Help desde la barra
de herramientas principal y escoja el componente que del que desea obtener ms
informacin.

Mozilla Mail
En esta seccin se ofrece una breve descripcin de los pasos bsicos para enviar y
recibir correo con Mozilla .
Para iniciar Mozilla Mail, seleccione Men principal => Todas las aplicaciones
Internet => Mozilla Mail.
Para abrir Mozilla Mail mientras est en la aplicacin Mozilla, haga clic en el icono de
correo situado en la esquina inferior izquierda de la pantalla de Mozilla.

Pgina 334 de 384

Linux

Correo y noticias en Mozilla

Plataforma de Teleformacin de IFES

Pgina 335 de 384

Pantalla de nuevo mensaje de correo electrnico de la herramienta de correo de Mozilla


Para enviar un correo electrnico, haga clic en el botn Send o seleccione File =>
Send Now o Send Later . Si opta por enviar el correo ms tarde, puede volver a la
pantalla de correo principal y seleccionar File => Send unsent messages .

Pgina 336 de 384

Linux

Para leer el correo electrnico, haga clic en la carpeta de correo que ha creado para ver
una lista de los mensajes que ha recibido y todava no ha ledo. A continuacin, haga
clic en el mensaje que desee leer.
Cuando haya ledo un mensaje, puede eliminarlo o guardarlo en otra carpeta, entre
otras muchas opciones.

Mozilla y los grupos de noticias


Los grupos de noticias son grupos de debate en Internet que tratan temas especficos.
Los debates se realizan en formato threaded (lo que significa que todos los temas y
respuestas al tema estn organizados de manera que la lectura y suscriptcin a un
grupo sea sencilla. No debe enviar mensajes si no lo desea, puede llevar a cabo lurk,
que es un trmino de los grupos de noticias para la lectura sin enviar mensajes. Hay
muchos grupos de noticias realmente excelentes en la Web con temas que abarcan
desde la poltica hasta juegos de ordenador y extraas filosofas. Puede enviar y
descargar fotografas y archivos a los grupos de noticias (aunque su ISP restrinja los
grupos de noticias a envios de slo texto).
Para participar en un grupo de noticias, primero deber configurar una cuenta de
grupo de noticias. Haga clic en el nombre de la cuenta de correo en la barra lateral y
seleccione Create a new account en las opciones que aparecen en el lado derecho
de la pantalla. Aparecer la pantalla New Account Setup. Seleccione Newsgroup
account y haga click en Next.

Plataforma de Teleformacin de IFES

Pgina 337 de 384

Configuracin de una cuenta para el grupo de noticias


Introduzca su nombre y la direccin de correo electrnico en la siguiente pantalla y
haga clic en Next. En la siguiente pantalla, escriba el nombre del servidor de noticias
(si no conoce el nombre del servidor de noticias, pngase en contacto con el proveedor
de servicios de Internet para que le proporcione esta informacin). En las ltimas
pantallas, puede determinar o su administrador de redes para esta informacin). En las
otras pantallas, puede determinar el nombre al que esta cuenta se referir y revisar la
configuracin.
Ahora, aparecer la cuenta de grupo de noticias que acaba de crear en la barra lateral
de la pantalla de correo de Mozilla . Haga clic con el botn derecho del ratn en este
nombre de cuenta y seleccione Subscribe. Aparecer un cuadro de dilogo con una

Pgina 338 de 384

Linux

lista de todos los grupos de noticias disponibles. Seleccione los grupos que desee leer
y haga clic en Subscribe. Cuando haya acabado, haga clic en OK.
Ahora, haga clic en la flecha situada junto al nombre de cuenta del grupo de noticias
y la lista de grupos a la que est suscrito aparecer al lado. Seleccione el grupo de
noticias al que desea acceder y aparecer un cuadro de dilogo con informacin sobre
cmo descargar y leer los mensajes existentes. La accin de publicar un mensaje en
un grupo de noticias es similar a escribir un correo electrnico, con la diferencia de que
el nombre del grupo de noticias aparece en el campo To en lugar de la direccin de
correo electrnico. Para anular la suscripcin de un grupo de noticias, haga clic con el
botn derecho en el nombre del grupo y seleccione Unsubscribe.

Introduccin a MySQL

Trabajar con MySQL


En este captulo vamos a ver cmo:

Qu es MySQL y usar el cliente mysql.


Crear y usar una base de datos.
Crear una tabla y aadir datos a la tabla.
Seleccionar, modificar, ordenar y borrar registros de una tabla.
Utilizar patrones de comparacin en las consultas.
Contar registros de una tablas.
Usar ms de una tabla en una base de datos.
Usar mysql en modo batch.

Qu es MySQL?
MySQL es el servidor de bases de datos relacionales de cdigo abierto ms popular y
desarrollado. Una de las razones para el rpido crecimiento de popularidad de MySQL,
es que se trata de un producto de cdigo abierto, y por lo tanto, va de la mano con este
movimiento. Consta de las siguientes caractersticas.

MySQL es un sistema de administracin de bases de datos. Una base


de datos es una coleccin estructurada de datos. Los informacin que puede
almacenar una base de datos puede ser tan simple como la de una agenda,
un contador, o un libro de visitas, tan vasta como la de una tienda en lnea,
un sistema de noticias, un portal, o la informacin generada en una red
corporativa. Para agregar, acceder, y procesar los datos almacenados en

Plataforma de Teleformacin de IFES

Pgina 339 de 384

una base de datos, se necesita un sistema de administracin de bases de


datos, tal como MySQL.
MySQL es un sistema de administracin de bases de datos
relacionales. Una base de datos relacional almacena los datos en tablas
separadas en lugar de poner todos los datos en un solo lugar. Esto agrega
velocidad y flexibilidad. Las tablas son enlazadas al definir relaciones
que hacen posible combinar datos de varias tablas cuando se necesitan
consultar datos. La parte SQL de "MySQL" significa "Lenguaje Estructurado
de Consulta", y es el lenguaje ms usado y estandardizado para acceder a
bases de datos relacionales.
MySQL es cdigo abierto. Cdigo abierto significa que la persona que
quiera puede usar y modificar MySQL. Cualquiera puede descargar el
software de MySQL de Internet y usarlo sin pagar por ello. Inclusive,
cualquiera que lo necesite puede estudiar el cdigo fuente y cambiarlo de
acuerdo a sus necesidades. MySQL usa la licencia GPL (Licencia Pblica
General GNU), para definir qu es lo que se puede y no se puede hacer con
el software para diferentes situaciones. Sin embargo, si uno est incmodo
con la licencia GPL o tiene la necesidad de incorporar cdigo de MySQL en
una aplicacin comercial es posible comprar una versin de MySQL con una
licencia comercial.

Usar el cliente mysql


El objetivo de este captulo es mostrar el uso del programa cliente mysql para crear
y usar una sencilla base de datos. mysql (algunas veces referido como "monitor
mysql") es un programa interactivo que permite conectarnos a un servidor MySQL,
ejecutar algunas consultas, y ver los resultados. mysql puede ser usado tambin en
modo batch: es decir, se pueden colocar toda una serie de consultas en un archivo, y
posteriormente decirle a mysql que ejecute dichas consultas.
Lo primero es instalar mysql en alguna mquina y disponer de un servidor MySQL al
cul podemos conectarnos. En nuestro caso, para instalarlo bajo Guadalinex, podemos
abrir un terminal de Root ejecutando el men Herramientas del sistema>Terminal
de Root. Tecleamos la contrasea del root y, dentro del terminal, nos aparece el shell
(programa que interpreta y ejecuta los comandos que el usuario escribe en un indicador
de lnea de comandos. Cuando iniciamos un Terminal, se activa el shell predeterminado
especificado en la cuenta del sistema donde tecleamos las siguientes rdenes:
shell>apt-get update
shell>apt-get install mysql-server mysql-client
Con apt-get install incluso nos configura el arranque, los derechos de ejecucin y las
bases de datos propias de mysql y nos ahorramos tener que redefinir el PATH. Para
probar que todo ha ido bien ejecutamos la consola mysql :
Pgina 340 de 384

Linux

shell>mysql
y nos debera de aparecer el mensaje de bienvenida siguiente y el promt de mysql:
Welcome to the MySQL monitor. Commands end with ; org.Your MySQL
connection id is 3 to server version: 4.0.16-logType 'help;' or
'h' for help. Type 'c' to clear the buffer.
mysql>

Conectarse y desconectarse al servidor MySQL


Para conectarse al servidor, usualmente necesitamos de un nombre de usuario (login)
y de una contrasea (password), y si el servidor al que nos deseamos conectar est
en una mquina diferente de la nuestra, tambin necesitamos indicar el nombre o la
direccin IP de dicho servidor. Una vez que conocemos estos tres valores, podemos
conectarnos de la siguiente manera en un terminal:
shell> mysql -h NombreDelServidor -u NombreDeUsuario -p
Cuando ejecutamos este comando, se nos pedir que proporcionemos tambin la
contrasea para el nombre de usuario que estamos usando.
Algunas instalaciones, como la comentada anteriormente, permiten que los usuarios se
conecten de manera annima al servidor corriendo en la mquina local. Si es el caso
de nuestra mquina, como ya hemos visto, debemos de ser capaces de conectarnos al
servidor invocando a mysql sin ninguna opcin en un terminal:
shell> mysql
Este prompt nos indica que mysql est listo para recibir comandos. Para ver la lista de
opciones proporcionadas por mysql , lo invocamos con la opcin 'h':
mysql>h
Despus de que nos hemos conectado de manera satisfactoria, podemos
desconectarnos en cualquier momento al escribir "quit", "exit", o presionar CONTROL
+D.
La mayora de los ejemplos siguientes asume que estamos conectados al servidor, lo
cual se indica con el prompt de mysql.

Ejecutar algunas consultas


En este momento debimos de haber podido conectarnos ya al servidor MySQL,
an cuando no hemos seleccionado alguna base de datos para trabajar. Lo que
Plataforma de Teleformacin de IFES

Pgina 341 de 384

haremos a continuacin es escribir algunos comandos para irnos familiarizando con el


funcionamiento de mysql
mysql> SELECT VERSION(), CURRENT_DATE;
+------------+--------------+
| VERSION() | CURRENT_DATE |
+------------+--------------+
| 4.0.16-log | 2004-11-03 |
+------------+--------------+
1 row in set (0.16 sec)
mysql>
Este comando ilustra distintas cosas acerca de mysql:

Un comando normalmente consiste de un sentencia SQL seguida por un


punto y coma.
Cuando emitimos un comando, mysql lo manda al servidor para que lo
ejecute, nos muestra los resultados y regresa el prompt indicando que est
listo para recibir ms consultas.
mysql muestra los resultados de la consulta como una tabla (filas y
columnas). La primera fila contiene etiquetas para las columnas. Las filas
siguientes muestran los resultados de la consulta. Normalmente las etiquetas
de las columnas son los nombres de los campos de las tablas que estamos
usando en alguna consulta. Si lo que estamos recuperando es el valor de
una expresin (como en el ejemplo anterior) las etiquetas en las columnas
son la expresin en s.
mysql muestra cuntas filas fueron regresadas y cuanto tiempo tard en
ejecutarse la consulta, lo cual puede darnos una idea de la eficiencia del
servidor, aunque estos valores pueden ser un tanto imprecisos ya que no
se muestra la hora del CPU, y porque pueden verse afectados por otros
factores, tales como la carga del servidor y la velocidad de comunicacin en
una red.
Las palabras clave pueden ser escritas usando maysculas y minsculas.

Aqu est otra consulta que demuestra cmo se pueden escribir algunas expresiones
matemticas y trigonomtricas:
mysql> SELECT VERSION(), CURRENT_DATE;
+------------+--------------+
| VERSION() | CURRENT_DATE |
+------------+--------------+

Pgina 342 de 384

Linux

| 4.0.16-log | 2004-11-03 |
+------------+--------------+
1 row in set (0.16 sec)
mysql>
Aunque hasta este momento se han escrito sentencias sencillas de una sola lnea, es
posible escribir ms de una sentencia por lnea, siempre y cuando estn separadas por
punto y coma:
mysql> select now();select version();
+---------------------+
| now() |
+---------------------+
| 2004-11-04 15:49:25 |
+---------------------+
1 row in set (0.00 sec)
+------------+
| version() |
+------------+
| 4.0.16-log |
+------------+
1 row in set (0.02 sec)
Un comando no necesita ser escrito en una sola lnea, as que los comandos que
requieran de varias lneas no son un problema. mysql determinar en dnde finaliza la
sentencia cuando encuentre el punto y coma, no cuando encuentre el fin de lnea.
Aqu est un ejemplo que muestra un consulta simple escrita en varias lneas:
mysql> select
-> user(),
-> current_date;
+-----------------+--------------+
| user() | current_date |
+-----------------+--------------+
| chema@localhost | 2004-11-04 |
+-----------------+--------------+
1 row in set (0.00 sec)
En este ejemplo notamos como cambia el prompt (de mysql> a ->) cuando se escribe
una consulta en varias lneas. Esta es la manera en cmo mysql indica que est

Plataforma de Teleformacin de IFES

Pgina 343 de 384

esperando a que finalice la consulta. Sin embargo si deseamos no terminar de escribir


la consulta, podemos hacerlo al escribir c como se muestra en el siguiente ejemplo:
mysql> select
-> user(),
-> c mysql>
De nuevo, se nos regresa el comando el prompt mysql> que nos indica que mysql est
listo para una nueva consulta.
En la siguiente tabla se muestran cada uno de los prompts que podemos obtener y una
breve descripcin de su significado para mysql:
Prompt

Significado

mysql>

Listo para una nueva consulta.

->

Esperando la lnea siguiente de una consulta


multi-lnea.

'>

Esperando la siguiente lnea para completar


una cadena que comienza con una comilla
sencilla ( ' ).

">

Esperando la siguiente lnea para completar


una cadena que comienza con una comilla
doble ( " ).

Tabla 20.1 Promts de mysql.


Los comandos multi-lnea comnmente ocurren por accidente cuando tecleamos
ENTER, pero olvidamos escribir el punto y coma. En este caso mysql se queda
esperando para que finalicemos la consulta:
mysql> SELECT USER()
->
Si esto llega a suceder, muy probablemente mysql estar esperando por un punto y
coma, de manera que si escribimos el punto y coma podremos completar la consulta y
mysql podr ejecutarla:
mysql> SELECT USER()
-> ;
+-----------------+
| USER() |
+-----------------+
| chema@localhost |
+-----------------+

Pgina 344 de 384

Linux

1 row in set (0.00 sec)


Los prompts '> y "> ocurren durante la escritura de cadenas. En mysql podemos
escribir cadenas utilizando comillas sencillas o comillas dobles (por ejemplo, 'hola' y
"hola"), y mysql nos permite escribir cadenas que ocupen mltiples lneas. De manera
que cuando veamos el prompt '> o "> , mysql nos indica que hemos empezado a
escribir una cadena, pero no la hemos finalizado con la comilla correspondiente.
Aunque esto puede suceder si estamos escribiendo una cadena muy grande, es ms
frecuente que obtengamos alguno de estos prompts si inadvertidamente escribimos
alguna de estas comillas.
Por ejemplo:
mysql> SELECT * FROM mi_tabla WHERE nombre = "Lopez AND
antiguedad < 10;
">
Si escribimos esta consulta SELECT y entonces presionamos ENTER para ver el
resultado, no suceder nada. En lugar de preocuparnos porque la consulta ha tomado
mucho tiempo, debemos notar la pista que nos da mysql cambiando el prompt. Esto
nos indica que mysql est esperando que finalicemos la cadena iniciada ("Lopez).
En este caso, qu es lo que debemos hacer? . La cosa ms simple es cancelar la
consulta. Sin embargo, no basta con escribir c, ya que mysql interpreta esto como
parte de la cadena que estamos escribiendo. En lugar de esto, debemos escribir antes
la comilla correspondiente y despus c :
mysql> SELECT * FROM mi_tabla WHERE apellido = "Lopez AND
antiguedad < 10;
"> " c
mysql>
El prompt cambiar de nuevo al ya conocido mysql>, indicndonos que mysql est listo
para una nueva consulta.
Es sumamente importante conocer lo que significan los prompts '> y ">, ya que si
en algn momento nos aparece alguno de ellos, todas la lneas que escribamos a
continuacin sern consideradas como parte de la cadena, inclusive cuando escribimos
QUIT. Esto puede ser confuso, especialmente si no sabemos que es necesario escribir
la comilla correspondiente para finalizar la cadena, para que podamos escribir despus
algn otro comando, o terminar la consulta que deseamos ejecutar.

Plataforma de Teleformacin de IFES

Pgina 345 de 384

Crear y usar una base de datos


Ahora que conocemos como escribir y ejecutar sentencias, podemos ya acceder a una
base de datos.
Para ello, supongamos que tenemos mucha informacin musical en nuestra casa en
forma de compactos, discos de vinilo y cintas de casete y deseamos tener registros
de los datos acerca de ellas. Podemos hacer esto al crear tablas que guarden esta
informacin, para que posteriormente la consulta de estos datos sea bastante fcil y
de manera muy prctica. En esta seccin vamos a ver como crear una base de datos,
crear una tabla, incorporar datos en una tabla, y recuperar datos de las tablas de
diversas maneras.
La base de datos "msica" ser deliberadamente muy sencilla, pero no es difcil pensar
de situaciones del mundo real en la cual una base de datos similar puede ser usada.
Primeramente usaremos la sentencia SHOW para ver cules son las bases de datos
existentes en el servidor al que estamos conectados:
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.00 sec)
Es probable que la lista de bases de datos que veamos sea diferente en nuestro caso,
pero seguramente las bases de datos "mysql" y "test" estarn entre ellas (si hemos
accedido como 'root'). En particular, la base de datos "mysql" es requerida, ya que sta
tiene la informacin de los privilegios de los usuarios de MySQL. La base de datos
"test" es creada durante la instalacin de MySQL con el propsito de servir como rea
de trabajo para los usuarios que inician en el aprendizaje de MySQL.
Tenemos que tener en cuenta tambin que es posible que no veamos todas las bases
de datos si no tenemos el privilegio SHOW DATABASES.
Si la base de datos "test" existe, se puede acceder a ella:
mysql> USE test
Database changed

Pgina 346 de 384

Linux

Observamos que USE , al igual que QUIT , no requieren el uso del punto y coma,
aunque si se usa ste, no hay ningn problema. El comando USE es especial tambin
de otra manera: ste debe ser usado en una sola lnea.
Podramos usar la base de datos "test" (si tenemos acceso a ella) para los ejemplos
que vienen a continuacin, pero cualquier cosa que hagamos puede ser eliminada
por cualquier otro usuario que tenga acceso a esta base de datos. Por esta razn,
es recomendable que preguntemos al administrador MySQL acerca de la base de
datos que podemos usar. Supongamos que deseamos tener una base de datos
llamada "musica" (ntese que no se est acentuando la palabra) a la cual slo nosotros
tengamos acceso, para ello el administrador necesita ejecutar un comando como el
siguiente:
mysql> GRANT ALL on musica.* TO MiNombreUsuario@MiComputadora
-> IDENTIFIED BY 'MiContrasea';
en donde MiNombreUsuario es el nombre de usuario asignado dentro del contexto de
MySQL, MiComputadora es el nombre o la direccin IP de la computadora desde la que
nos conectamos al servidor MySQL, y MiContrasea es la contrasea que se nos ha
asignado, igualmente, dentro del ambiente de MySQL exclusivamente. Ambos, nombre
de usuario y contrasea no tienen nada que ver con el nombre de usuario y contrasea
manejados por el sistema operativo.
Si el administrador cre la base de datos al momento de asignar los permisos,
podemos hacer uso de ella. De otro modo, nosotros debemos crearla:
mysql> USE musica
ERROR 1049: Unknown database 'musica'
El mensaje anterior indica que la base de datos no ha sido creada, por lo tanto
necesitamos crearla.
mysql> CREATE DATABASE musica;
Query OK, 1 row affected (0.00 sec)
mysql> USE musica;
Database changed
mysql>
Bajo el sistema operativo Guadalinex, los nombres de las bases de datos son sensibles
al uso de maysculas y minsculas (no como las palabras clave de SQL), por lo tanto
debemos de tener cuidado de escribir correctamente el nombre de la base de datos.
Esto es cierto tambin para los nombres de las tablas.

Plataforma de Teleformacin de IFES

Pgina 347 de 384

Al crear una base de datos no se selecciona sta de manera automtica; debemos


hacerlo de manera explcita, por ello usamos el comando USE en el ejemplo anterior.
La base de datos se crea slo una vez, pero nosotros debemos seleccionarla cada vez
que iniciamos una sesin con mysql . Por ello es recomendable que se indique la base
de datos sobre la que vamos a trabajar al momento de invocar al monitor de MySQL.
Por ejemplo:
shell>mysql -h localhost -u chema -p musica
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 9 to server version: 4.0.16-log
Type 'help;' or 'h' for help. Type 'c' to clear the buffer
Observamos que "musica" no es la contrasea que se est proporcionando desde la
lnea de comandos, sino el nombre de la base de datos a la que deseamos acceder. Si
deseamos proporcionar la contrasea en la lnea de comandos despus de la opcin
"-p", debemos de hacerlo sin dejar espacios (por ejemplo, -pholamundo, no como -p
holamundo). Sin embargo, escribir nuestra contrasea desde la lnea de comandos no
es recomendado, ya que es bastante inseguro.

Crear una tabla


SHOW TABLES:Crear la base de datos es la parte ms fcil, pero en este momento la
base de datos est vaca, como lo indica el comando SHOW TABLES
mysql> SHOW TABLES;
Empty set (0.00 sec)
La parte un tanto complicada es decidir la estructura que debe tener nuestra base de
datos: qu tablas se necesitan y qu columnas estarn en cada tabla.
En principio, necesitamos una tabla que contenga un registro para cada una de
nuestros ttulos de msica. sta puede ser una tabla llamada discos, y debe contener
por lo menos el ttulo de cada uno de nuestros discos. Ya que el nombre en s no
es muy interesante, la tabla debe contener alguna otra informacin. Por ejemplo, es
probable que queramos guardar la informacin acerca de quien es el interprete de
cada disco. As mismo, tambin sera interesante contar con alguna informacin ms
descriptiva tal como el gnero musical de cada disco.
Y que sucede con la antigedad del disco? Esto puede ser tambin de inters, pero
no es una buena idea almacenar este dato en la base de datos. La antigedad cambia
conforme pasa el tiempo, lo cual significa que debemos de actualizar los registros
frecuentemente. En vez de esto, es una mejor idea guardar un valor fijo, tal como
Pgina 348 de 384

Linux

la fecha de adquisicin. Entonces, cuando necesitemos la antigedad, la podemos


calcular como la diferencia entre la fecha actual y la fecha de adquisicin. MySQL
proporciona funciones para hacer operaciones entre fechas, as que no hay ningn
problema.
Es probable que estemos pensando en otro tipo de informacin que sera igualmente
til en la tabla 'discos', pero para nosotros ser suficiente por ahora contar con
informacin de ttulo, autor, gnero y fecha de adquisicin.
Usaremos la sentencia CREATE TABLE para indicar como estarn conformados los
registros de nuestras discos.
mysql> CREATE TABLE discos(
-> titulo VARCHAR(40), autor VARCHAR(20),
-> genero VARCHAR(20), adquisicion DATE);
Query OK, 0 rows affected (0.03 sec)
VARCHAR es una buena eleccin para los campos ttulo, autor, y gnero, ya que los
valores que almacenarn son de longitud variable. Se puede especificar cualquier
longitud entre 1 y 255, lo que se considere ms adecuado. Si resulta que la eleccin de
la longitud de los campos que hemos hecho no result adecuada, MySQL proporciona
una sentencia ALTER TABLE que nos puede ayudar a solventar este problema. El uso
del tipo de dato DATE para el campo adquisicin debe de resultar obvio.
Ahora que hemos creado la tabla, la sentencia SHOW TABLES debe producir algo
como:
mysql> SHOW TABLES;
+------------------+
| Tables_in_musica |
+------------------+
| discos |
+------------------+
1 row in set (0.00 sec)
Para verificar que la tabla fue creada como nosotros esperbamos, usaremos la
sentencia DESCRIBE :
mysql> DESCRIBE discos;
+-------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| titulo | varchar(40) | YES | | NULL | |

Plataforma de Teleformacin de IFES

Pgina 349 de 384

| autor | varchar(20) | YES | | NULL | |


| genero | varchar(20) | YES | | NULL | |
| adquisicion | date | YES | | NULL | |
+-------------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
Podemos hacer uso de la sentencia DESCRIBE en cualquier momento, por ejemplo, si
olvidamos los nombres el tipo de las columnas en la tabla.

Aadir datos en una tabla


Despus de haber creado la tabla, ahora podemos incorporar algunos datos en ella,
para lo cual haremos uso de las sentencias INSERT y LOAD DATA .
Supongamos que los registros de nuestros discos pueden ser descritos por los datos
mostrados en la siguiente tabla.
Ttulo

Autor

Gnero

Adquisicin

MADE IN JAPAN

DEEP PURPLE

POP-ROCK

1991-02-04

CLUES

ROBERT PALMER

POP-ROCK

1998-03-17

CABO DO MUNDO

LUAR NA LUBRE

FOLK

1999-05-13

EN LA FUSA

VINICIUS DE
MORAES

BRASILEO

2000-08-27

RUMBA ARGELINA

RADIO TARIFA

ETNICO

1998-08-31

SUPERNATURAL

SANTANA

POP-ROCK

2001-09-11

A PESAR DE TODO

HILARIO CAMACHO

FOLK

1991-02-09

LADY SOUL

ARETHA FRANKLIN

SOUL

1994-04-29

GRATEST HITS

BOB DYLAN

FOLK

1997-01-22

Tabla 20.2 Datos de la tabla 'discos'


Debemos observar que MySQL espera recibir fechas en el formato YYYY-MM-DD, que
puede ser diferente a lo que nosotros estamos acostumbrados.

Pgina 350 de 384

Linux

Ya que estamos iniciando con una tabla vaca, la manera ms fcil de poblarla es crear
un archivo de texto que contenga un registro por lnea para cada uno de nuestros
discos para que posteriormente carguemos el contenido del archivo en la tabla
nicamente con una sentencia.
Por tanto, debemos de crear un archivo de texto "discos.txt" que contenga un registro
por lnea con valores separados por tabuladores, teniendo en cuenta que el orden
de las columnas sea el mismo que utilizamos en la sentencia CREATE TABLE. Para
valores que no conozcamos podemos usar valores nulos (NULL). Para representar
estos valores en nuestro archivo debemos usar N.
Para cargar el contenido del archivo en la tabla mascotas, usaremos el siguiente
comando:
mysql> LOAD DATA LOCAL INFILE "discos.txt" INTO TABLE discos;
La sentencia LOAD DATA nos permite especificar cul es el separador de columnas
y el separador de registros. Por defecto, el tabulador es el separador de columnas
(campos), y el salto de lnea es el separador de registros, que en este caso son
suficientes para que la sentencia LOAD DATA lea correctamente el archivo "discos.txt".
Si lo que deseamos es aadir un registro a la vez, entonces debemos hacer uso de la
sentencia INSERT . En la manera ms simple, debemos proporcionar un valor para
cada columna en el orden en el cual fueron listados en la sentencia CREATE TABLE .
Podemos usar la sentencia INSERT para agregar un registro en nuestra base de datos.
mysql> INSERT INTO discos
-> VALUES('MOONDANCE','VAN MORRISON','POP-ROCK','2004-06-03');
Notar que los valores de cadenas y fechas deben estar encerrados entre comillas.
Tambin, con la sentencia INSERT podemos insertar el valor NULL directamente para
representar un valor nulo, un valor que no conocemos. En este caso no se usa N como
en el caso de la sentencia LOAD DATA.
De este ejemplo, debemos ser capaces de ver que es un poco ms la tarea que se
tiene que realizar si inicialmente cargamos los registros con varias sentencias INSERT
en lugar de una nica sentencia LOAD DATA.

Recuperar informacin de una tabla

Plataforma de Teleformacin de IFES

Pgina 351 de 384

La sentencia SELECT es usada para obtener la informacin guardada en una tabla. La


forma general de esta sentencia es:
SELECT LaInformacinQueDeseamos FROM DeQueTabla WHERE
CondicinASatisfacer
Aqu, LaInformacinQueDeseamos es la informacin que queremos ver. Esta puede
ser una lista de columnas, o un * para indicar "todas las columnas". DeQueTabla indica
el nombre de la tabla de la cual vamos a obtener los datos. La clasula WHERE es
opcional. Si est presente, la CondicinASatisfacer especifica las condiciones que los
registros deben satisfacer para que puedan ser mostrados.

Seleccionar todos los datos


La forma ms simple de la sentencia SELECT es cuando se recuperan todos los datos
de una tabla:
mysql> SELECT * FROM discos;
+-----------------+--------------------+-----------+------------+
| titulo | autor | genero | adquisicion |
+-----------------+--------------------+-----------+------------+
| MADE IN JAPAN | DEEP PURPLE | POP-ROCK | 1991-02-04 |
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
| EN LA FUSA | VINICIUS DE MORAES | BRASILEO | 2000-08-27 |
| RUMBA ARGELINA | RADIO TARIFA | ETNICO | 1998-08-31 |
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| GRATEST HITS | BOB DYLAN | FOLK | 1997-01-22 |
| MOONDANCE | VAN MORRISON | POP-ROCK | 2004-06-03 |
+-----------------+--------------------+-----------+------------+
10 rows in set (0.00 sec)
Esta forma del SELECT es til si deseamos ver los datos completos de la tabla, por
ejemplo, para asegurarnos de que estn todos los registros despus de la carga de un
archivo.
Pgina 352 de 384

Linux

Por ejemplo, en este caso que estamos tratando, al consultar los registros de la tabla,
nos damos cuenta de que hay un error en el archivo de datos (discos.txt). Al revisar
el disco MADE IN JAPAN encontramos que la fecha correcta de adquisicin es el ao
1999, no 1991.
Podemos corregir el registro errneo con una sentencia UPDATE:
mysql> UPDATE discos SET adquisicion="1999-02-04" WHERE
titulo="MADE IN JAPAN";

Como se mostr anteriormente, es muy fcil recuperar los datos de una tabla completa.
Pero tpicamente no deseamos hacer esto, particularmente cuando las tablas son
demasiado grandes. En vez de ello, estaremos ms interesados en responder
preguntas particulares, en cuyo caso debemos especificar algunas restricciones para la
informacin que deseamos ver.

Seleccionar registros particulares


Podemos seleccionar slo registros particulares de una tabla. Por ejemplo, si
deseamos verificar el cambio que hicimos a la fecha de adquisicin de MADE IN
JAPAN , seleccionamos slo este registro de la siguiente manera :
mysql> SELECT * FROM discos WHERE titulo="MADE IN JAPAN";
+---------------+-------------+----------+-------------+
| titulo | autor | genero | adquisicin |
+---------------+-------------+----------+-------------+
| MADE IN JAPAN | DEEP PURPLE | POP-ROCK | 1999-02-04 |
+---------------+-------------+----------+-------------+
1 row in set (0.00 sec)
La salida mostrada confirma que el ao ha sido corregido de 1991 a 1999.
La comparacin de cadenas es normalmente no sensitiva, as que podemos especificar
el nombre como "made in japan", "MADE IN JAPAN", etc. El resultado de la consulta
ser el mismo.

Plataforma de Teleformacin de IFES

Pgina 353 de 384

Podemos adems especificar condiciones sobre cualquier columna, no slo el "titulo".


Por ejemplo, si deseamos conocer qu discos hemos adquirido despus del 2000,
tendramos que usar la columna "adquisicion":
mysql> SELECT * FROM discos WHERE adquisicion >= "2000-1-1";
+--------------+--------------------+-----------+-------------+
| titulo | autor | genero | adquisicion |
+--------------+--------------------+-----------+-------------+
| EN LA FUSA | VINICIUS DE MORAES | BRASILEO | 2000-08-27 |
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| MOONDANCE | VAN MORRISON | POP-ROCK | 2004-06-03 |
+--------------+--------------------+-----------+-------------+
3 rows in set (0.00 sec)
Podemos tambin combinar condiciones, por ejemplo, para localizar a los discos de
pop-rock que hemos adquirido antes del 2000:
SELECT * FROM discos WHERE adquisicion <= "2000-1-1"AND genero="POP-ROCK";
+---------------+---------------+----------+-------------+
| titulo
| autor
| genero
| adquisicion |
+---------------+---------------+----------+-------------+
| MADE IN JAPAN | DEEP PURPLE
| POP-ROCK | 1999-02-04 |
| CLUES
| ROBERT PALMER | POP-ROCK | 1998-03-17 |
+---------------+---------------+----------+-------------+
2 rows in set (0.00 sec)
La consulta anterior usa el operador lgico AND . Hay tambin un operador lgico OR :
mysql> SELECT * FROM discos WHERE genero="SOUL"OR genero="FOLK";
+-----------------+-----------------+--------+-------------+
| titulo | autor | genero | adquisicion |
+-----------------+-----------------+--------+-------------+
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| GRATEST HITS | BOB DYLAN | FOLK | 1997-01-22 |
+-----------------+-----------------+--------+-------------+
4 rows in set (0.00 sec)
El operador AND y el operador OR pueden ser intercambiados. Si hacemos esto, es
buena idea usar parntesis para indicar como deben ser agrupadas las condiciones:

Pgina 354 de 384

Linux

mysql>SELECT * FROM discos WHERE(adquisicion >= "2000-1-1"AND


genero="POP-ROCK")
-> OR genero="SOUL";
+--------------+-----------------+----------+-------------+
| titulo | autor | genero | adquisicion |
+--------------+-----------------+----------+-------------+
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| MOONDANCE | VAN MORRISON | POP-ROCK | 2004-06-03 |
+--------------+-----------------+----------+-------------+
3 rows in set (0.00 sec)
Si no deseamos ver los registros completos de una tabla, entonces tenemos que
usar los nombres de las columnas en las que estamos interesados separndolas por
coma. Por ejemplo, si deseamos conocer la fecha de adquisicin de nuestros discos,
debemos seleccionar la columna "ttulo" y "adquisicion":
mysql> SELECT titulo, adquisicion FROM discos;
+-----------------+-------------+
| titulo | adquisicion |
+-----------------+-------------+
| MADE IN JAPAN | 1999-02-04 |
| CLUES | 1998-03-17 |
| CABO DO MUNDO | 1999-05-13 |
| EN LA FUSA | 2000-08-27 |
| RUMBA ARGELINA | 1998-08-31 |
| SUPERNATURAL | 2001-09-11 |
| A PESAR DE TODO | 1991-02-09 |
| LADY SOUL | 1994-04-29 |
| GRATEST HITS | 1997-01-22 |
| MOONDANCE | 2004-06-03 |
+-----------------+-------------+
10 rows in set (0.00 sec)
Para conocer de que gneros musicales disponemos, usaremos la siguiente consulta:
mysql> SELECT SELECT genero FROM discos;
+-----------+
| genero
|
+-----------+
| POP-ROCK |
| POP-ROCK |

Plataforma de Teleformacin de IFES

Pgina 355 de 384

| FOLK
|
| BRASILEO |
| ETNICO
|
| POP-ROCK |
| FOLK
|
| SOUL
|
| FOLK
|
| POP-ROCK |
+-----------+
10 rows in set (0.00 sec)
Sin embargo, debemos notar que la consulta recupera el nombre del gnero de
cada disco, y algunos de ellos aparecen ms de una vez. Para minimizar la salida,
agregaremos la palabra clave DISTINCT:
mysql> SELECT DISTINCT genero FROM discos;
+-----------+
| genero |
+-----------+
| POP-ROCK |
| FOLK |
| BRASILEO |
| ETNICO |
| SOUL |
+-----------+
5 rows in set (0.02 sec)
Se puede usar tambin una clausula WHERE para combinar seleccin de filas con
seleccin de columnas. Por ejemplo, para obtener el ttulo y interprete de los discos de
folk y pop-rock, usaremos la siguiente consulta:
mysql> SELECT titulo,autor FROM discos WHERE genero="FOLK" OR
genero="POP-ROCK";
+-----------------+-----------------+
| titulo | autor |
+-----------------+-----------------+
| MADE IN JAPAN | DEEP PURPLE |
| CLUES | ROBERT PALMER |
| CABO DO MUNDO | LUAR NA LUBRE |
| SUPERNATURAL | SANTANA |
| A PESAR DE TODO | HILARIO CAMACHO |
| GRATEST HITS | BOB DYLAN |
| MOONDANCE | VAN MORRISON |

Pgina 356 de 384

Linux

+-----------------+-----------------+
7 rows in set (0.00 sec)

Ordenar registros
Tenemos que notar en los ejemplos anteriores que las filas regresadas son mostradas
sin ningn orden en particular. Sin embargo, frecuentemente es ms fcil examinar
la salida de una consulta cuando las filas son ordenadas en alguna forma til. Para
ordenar los resultados, tenemos que usar una clausula ORDER BY.
Aqu aparecen algunos datos ordenados por fecha de adquisicin:
mysql> SELECT titulo,autor,adquisicion FROM discos WHERE
genero="FOLK"
-> ORDER BY adquisicion;
+-----------------+-----------------+-------------+
| titulo | autor | adquisicion |
+-----------------+-----------------+-------------+
| A PESAR DE TODO | HILARIO CAMACHO | 1991-02-09 |
| GRATEST HITS | BOB DYLAN | 1997-01-22 |
| CABO DO MUNDO | LUAR NA LUBRE | 1999-05-13 |
+-----------------+-----------------+-------------+
3 rows in set (0.04 sec
En las columnas de tipo carcter, el ordenamiento es ejecutado normalmente de forma
no sensitiva, es decir, no hay diferencia entre maysculas y minsculas. Sin embargo,
se puede forzar un ordenamiento sensitivo al usar el operador BINARY.
Para ordenar en orden inverso, debemos agregar la palabra clave DESC al nombre de
la columna que estamos usando en el ordenamiento.
mysql> SELECT titulo,autor,adquisicin FROM discos
-> ORDER BY adquisicion DESC;
+-----------------+--------------------+-------------+
| titulo
| autor
| adquisicion |
+-----------------+--------------------+-------------+
| MOONDANCE
| VAN MORRISON
| 2004-06-03 |
| SUPERNATURAL
| SANTANA
| 2001-09-11 |
| EN LA FUSA
| VINICIUS DE MORAES | 2000-08-27 |
| CABO DO MUNDO
| LUAR NA LUBRE
| 1999-05-13 |
| MADE IN JAPAN
| DEEP PURPLE
| 1999-02-04 |

Plataforma de Teleformacin de IFES

Pgina 357 de 384

| RUMBA ARGELINA | RADIO TARIFA


| 1998-08-31 |
| CLUES
| ROBERT PALMER
| 1998-03-17 |
| GRATEST HITS
| BOB DYLAN
| 1997-01-22 |
| LADY SOUL
| ARETHA FRANKLIN
| 1994-04-29 |
| A PESAR DE TODO | HILARIO CAMACHO
| 1991-02-09 |
+-----------------+--------------------+-------------+
10 rows in set (0.00 sec)
Podemos ordenar por mltiples columnas. Por ejemplo, para ordenar por gnero
musical y fecha de adquisicin, usaremos la siguiente consulta:
mysql> SELECT titulo,genero,adquisicin FROM discos
-> ORDER BY genero,adquisicin DESC;
+-----------------+-----------+-------------+
| titulo
| genero
| adquisicin |
+-----------------+-----------+-------------+
| EN LA FUSA
| BRASILEO | 2000-08-27 |
| RUMBA ARGELINA | ETNICO
| 1998-08-31 |
| CABO DO MUNDO
| FOLK
| 1999-05-13 |
| GRATEST HITS
| FOLK
| 1997-01-22 |
| A PESAR DE TODO | FOLK
| 1991-02-09 |
| MOONDANCE
| POP-ROCK | 2004-06-03 |
| SUPERNATURAL
| POP-ROCK | 2001-09-11 |
| MADE IN JAPAN
| POP-ROCK | 1999-02-04 |
| CLUES
| POP-ROCK | 1998-03-17 |
| LADY SOUL
| SOUL
| 1994-04-29 |
+-----------------+-----------+-------------+
10 rows in set (0.00 sec)
En este caso se aprecia la palabra clave DESC se aplica slo a la columna nombrada
que le predede.

Borrar registros
Si deseamos borrar algn registro de la tabla 'discos' por la razn que sea, podemos
ejecutar el comando DELETE . Por ejemplo, si queremos borrar el disco 'RUMBA
ARGELINA' de nuestra tabla:
mysql> DELETE FROM discos WHERE titulo="RUMBA ARGELINA";
Query OK, 1 row affected (0.00 sec)
A continuacin, comprobamos que ya no sta en la tabla 'discos':

Pgina 358 de 384

Linux

mysql> SELECT * FROM discos;


+-----------------+--------------------+-----------+------------+
| titulo | autor | genero | adquisicin |
+-----------------+--------------------+-----------+------------+
| MADE IN JAPAN | DEEP PURPLE | POP-ROCK | 1999-02-04 |
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
| EN LA FUSA | VINICIUS DE MORAES | BRASILEO | 2000-08-27 |
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| GRATEST HITS | BOB DYLAN | FOLK | 1997-01-22 |
| MOONDANCE | VAN MORRISON | POP-ROCK | 2004-06-03 |
+-----------------+--------------------+-----------+------------+
9 rows in set (0.00 sec)

Clculos con fechas


MySQL proporciona diversas funciones que se pueden usar para efectuar clculos
sobre fechas, por ejemplo, para calcular antigedades o extraer partes de una fecha
(da, mes, ao, etc).
Por ejemplo, para determinar la antigedad (en aos completos) de cada uno de
nuestros discos, tenemos que calcular la diferencia de aos de la fecha actual y
la fecha de adquisicin, y entonces retar uno si la fecha actual ocurre antes en el
calendario que la fecha de adquisicin. Las siguientes consultas muestran la fecha
actual, la fecha de adquisicin y la antigedad para cada disco.
mysql> SELECT titulo, adquisicion, CURRENT_DATE,
-> (YEAR(CURRENT_DATE) - YEAR(adquisicion))
->-(RIGHT(CURRENT_DATE,5) < RIGHT(adquisicion,5)) AS antiguedad
FROM discos;
+-----------------+-------------+--------------+------------+
| titulo | adquisicion | CURRENT_DATE | antiguedad |
+-----------------+-------------+--------------+------------+
| MADE IN JAPAN | 1999-02-04 | 2004-11-08 | 5 |
| CLUES | 1998-03-17 | 2004-11-08 | 6 |

Plataforma de Teleformacin de IFES

Pgina 359 de 384

| CABO DO MUNDO | 1999-05-13 | 2004-11-08 | 5 |


| EN LA FUSA | 2000-08-27 | 2004-11-08 | 4 |
| SUPERNATURAL | 2001-09-11 | 2004-11-08 | 3 |
| A PESAR DE TODO | 1991-02-09 | 2004-11-08 | 13 |
| LADY SOUL | 1994-04-29 | 2004-11-08 | 10 |
| GRATEST HITS | 1997-01-22 | 2004-11-08 | 7 |
| MOONDANCE | 2004-06-03 | 2004-11-08 | 0 |
+-----------------+-------------+--------------+------------+
9 rows in set (0.04 sec)
Aqu, YEAR( ) obtiene
nicamente el ao y RIGHT( ) obtiene los cinco caracteres ms a la derecha de cada
una de las fechas, que representan el mes y el da (MM-DD). La parte de la expresin
que compara los valores MM-DD se evala a 1 o 0, y permite ajustar el valor de la
antigedad en el caso de que el valor MM-DD de la fecha actual ocurra antes del valor
MM-DD de la fecha de adquisicin.
Dado que la expresin en s es bastante fea, se ha usado un alias (antiguedad) que es
el que aparece como etiqueta en la columna que muestra el resultado de la consulta.
Esta consulta debe trabajar bien, pero el resultado puede ser de alguna manera ms
til si las filas son presentadas en algn orden. Para ello haremos uso de la clusula
ORDER BY.
Por ejemplo, para ordenar por ttulo, usaremos la siguiente consulta:
mysql> SELECT titulo, adquisicin, CURRENT_DATE,
-> (YEAR(CURRENT_DATE) - YEAR(adquisicin))
-> - (RIGHT(CURRENT_DATE,5) < RIGHT(adquisicin,5))
-> AS antiguedad FROM discos ORDER BY titulo;
+-----------------+-------------+--------------+------------+
| titulo | adquisicin | CURRENT_DATE | antiguedad |
+-----------------+-------------+--------------+------------+
| A PESAR DE TODO | 1991-02-09 | 2004-11-08 | 13 |
| CABO DO MUNDO | 1999-05-13 | 2004-11-08 | 5 |
| CLUES | 1998-03-17 | 2004-11-08 | 6 |
| EN LA FUSA | 2000-08-27 | 2004-11-08 | 4 |
| GRATEST HITS | 1997-01-22 | 2004-11-08 | 7 |
| LADY SOUL | 1994-04-29 | 2004-11-08 | 10 |
| MADE IN JAPAN | 1999-02-04 | 2004-11-08 | 5 |
| MOONDANCE | 2004-06-03 | 2004-11-08 | 0 |
| SUPERNATURAL | 2001-09-11 | 2004-11-08 | 3 |

Pgina 360 de 384

Linux

+-----------------+-------------+--------------+------------+
9 rows in set (0.00 sec)
Para ordenar por antigedad en lugar de por ttulo, n
icamente tenemos que usar una clusula ORDER BY diferente:
mysql> SELECT titulo, adquisicin, CURRENT_DATE,
-> (YEAR(CURRENT_DATE) - YEAR(adquisicin))
-> - (RIGHT(CURRENT_DATE,5) < RIGHT(adquisicin,5))
-> AS antiguedad FROM discos ORDER BY antiguedad;
+-----------------+-------------+--------------+------------+
| titulo | adquisicin | CURRENT_DATE | antiguedad |
+-----------------+-------------+--------------+------------+
| MOONDANCE | 2004-06-03 | 2004-11-08 | 0 |
| SUPERNATURAL | 2001-09-11 | 2004-11-08 | 3 |
| EN LA FUSA | 2000-08-27 | 2004-11-08 | 4 |
| MADE IN JAPAN | 1999-02-04 | 2004-11-08 | 5 |
| CABO DO MUNDO | 1999-05-13 | 2004-11-08 | 5 |
| CLUES | 1998-03-17 | 2004-11-08 | 6 |
| GRATEST HITS | 1997-01-22 | 2004-11-08 | 7 |
| LADY SOUL | 1994-04-29 | 2004-11-08 | 10 |
| A PESAR DE TODO | 1991-02-09 | 2004-11-08 | 13 |
+-----------------+-------------+--------------+------------+
9 rows in set (0.00 sec)
Qu sucede si deseamos conocer cules de nuestros discos hemos comprado en un
mes concreto? Para este tipo de clculos, el ao y el da son irrelevantes; simplemente
tenemos que extraer el valor del mes en la columna nacimiento. Como se mencion
anteriormente, MySQL proporciona diversas funciones para trabajar y manipular
fechas, en este caso haremos uso de la funcin MONTH( ). Para ver como trabaja,
vamos a ejecutar una consulta muy simple que muestra tanto el valor de una fecha
como el valor que regresa la funcin MONTH( ).
mysql> SELECT titulo, adquisicin, MONTH(adquisicin) FROM
discos;
+-----------------+-------------+--------------------+
| titulo | adquisicin | MONTH(adquisicin) |
+-----------------+-------------+--------------------+
| MADE IN JAPAN | 1999-02-04 | 2 |
| CLUES | 1998-03-17 | 3 |
| CABO DO MUNDO | 1999-05-13 | 5 |

Plataforma de Teleformacin de IFES

Pgina 361 de 384

| EN LA FUSA | 2000-08-27 | 8 |
| SUPERNATURAL | 2001-09-11 | 9 |
| A PESAR DE TODO | 1991-02-09 | 2 |
| LADY SOUL | 1994-04-29 | 4 |
| GRATEST HITS | 1997-01-22 | 1 |
| MOONDANCE | 2004-06-03 | 6 |
+-----------------+-------------+--------------------+
9 rows in set (0.00 sec)
Encontrar ahora, por ejemplo, los discos que hemos comprado en el mes de febrero es
muy sencillo.
mysql> SELECT titulo, adquisicin, MONTH(adquisicin) FROM discos
WHERE MONTH(adquisicin)=2;
+-----------------+-------------+--------------------+
| titulo | adquisicin | MONTH(adquisicin) |
+-----------------+-------------+--------------------+
| MADE IN JAPAN | 1999-02-04 | 2 |
| A PESAR DE TODO | 1991-02-09 | 2 |
+-----------------+-------------+--------------------+
2 rows in set (0.00 sec)

Trabajar con valores nulos


El valor NULL puede sorprendernos mientras no hayamos trabajado con l.
Conceptualmente, NULL significa un valor que hace falta, o un valor desconocido, y es
tratado de una manera diferente a otros valores. Para verificar si un valor es NULL no
podemos usar los operadores de comparacin tales como =, > , o < .
Para probar esto ejecutemos la siguiente consulta:
mysql> SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
+----------+-----------+----------+----------+
| 1 = NULL | 1 <> NULL | 1 < NULL | 1 > NULL |
+----------+-----------+----------+----------+
| NULL | NULL | NULL | NULL |
+----------+-----------+----------+----------+
1 row in set (0.00 sec)
Claramente observamos que no obtenemos resultados con algn significado con estos
operadores. Es por ello que tenemos que usar los operadores IS NULL e IS NOT
NULL:
Pgina 362 de 384

Linux

mysql> SELECT 1 IS NULL, 1 IS NOT NULL;


+-----------+---------------+
| 1 IS NULL | 1 IS NOT NULL |
+-----------+---------------+
| 0 | 1 |
+-----------+---------------+
1 row in set (0.00 sec)
En MySQL, 0 o NULL significan falso y cualquier otro valor significa verdadero. El valor
que se considera verdadero por defecto es 1.
Cuando se usa un ORDER BY , los valores NULL son siempre ordenados primero, an
cuando se use la clusula DESC .

Coincidencia de patrones
MySQL proporciona mtodos de coincidencia de patrones basados en SQL estndar,
as como tambin basados en expresiones regulares, de manera similar a las utilidades
de Unix tales como vi, grep y sed.
La coincidencia de patrones basada en SQL nos permite usar _ (guin bajo) para un
solo carcter y % para un arbitrario nmero de caracteres. En MySQL, los patrones
SQL no son sensibles al uso de maysculas y minsculas.
Es importante notar que no se usan los operadores = o < > cuando se usan los
patrones SQL; en su lugar se usan los operadores LIKE y NOT LIKE . A continuacin,
presentamos algunos ejemplos.
Para encontrar los ttulos de discos que comienzan con 'c' :
mysql> SELECT * FROM discos WHERE titulo LIKE "c%";
+---------------+---------------+----------+-------------+
| titulo | autor | genero | adquisicion |
+---------------+---------------+----------+-------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
+---------------+---------------+----------+-------------+
2 rows in set (0.00 sec)
Para encontrar los ttulos de discos que finalizan con 'do' :
mysql> SELECT * FROM discos WHERE titulo LIKE "%do";

Plataforma de Teleformacin de IFES

Pgina 363 de 384

+-----------------+-----------------+--------+-------------+
| titulo | autor | genero | adquisicion |
+-----------------+-----------------+--------+-------------+
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
+-----------------+-----------------+--------+-------------+
2 rows in set (0.00 sec)
Para encontrar los ttulos de discos que contienen una s :
mysql> SELECT * FROM discos WHERE titulo LIKE "%s%";
+-----------------+--------------------+-----------+------------+
| titulo | autor | genero | adquisicin |
+-----------------+--------------------+-----------+------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| EN LA FUSA | VINICIUS DE MORAES | BRASILEO | 2000-08-27 |
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| GRATEST HITS | BOB DYLAN | FOLK | 1997-01-22 |
+-----------------+--------------------+-----------+------------+
6 rows in set (0.00 sec)
El otro tipo de coincidencia de patrones proporcionado por MySQL hace uso de
expresiones regulares. Para hacer uso de estos tipos de patrones se tienen que usar
los operadores REGEX P y NOT REGEXP ( o RLIKE y NOT RLIKE , los cules son
sinnimos).
Algunas caractersticas de las expresiones regulares son:

El carcter punto ( . ) coincide con cualquier carcter.


Una clase de caracteres [...] coincide con cualquier carcter dentro de los
parntesis cuadrados. Por ejemplo, [abc] coincide con a, b o c. Para nombrar
un rango de caracteres, se usa el guin. [a-z] coincide con cualquier letra
minscula, mientras que [0-9] coincide con cualquier dgito.
El carcter asterisco ( * ) coincide con cero o ms instancias de lo que le
preceda. Por ejemplo, x* coincide con cualquier nmero de caracteres
x, [0-9]* coincide con cualquier nmero de dgitos, y .* (punto asterisco)
coincide con cualquier cosa.

Pgina 364 de 384

Linux

El patrn coincide si ste ocurre en cualquier parte del valor que est
siendo evaluado. (Los patrones SQL coinciden nicamente en los valores
completos.)
Para indicar el inicio o el final de un valor que est siendo evaluado se usan
los caracteres ^ y $ respectivamente.

Para demostrar como se usan las expresiones regulares, se van a mostrar los ejemplos
presentados anteriormente con el operador LIKE , ahora con el operador REGEXP .
Para encontrar los ttulos de discos que comienzan con 'c' :
mysql> SELECT * FROM discos WHERE titulo REGEXP "^c";
+---------------+---------------+----------+-------------+
| titulo | autor | genero | adquisicin |
+---------------+---------------+----------+-------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
+---------------+---------------+----------+-------------+
2 rows in set (0.00 sec)
Antes de la versin 3.23.4 de MySQL, el operador REGEXP era sensible al uso de
maysculas y minsculas, as que dependiendo de la versin de MySQL con la que
se est trabajando podemos ver que obtenemos o no algn resultado en la consulta
anterior. Se puede usar tambin la siguiente consulta para buscar los ttulos de los
discos que inician con la letra 'c', no importando si es mayscula o minscula.
mysql> SELECT * FROM discos WHERE titulo REGEXP "^[cC]";
+---------------+---------------+----------+-------------+
| titulo | autor | genero | adquisicin |
+---------------+---------------+----------+-------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
+---------------+---------------+----------+-------------+
2 rows in set (0.00 sec)
Desde la versin 3.23.4, para forzar que el operador REGEXP sea sensible al uso de
maysculas y minsculas, se tiene que usar la palabra clave BINARY para hacer de
una de las cadenas, una cadena binaria. Observamos los resultados de la siguientes
consultas.
mysql> SELECT * FROM discos WHERE titulo REGEXP BINARY "^c";
Empty set (0.00 sec)

Plataforma de Teleformacin de IFES

Pgina 365 de 384

mysql> SELECT * FROM discos WHERE titulo REGEXP BINARY "^C";


+---------------+---------------+----------+-------------+
| titulo | autor | genero | adquisicin |
+---------------+---------------+----------+-------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
+---------------+---------------+----------+-------------+
2 rows in set (0.00 sec)
Para encontrar los ttulos de los discos que finalizan con la palabra 'do' , haremos uso
del carcter $.
mysql> SELECT * FROM discos WHERE titulo REGEXP "do$";
+-----------------+-----------------+--------+-------------+
| titulo | autor | genero | adquisicin |
+-----------------+-----------------+--------+-------------+
| CABO DO MUNDO | LUAR NA LUBRE | FOLK | 1999-05-13 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
+-----------------+-----------------+--------+-------------+
2 rows in set (0.00 sec)
Para encontrar los ttulos de los discos que contienen una letra s, la consulta sera:
mysql> SELECT * FROM discos WHERE titulo REGEXP "s";
+-----------------+--------------------+-----------+------------+
| titulo | autor | genero | adquisicin |
+-----------------+--------------------+-----------+------------+
| CLUES | ROBERT PALMER | POP-ROCK | 1998-03-17 |
| EN LA FUSA | VINICIUS DE MORAES | BRASILEO | 2000-08-27 |
| SUPERNATURAL | SANTANA | POP-ROCK | 2001-09-11 |
| A PESAR DE TODO | HILARIO CAMACHO | FOLK | 1991-02-09 |
| LADY SOUL | ARETHA FRANKLIN | SOUL | 1994-04-29 |
| GRATEST HITS | BOB DYLAN | FOLK | 1997-01-22 |
+-----------------+--------------------+-----------+------------+
6 rows in set (0.00 sec)

Pgina 366 de 384

Linux

Contar filas
Las bases de datos son usadas frecuentemente para responder una pregunta, "Con
qu frecuencia ocurre un cierto tipo de dato en una tabla?". Por ejemplo, tal vez
queremos conocer cuntos discos tenemos, o cuntos discos hay de cada gnero. La
funcin COUNT( ) es la utilizamos en esta situacin.
Si deseamos conocer cuntas discos hay por gnero musical, la consulta es la
siguiente:
mysql> SELECT COUNT(*) FROM discos;
+----------+
| COUNT(*) |
+----------+
| 9 |
+----------+
1 row in set (0.00 sec)
Si deseamos conocer cuntas discos hay por gnero musical, la consulta es la
siguiente:
mysql> SELECT genero,COUNT(*) FROM discos GROUP BY GENERO;
+-----------+----------+
| genero | COUNT(*) |
+-----------+----------+
| BRASILEO | 1 |
| FOLK | 3 |
| POP-ROCK | 4 |
| SOUL | 1 |
+-----------+----------+
4 rows in set (0.00 sec)
Se debe notar que hemos usado una clusula GROUP BY para agrupar todos los
registros de cada gnero musical. Si no hacemos esto, obtendremos un mensaje de
error:
mysql> SELECT genero,COUNT(*) FROM discos;
ERROR 1140: Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with
no GROUP columns is illegal if there is no GROUP BY clauseclause

Plataforma de Teleformacin de IFES

Pgina 367 de 384

El uso de la funcin COUNT( ) en conjunto con la clusula GROUP BY es muy til en


diversas situaciones como, por ejemplo, si queremos saber el nmero de discos por
gnero e intrprete:
mysql> SELECT genero, autor, COUNT(*) FROM discos GROUP BY
genero, autor;
+-----------+--------------------+----------+
| genero | autor | COUNT(*) |
+-----------+--------------------+----------+
| BRASILEO | VINICIUS DE MORAES | 1 |
| FOLK | BOB DYLAN | 1 |
| FOLK | HILARIO CAMACHO | 1 |
| FOLK | LUAR NA LUBRE | 1 |
| POP-ROCK | DEEP PURPLE | 1 |
| POP-ROCK | ROBERT PALMER | 1 |
| POP-ROCK | SANTANA | 1 |
| POP-ROCK | VAN MORRISON | 1 |
| SOUL | ARETHA FRANKLIN | 1 |
+-----------+--------------------+----------+
9 rows in set (0.01 sec)
No es necesario que se obtengan todos los datos de una tabla cuando se usa la
funcin COUNT( ). Por ejemplo, en la consulta anterior, para ver nicamente los datos
de folk y soul, la consulta queda de la siguiente manera:
mysql> SELECT genero, autor, COUNT(*) FROM discos
-> WHERE genero="FOLK" OR genero="SOUL"
-> GROUP BY genero,autor;
+--------+-----------------+----------+
| genero | autor | COUNT(*) |
+--------+-----------------+----------+
| FOLK | BOB DYLAN | 1 |
| FOLK | HILARIO CAMACHO | 1 |
| FOLK | LUAR NA LUBRE | 1 |
| SOUL | ARETHA FRANKLIN | 1 |
+--------+-----------------+----------+
4 rows in set (0.00 sec)

Pgina 368 de 384

Linux

Usar ms de una tabla


La tabla 'discos' nos ha servido hasta este momento para tener guardados los datos
acerca de los discos que tenemos. Si deseamos guardar algn otro tipo de informacin
acerca de ellos, tal como los eventos que se producen con los discos -prestamos a
amigos o compaeros, perdidas o deterioro, etc.- necesitaremos de otra tabla. Para
ello, necesitamos:

El ttulo del disco para saber a cul de ellos se refiere el evento.


Una fecha para saber cuando ocurri el evento.
Una descripcin del evento.
Un campo que indique el tipo de evento, si deseamos clasificarlos.

Dadas estas condiciones, la sentencia para crear la tabla eventos queda de la siguiente
manera:
mysql> CREATE TABLE eventos(titulo varchar(40),fecha date,
-> tipo varchar(15),descripcion varchar(255));
Query OK, 0 rows affected (0.00 sec)
De manera similar a la tabla 'discos', es ms fcil cargar los datos de los registros
iniciales al crear un archivo de texto delimitado por tabuladores 'eventos.txt' en el que
se tenga la siguiente informacin:
ttulo

fecha

tipo

descripcin

MADE IN JAPAN

2003-02-15

deterioro

Rayada el tema dos.

CLUES

2004-03-23

perdida

Falta portada trasera

CABO DO MUNDO

2004-11-19

copia

Dos copias realizadas

EN LA FUSA

2003-04-21

prestamo

Prestamo a Ana
Lopez

A PESAR DE TODO

2004-04-27

devolucion

Devuelto por Jaime


Meilan del prestamo

LADY SOUL

2003-10-03

prestamo

Prestamo a Claudia
Romero

Cargamos los datos desde este archivo con la siguiente sentencia:


mysql> LOAD DATA LOCAL INFILE "eventos.txt" INTO TABLE eventos;
Query OK, 6 rows affected (0.00 sec)

Plataforma de Teleformacin de IFES

Pgina 369 de 384

Records: 6 Deleted: 0 Skipped: 0 Warnings: 0


Tomando en cuenta lo que hemos aprendido en la ejecucin de consultas sobre la tabla
'discos', debemos de ser capaces de recuperar algunos datos de la tabla eventos; los
principios son los mismos. Sin embargo puede suceder que la tabla eventos por s
misma sea insuficiente para darnos las respuestas que necesitamos.
Supongamos que deseamos conocer el interprete de cada disco que hemos prestado.
La tabla 'eventos' indica cuando ocurri dicho evento, pero el dato interprete est
almacenado en la tabla 'discos', por lo tanto, necesitamos ambas tablas para realizar
esta consulta.
mysql> SELECT discos.titulo, discos.autor,
-> descripcion FROM discos, eventos
-> WHERE discos.titulo=eventos.titulo
-> AND tipo="prestamo";
+------------+--------------------+---------------------------+
| titulo | autor | descripcion |
+------------+--------------------+---------------------------+
| EN LA FUSA | VINICIUS DE MORAES | Prestamo a Ana Lopez |
| LADY SOUL | ARETHA FRANKLIN | Prestamo a Claudia Romero |
+------------+--------------------+---------------------------+
2 rows in set (0.00 sec)
Hay diversas cosas que notar acerca de esta consulta:

La clusula FROM lista dos tablas dado que la consulta necesita informacin
que se encuentra en ambas tablas.
Cuando se combina (junta) informacin de mltiples tablas, es necesario
especificar los registros de una tabla que pueden coincidir con los registros
en la otra tabla. En nuestro caso, ambas columnas tienen una columna
"titulo". La consulta usa la clusula WHERE para obtener los registros cuyo
valor en dicha columna es el mismo en ambas tablas.
Dado que la columna "titulo" ocurre en ambas tablas, debemos de
especificar a cul de las columnas nos referimos. Esto se hace al anteponer
el nombre de la tabla al nombre de la columna.

Utilizar mysql en modo batch


En todos los ejemplos mostrados anteriormente, hemos usado mysq l de manera
interactiva para ejecutar algunas consultas y ver los resultados. Sin embargo, es
posible usar mysql en modo batch. Para hacer esto tenemos que poner los comandos

Pgina 370 de 384

Linux

que deseamos ejecutar dentro de un archivo, y entonces decirle a mysql que lea los
comandos de dicho archivo:
shell> mysql < archivo-batch
Si se usa mysql de esta manera, se est creando un pequeo script, y posteriormente
se est ejecutando dicho script.
Al ejecutar las sentencias y comandos que se encuentran en el script, es posible que
suceda algn error. Si se desea que se continuen ejecutando las dems sentencias, a
pesar de que haya ocurrido un error, se tiene que usar la opcin force
shell> mysql --force < archivo-batch
As mismo, es posible especificar los parmetros de conexin desde la lnea de
comandos. Por ejemplo:
s
hell> mysql -h localhost -u chema -p < archivo-batch
Algunas de las ventajas de usar un script son las siguientes:

Si se ejecutan un cierto nmero de consultas de modo frecuente, al hacer un


script nos evitamos tener que volver a teclear cada una de las consultas.
Podemos generar nuevas consultas similares a las existentes copiando y
editando estos scripts.
Al escribir consultas de varias lneas, los scripts ayudan bastante para que
no se tengan que escribir todas las lneas nuevamente si se comete algn
error.
Si ejecutamos consultas que producen una gran cantidad de datos, es
posible usar un paginador para examinar los resultados de una mejor
manera.

shell> mysql < archivo-batch | less


Se puede guardar la salida en un archivo para revisarla posteriormente.
shell> mysql < archivo-batch > salida-del-script.txt
Hay que mencionar que el formato de la salida es ms simple cuando se ejecuta mysql
en modo batch, que cuando se usa de manera interactiva, como se puede ver en el
siguiente ejemplo:

Plataforma de Teleformacin de IFES

Pgina 371 de 384

Queremos obtener un listado de los gneros musicales de la tabla 'discos'.Si se ejecuta


en modo interactivo:
mysql> SELECT DISTINCT genero FROM discos;
+-----------+
| genero |
+-----------+
| POP-ROCK |
| FOLK |
| BRASILEO |
| SOUL |
+-----------+
4 rows in set (0.00 sec)
Si se ejecuta en modo batch:
shell> mysql -h localhost -u root < generos.sql
genero
POP-ROCK
FOLK
BRASILEO
SOUL
Si se desea obtener la salida que proporciona el modo interactivo, se tiene que usar la
opcin -t .
shell> mysql -t -h localhost -u root < generos.sql
+-----------+
| genero |
+-----------+
| POP-ROCK |
| FOLK |
| BRASILEO |
| SOUL |
+-----------+
Hemos utilizado el archivo generos.sql, un fichero de texto que contiene dos
instrucciones mysql:
USE musica;
SELECT DISTINCT genero FROM discos;

Pgina 372 de 384

Linux

Grabacin de cds

Grabar CD-ROM en consola


Existen multitud de programas grficos para la grabacin de CD?s, (k3b, nerolinux...)
pero en este manual, comenzaremos por la base, aprenderemos hacerlo desde
consola. Que necesitamos, y que podemos hacer para diferentes casos.

Hay que instalar y recompilar el kernel para grabadoras IDE,


En la seccin: ATA/IDE/MFM/RLL -> IDE, ATA, ATAPI
Desactivar IDE/ATAPI CDROM
Activar SCSI emulation support
En la seccin: SCSI support
Activar SCSI disk support
Activar SCSI CD-ROM support
Activar SCSI generic support
Instalamos los paquetes cdrecord, mkisofs y cdparanoia, desde una
distribucin Debian, usaremos la siguiente lnea.
apt-get install cdrecord mkisofs cdparanoia
Para conseguir informacin sobre si la instalacin ha sido correcta y dnde
se encuentran los dispositivos
cdrecord -scanbus
Para Copiar CD de DATOS
Montamos CD
mount -t iso9660 -ro unhide /dev/sr1 /cdrom
/dev/sr1
es el dispositivo donde este nuestro cdrom
-ro
l
o montamos en slo lectura
unhide
Para que lea tambin los ficheros ocultos
Creamos la Imagen del CDROM
mkisofs -R -J -T -o /tmp/imagen.iso /cdrom
-R = Genera registros SUSP y RR usando Rock Ridge
-T = Genera un archivo TRANS.TBL en cada directorio del CD-Rom, que
puede ser usado en sistemas incapaces de usar Rock Ridge para ayudar
a establecer los nombres de archivo correctos. Hay tambin informacin
presente en el archivo que indica el mayor y menor nmero para unidades
de bloque y carcter y cada symlink tiene el nombre del archivo enlace dado.

Plataforma de Teleformacin de IFES

Pgina 373 de 384

-J = Genera nombres de directorio Joliet junto con los iso9660. sto es


principalmente til cuando los discos van a ser usados en mquinas bajo
WindowsNT y Windows95.
-o= es el nombre del archivo el cual el sistema de archivo iso9660 deberia
escribir. Esto puede ser un archivo de disco, una unidad de cinta, o puede
corresponder directamente a la unidad de la grabadora. Si no se especifica
se usa stdout. Perctese de que la salida puede ser una unidad de bloque
especial para una unidad de disco normal, en cuyo caso la particion del
disco puede ser montada y examinada para asegurar que la preparacin se
efectua correctamente.
Otras opciones:
cat /dev/cdrom > imageCD.iso
dd if=/dev/cdrom/ of=imageCD.iso
G rabamos el cd
cdrecord -v dev=0,0,0 fs=10M speed=4 /tmp/imagen.iso
speed=X Donde "x" es la velocidad de grabacin. Ejemplo: una regrabadora
24x de lectura 2x de regrabacin y 4x de grabacin, speed=4
Luego si no queremos conservar la imagen porque no vamos hacer ms
copias, haremos lo siguiente.
rm /tmp/imagen.iso
Un Script que hace todo completo
#!/bin/bash
/bin/mount -t iso9660 -ro unhide /dev/sr1 /cdrom
/usr/bin/mkisofs -R -J -T -o /tmp/imagen.iso /
cdrom
/usr/bin/cdrecord -v dev=0,0,0 fs=10M speed=4 /
tmp/imagen.iso
/bin/rm /tmp/imagen.iso
/bin/umount /cdrom
Para Copiar Msica
Mostrar las canciones que tiene el cd
cdparanoia -Q -d /dev/sr1
Extraer el audio n: numero de canciones
cdparanoia -W -Z -X -B -d /dev/sr1 -v 1-n
-W desactivar correccin de rayado. Detecta y lleva a cabo la sincronizacin
entre rayaduras, pero no intenta reparar los datos daados. Si algn archivo
de informacin esta en uso (-i) guarda la posicin de las rayaduras.
-Z desactivar paranoia. Desactiva la verificacin de datos y las
caractersticas de correccin. Con esta opcin, cdparanoia lee los datos
exactamente como cdda2wav. Esta opcin implica que -Y esta activado,
pero no es equivalente a -Z -W -X -Y como el -W a travs de las opciones
-Z especifica niveles estratificados de verificacin. La ltima opcin
especificada sienta precedente.

Pgina 374 de 384

Linux

-X desactivar deteccin de rayado. Ni busca rayaduras ni hace una


sincronizacin de tolerancia a rayaduras durante la verificacin. Con -X
activado, un disco rayado provocar que cdparanoia cancele la lectura.
-d forzar unidad de cdrom. Fuerza el interfaz a leer del dispositivo algo ms
de lo que primeramente encontr legible en el CDROM. Puede ser usado
para especificar unidades de cualquier tipo de interfaz vlido (ATAPI, SCSI o
propietaria).
-B - batch. Al estilo del procesamiento de salida etiquetado de cdda2wav,
cdparanoia dividir la salida en multiples archivos, por pistas. Los nombres
de los archivos resultantes estan nombrados como "track#.".
Grabar
cdrecord -v speed=4 -eject fs=20M dev=0,0 -audio nopreemp track* -defpregap=[tiempo en segundos]
Otro script para copiar un cd de msica
#!/bin/bash
/usr/bin/cdparanoia -Q -d /dev/sr1
cd /tmp/
echo Cuantas canciones hay?
read CANCIONES
/usr/bin/cdparanoia -W -Z -X -B -d /dev/sr1 -v 1$CANCIONES
/usr/bin/cdrecord -v speed=4 -eject fs=20M
dev=0,0 -audio -nopreemp track* -defpregap=0
rm /tmp/track*
Para Copiar CD de msica en directo (sin espacio y cortes entre canciones)
Instalamos cdda2wav
apt-get install cdda2wav
Mostrar las canciones que tiene el cd
cdparanoia -Q -d /dev/sr1
Extraer el audio en un slo fichero. n: numero de canciones
cdda2wav -D /dev/sr1 -s -x -t 1+n
Grabamos los ficheros *.wav a un cd
cdrecord -v speed=X -eject fs=20M dev=0,0 -audio
archivo.wav
speed=X Donde "x" es la velocidad de grabacin. Ejemplo: una regrabadora
24x de lectura 2x de regrabacin y 4x de grabacin, speed=4
-audio parmetro que especifica el formato de salida del archivo, con lo cual
para cada pista crea un archivo .wav diferente
archivo.wavcorresponde al archivo o seleccion de archivos que acaben
en .wav, por lo general el cdda2wav los extrae como audio_NN.wav donde
NN es el numero de pista..
Grabar / Clonar VCD
Hacer una imagen VCD (Mi CDROM est en el 0,1,0)

Plataforma de Teleformacin de IFES

Pgina 375 de 384

cdrdao read-cd -v 2 --device 0,1,0 --read-raw --driver


generic-mmc --datafile imagen.bin imagen.toc
Copiar la imagen en el CD
cdrdao write -v 2 --device 0,1,0 --speed 16 --driver
generic-mmc --buffers 64 imagen.toc
Borrado del .toc
cdrecord -v blank=fast

cdrecord.conf

#ident @(#)cdrecord.dfl 1.1 98/12/06 Copyr 1998 J. Schilling


#
# This file is /etc/cdrecord.conf
# It contains defaults that are used if no command line option
# or environment is present.
#
# The default device, if not specified elswhere #
CDR_DEVICE=hp8100
#
# The default speed, if not specified elswhere
#
#CDR_SPEED=2
#
# The default FIFO size if, not specified elswhere
#
#CDR_FIFOSIZE=16m
#
# The following definitions allow abstract device names.
# They are used if the device name does not contain the
# the characters ',', ':', '/' and '@'
#
# drive name device speed fifosize
#
#teac= 1,3,0 -1 -1
#panasonic= 1,4,0 -1 -1
#yamaha= 1,5,0 -1 -1
#cdrom= 0,6,0 2 1m
hp8100= 0,0,0 2 16m

Pgina 376 de 384

Linux

Programacin en Bash
Adaptado de:
http://es.tldp.org/COMO-INSFLUG/COMOs/Bash-Prog-Intro-COMO/BashProg-Intro-COMO.html
, un documento libre de Mike G (mikkey)

Scripts muy sencillos


Este COMO tratar de darle algunos consejos sobre la programacin de shell scripts,
basndose profundamente en ejemplos.
En esta seccin encontrar varios scripts pequeos que esperanzadamente le
ayudarn a entender algunas tcnicas.

Tpico script hola mundo


#!/bin/bash echo Hola Mundo
Este script tiene slo dos lneas. La primera le indica al sistema qu programa usar
para ejecutar el fichero.
La segunda lnea es la nica accin realizada por este script, que imprime 'Hola
Mundo'en la terminal.
Si le sale algo como ./hello.sh: Comando desconocido., probablemente la primera lnea,
'#!/bin/bash', est mal. Ejecute whereis bash, o vea 'encontrando el bash'para saber
cmo debe escribir esta lnea.

Un script de copia de seguridad muy simple


#!/bin/bash tar -cZf /var/my-backup.tgz /home/yo/
En este script, en vez de imprimir un mensaje en la terminal, creamos un tar-ball del
directorio home de un usuario. Esto NO pretende ser un script til; ms tarde se ofrece
un script de copia de seguridad ms til.

Plataforma de Teleformacin de IFES

Pgina 377 de 384

Todo sobre redireccin


Teora y referencia rpida
Existen 3 descriptores de ficheros: stdin, stdout y stderr (std=estndar).
Bsicamente, usted puede:
1.
2.
3.
4.
5.
6.
7.

redirigir stdout a un fichero


redirigir stderr a un fichero
redirigir stdout a stderr
redirigir stderr a stdout
redirigir stderr y stdout a un fichero
redirigir stderr y stdout a stdout
redirigir stderr y stdout a stderr

El nmero 1 'representa'a stdout, y 2 a stderr.


Una pequea nota para ver todo esto: con el comando less puede visualizar stdout
(que permanecer en el bfer) y stderr, que se imprimir en la pantalla, pero ser
borrado si intenta leer el bfer.

Ejemplo: stdout a un fichero


Esto har que la salida de un programa se escriba en un fichero.
ls -l > ls-l.txt
En este caso, se crear un fichero llamado 'ls-l.txt' que contendr lo que se vera en la
pantalla si escribiese el comando 'ls -l'y lo ejecutase.

Ejemplo: stderr a un fichero


Esto har que la salida stderr de un programa se escriba en un fichero.
grep da * 2> errores-de-grep.txt
En este caso, se crear un fichero llamado 'errores-de-grep.txt' que contendr la parte
stderr de la salida que dara el comando 'grep da *'.

Pgina 378 de 384

Linux

Ejemplo: stdout a stderr


Esto har que la salida stdout de un programa se escriba en el mismo descriptor de
fichero que stderr.
grep da * 1>&2
En este caso, la parte stdout del comando se enva a stderr; puede observar eso de
varias maneras.

Ejemplo: stderr a stdout


Esto har que la salida stderr de un programa se escriba en el mismo descriptor de
fichero que stdout.
grep * 2>&1
En este caso, la parte stderr del comando se enva a stdout. Si hace una tubera con
less, ver que las lneas que normalmente 'desaparecen'(al ser escritas en stderr),
ahora permanecen (porque estn en el stdout).

Ejemplo: stderr y stdout a un fichero


Esto colocar toda la salida de un programa en un fichero. A veces, esto es
conveniente en las entradas del cron, si quiere que un comando se ejecute en absoluto
silencio.
rm -f $(find / -name core) &> /dev/null
Esto (pensando en la entrada del cron) eliminar todo archivo llamado `core'en
cualquier directorio. Tenga en cuenta que tiene que estar muy seguro de lo que hace un
comando si le va a eliminar la salida.

Tuberas
Esta seccin explica de una manera muy sencilla y prctica cmo utilizar tuberas, y por
qu querra utilizarlas.

Qu son y por qu hay que utilizarlas


Las tuberas le permiten utilizar (muy sencillo, insisto) la salida de un programa como la
entrada de otro.

Plataforma de Teleformacin de IFES

Pgina 379 de 384

Ejemplo: una tubera sencilla con sed


sta es una manera muy sencilla de utilizar tuberas.
ls -l | sed -e " s/[aeio]/u/g"
En este caso, ocurre lo siguiente: primero se ejecuta el comando 'ls -l', y luego su
salida, en vez de imprimirse en la pantalla, se enva (entuba) al programa sed, que
imprime su salida correspondiente.

Ejemplo: una alternativa a ls -l *.txt


Probablemente sta es una manera ms difcil de hacer un 'ls -l *.txt', pero se muestra
para ilustrar el funcionamiento de las tuberas, no para resolver ese dilema.
ls -l | grep ".txt$"
En este caso, la salida del programa ls -l se enva al programa grep, que imprimir las
lneas que concuerden con la regex".txt$" (expresin regular) .

Variables
Puede usar variables como en cualquier otro lenguaje de programacin. No existen
tipos de datos. Una variable de bash puede contener un nmero, un caracter o una
cadena de caracteres. No necesita declarar una variable. Se crear slo con asignarle
un valor a su referencia.

Ejemplo: Hola Mundo! utilizando variables


#!/bin/bash CAD="Hola Mundo!" echo $CAD
La segunda lnea crea una variable llamada STR y le asigna la cadena "Hola
Mundo!". Luego se recupera el VALOR de esta variable ponindole un '$'al principio.
Por favor, tenga en cuenta (intntelo!) que si no usa el signo '$', la salida del
programa ser diferente, y probablemente no sea lo que usted quera.

Ejemplo: Un script de copia de seguridad muy simple


(algo mejor)
#!/bin/bash

Pgina 380 de 384

OF=/var/mi-backup-$(date +%Y%m%d).tgz tar -cZf

$OF /home/yo/

Linux

Este script introduce algo nuevo. Antes que nada, debera familiarizarse con la creacin
y asignacin de variable de la lnea 2. Fjese en la expresin '$(date +%Y%m%d)'.
Si ejecuta el script se dar cuenta de que ejecuta el comando que hay dentro de los
parntesis, capturando su salida.
Tenga en cuenta que en este script, el fichero de salida ser distinto cada da, debido al
formato pasado al comando date (+%Y%m%d). Puede cambiar esto especificando un
formato diferente.
Algunos ejemplos ms:
echo ls echo $(ls)

Variables locales
Las variables locales pueden crearse utilizando la palabra clave local.
#!/bin/bash
HOLA=Hola
function hola {
local HOLA=Mundo
echo $HOLA
}
echo $HOLA
hola
echo $HOLA
Este ejemplo debera bastar para mostrarle el uso de una variable local.

Estructuras Condicionales
Las estructuras condicionales le permiten decidir si se realiza una accin o no; esta
decisin se toma evaluando una expresin.

Pura teora
Los condicionales tienen muchas formas. La ms bsica es: if expresin then
sentenciadonde 'sentencia'slo se ejecuta si 'expresin'se evala como verdadera.
'2<1'es una expresin que se evala falsa, mientras que '2>1'se evala verdadera.

Plataforma de Teleformacin de IFES

Pgina 381 de 384

Los condicionales tienen otras formas, como: if expresin then sentencia1 else
sentencia2. Aqu 'sentencia1'se ejecuta si 'expresin'es verdadera. De otra manera
se ejecuta 'sentencia2'.
Otra forma ms de condicional es: if expresin1 then sentencia1 else if expresin2
then sentencia2 else sentencia3. En esta forma slo se aade "ELSE IF
'expresin2'THEN 'sentencia2'", que hace que sentencia2 se ejecute si expresin2
se evala verdadera. El resto es como puede imaginarse (vanse las formas
anteriores).
Unas palabras sobre la sintaxis: La base de las construcciones 'if'es sta:
if [expresin]; then
# cdigo si 'expresin' es verdadera.
fi
Ejemplo: Ejemplo bsico de condicional if .. then

#!/bin/bash
if [ "petete" = "petete" ]; then
echo "expresin evaluada como verdadera"
fi
El cdigo que se ejecutar si la expresin entre corchetes es verdadera se encuentra
entre la palabra 'then'y la palabra 'fi', que indica el final del cdigo ejecutado
condicionalmente.

Ejemplo: Ejemplo bsico de condicional if .. then ...


else
#!/bin/bash
if [ "petete" = "petete" ]; then
echo "expresin evaluada como verdadera"
else
echo "expresin evaluada como falsa"
fi

Pgina 382 de 384

Linux

Ejemplo: Condicionales con variables


#!/bin/bash
T1="petete"
T2="peteto"
if [ "$T1" = "$T2" ]; then
echo "expresin evaluada como verdadera"
else
echo "expresin evaluada como falsa"
fi

Ejemplo: comprobando si existe un fichero


#!/bin/bash
FILE=~/.basrc
if [ -f $FILE ]; then
echo "el fichero $FILE existe"
else
echo "fichero no encontrado"
fi

Los bucles for, while y until


En esta seccin se encontrar con los bucles for, while y until. El bucle for es distinto
a los de otros lenguajes de programacin. Bsicamente, le permite iterar sobre una
serie de "palabras"contenidas dentro de una cadena. El bucle while ejecuta un trozo
de cdigo si la expresin de control es verdadera, y slo se para cuando es falsa
(o se encuentra una interrupcin explcita dentro del cdigo en ejecucin). El bucle
until es casi idntico al bucle loop, excepto en que el cdigo se ejecuta mientras
la expresin de control se evale como falsa. Si sospecha que while y until son
demasiado parecidos, est en lo cierto.

Por ejemplo
#!/bin/bash
for i in $( ls ); do
echo "item: $i"
done

Plataforma de Teleformacin de IFES

Pgina 383 de 384

En la segunda lnea declaramos i como la variable que recibir los diferentes valores
contenidos en $( ls ).
La tercera lnea podra ser ms larga o podra haber ms lneas antes del done .
done indica que el cdigo que ha utilizado el valor de $i ha acabado e $i puede tomar el
nuevo valor.
Este script no tiene mucho sentido, pero una manera ms til de usar el bucle for sera
hacer que concordasen slo ciertos ficheros en el ejemplo anterior.

for tipo-C
Fiesh sugiri aadir esta forma de bucle. Es un bucle for ms parecido al for de C/perl...
#!/bin/bash
for i in `seq 1 10`; do
echo $i
done

Ejemplo de while
#!/bin/bash
CONTADOR=0
while [ $CONTADOR -lt 10 ]; do
echo "El contador es $CONTADOR"
CONTADOR=$(($CONTADOR+1))
done
Este script 'emula'la conocida (C, Pascal, perl, etc) estructura `for'.

Ejemplo de until
#!/bin/bash
CONTADOR=20
until [ $CONTADOR -lt 10 ]; do
echo "El contador es $CONTADOR"
CONTADOR=$(($CONTADOR-1))
done

Pgina 384 de 384

Linux

Você também pode gostar