Click here to load reader

Gu¶‡a de aprendizaje para estudiantes Curso de Introduci

  • View
    0

  • Download
    0

Embed Size (px)

Text of Gu¶‡a de aprendizaje para estudiantes Curso de Introduci

Curso de Introducion a Linux para Alumnos
Gua de aprendizaje para estudiantes
Curso de Introducion a Linux para Alumnos
Miguel Angel Vilela Garca Jesus Miguel Torres Jorge
Carlos Perez Perez Tomas Bautista Delgado
Carlos Alberto Morales Daz Felix J. Marcelo Wirnitzer
Sergio Garca Reus Carlos de la Cruz Pinto Rene Martn Rodrguez
Edn Kozo Carlos Mestre Gonzalez
Copyright c© 2001 – 2003 Grupo de Usuarios de Linux de Canarias
Se da permiso para copiar, distribuir o modificar este documento en los terminos que establece la GNU Free Documentation License, Version 1.1 o cualquier otra version posterior publicada por la Free Software Foundation; las secciones que no pueden modificarse son “Presentacion” y “Agradecimientos”, y no existen textos cubierta ni contracubierta. Se incluye una copia de la licencia en la seccion “GNU Free Documentation License”. Este libro es c© de sus autores.
La forma original de este documento es codigo fuente en LATEX. La compilacion de este codigo fuente en LATEX tiene el efecto de generar una representacion del documento independiente del dispositivo, que puede convertirse a otros formatos o imprimirse.
La GNU Free Documentation License esta disponible en www.gnu.org o soliciandola por escrito a the Free Software Foun- dation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Este documento lo han maquetado sus autores utilizando LATEX y The GIMP, que son programas abiertos y libres.
A los novatos y novatas en el mundo de GNU/Linux, y a sus familiares, amistades y parejas
(ellas y ellos saben por que)
Agradecimientos
Este libro lo hemos escrito miembros y amigos del Grupo de Usuarios de Linux de Canarias; informaticos, es- tudiantes y/o aficionados con entrega, entre todos unimos nuestros esfuerzos para escribir sobre aquello de lo que mejor entendemos.
La Facultad de Matematicas de la Universidad de La Laguna ha colaborado apasionadamente (y lo sigue hacien- do) aportando sus aulas de ordenadores para realizar las sucesivas ediciones del Curso de Introducion a Linux para Alumnos . Desde el Grupo de Usuarios de Linux de Canarias agradecemos ademas la amabilidad con la que han colaborado en todo momento.
Pero este libro no habra llegado a ser lo que es de no ser por las siguientes personas. A todos ellos; muchas gracias.
Sergio Alonso, Vicedecano de Estadstica en la Facultad de Matematicasde la Universidad de La Laguna. Acogio amablemente la propuesta del Curso de Introducion a Linux para Alumnosy puso las aulas de ordenadores a disposicion del curso. Tambien ha coordinado la publicacion de este libro a traves del Servicio de Publicaciones de la Universidad de La Laguna.
Manolo Garca Roman, Secretario de la Facultad de Matematicasde la Universidad de La Laguna. Brindo una inestimable ayuda en las cuestiones TEXnicas de la elaboracion de estos apuntes. Tambien se entrego de modo ejemplar en la organizacion de las distintas edicioens del curso en el ambito de la Universidad de La Laguna. Ha coordinado la publicacion de este libro a traves del Servicio de Publicaciones Universidad de La Laguna.
Miguel Angel Vilela Garca escribio los temas “The GIMP”, “GNU Fortran”, “Yacas”, “R”, ademas de partes de “Aplicaciones para Internet”, “Editores” y “Aplicaciones diversas”. Tambien retoco la traduccion del tutorial de LYX aportada por Sergio Garca Reus para formar el tema “LYX”.
Jesus Miguel Torres Jorge escribio los temas “El entorno X-Window”, “C/C++”, “GNU Make”, “Bash” y parte de “Aplicaciones para Internet”. Posteriormente anadio abudante contenido a raz de los cursos TIC de la Universidad
de La Laguna.
Carlos Perez Perez aporto el tema “StarOffice”.
Tomas Bautista Delgado aporto el tema de “LATEX”, resultado de modificar su estupendo manual “Una descripcion de LATEX”
Carlos Alberto Morales Daz escribio los temas de “Octave”, “GNUplot” y parte de “Aplicaciones para Internet”.
Felix J. Marcelo Wirnitzer escribio los temas “Introduccion a GNU/Linux”, “El interprete de comandos” y “HTML” y parte de “Administracion basica” e “Instalacion de GNU/Linux”.
Sergio Garca Reus aporto su traduccion al castellano del tutorial de LYX.
Carlos de la Cruz Pinto escribio con los temas “Emacs”, “Java”, “KDE” y mejoro el tema de “FreePascal”.
vii
Rene Martn Rodrguez escribio los temas “Instalacion de GNU/Linux” y “Depuradores”.
Edn Kozo colaboro en los temas “Aplicaciones para Internet” e “Instalacion de GNU/Linux”.
Carlos Mestre Gonzalez escribio el tema de “Administracion basica” y parte de “Editores”.
Teresa Gonzalez de la Fe colaboro con el tema “Aplicaciones diversas”.
Luis Cabrera Sauco colaboro con los temas “Introduccion a GNU/Linux”, “Aplicaciones para Internet” y “Aplica- ciones diversas”.
Carlos Alberto Paramio Danta aporto el tema “gprof”.
Pedro A. Gracia Fajardo colaboro con el tema “The GIMP”.
Tambien agradecemos a todas las personas que nos han animado a seguir con este proyecto: alumnas y alumnos de la Facultad de Matematicas y otras facultades de la Universidad de La Laguna, companeros del Grupo de Usuarios
de Linux de Canarias, Maribel C. Salgado, Pedro Reina, gente de HispaLinux y alguien mas que se nos queda en el tintero (o en el teclado).
viii
1.1. Un poco de historia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Distribuciones de Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Paquetes de software en Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. GNU/Linux: cara y cruz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5. Recursos para GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2. El interprete de comandos 9
2.1. ¿Que es un interprete de comandos? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2. Directorios y nombres de ficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3. Comandos basicos para sobrevivir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4. Unidades de disco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.5. Unidades de disco con mtools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
A. Recursos en internet 25
B. Licencia de Documentacion Libre GNU 27
B.1. Aplicabilidad y definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
B.2. Copia literal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
B.4. Modificaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
B.7. Agregacion con trabajos independientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
B.8. Traduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
B.9. Terminacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
B.11.Addendum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.1.1. Orgenes de UNIX y sus versiones.
UNIX es uno de los sistemas operativos mas populares del mundo. Es una marca registrada de The Open Group, aunque originalmente fue desarrollado por AT&T.
UNIX es un sistema operativo real. Por sistema operativo real se entiende que debe tener como mnimo dos caractersticas: mas de una persona puede acceder al mismo tiempo al ordenador y, mientras lo hacen, cada una de ellas puede ejecutar multiples aplicaciones. A esto se le llama ser un sistema operativo multiusuario y multitarea. UNIX fue disenado originalmente para ser ese tipo de sistema multitarea, en los anos 70, y para que se pudiera ejecutar en mainframes y en miniordenadores.
Con UNIX, cada usuario accede al sistema utilizando un nombre de acceso. Opcionalmente, aunque es altamente re- comendable, el usuario debe proporcionar una contrasena que asegura que la persona que accede es quien dice ser. Este mecanismo de control permite limitar el acceso de los usuarios a los ordenadores, algo especialmente util cuando estos estan conectados en red. Dicho proceso de autentificacion es conocido coloquialmente como login, puesto que ese es el nombre del programa que tradicionalmente se encarga del trabajo de permitir o denegar el acceso a un usuario.
UNIX funciona practicamente en cualquier plataforma que haya sido construida. Muchos fabricantes han adquirido el codigo fuente (IBM; Hewlett-Packard, Sun, etc.) y desarrollado sus propias versiones, a las que han incorporado su toque personal a lo largo de los anos. Pero no son los unicos que continuan modificando UNIX. Cuando el sistema se desarrollo por primera vez, el codigo fuente se proporciono gratuitamente a las universidades y a los institutos. Dos de ellas han estado en primera lnea desde el primer momento: la Universidad de California en Berkeley y el Instituto Tecnologico de Massachussetts.
Como podemos imaginar, el desarrollo de UNIX se produjo de forma bastante desordenada. Gente de todo el mundo comenzo a desarrollar herramientas y mejoras para UNIX. Desgraciadamente, no exista ninguna coordinacion que guiase todo el desarrollo, lo cual produjo grandes diferencias entre las distintas versiones. Aunque a da de hoy muchas de esas diferencias se mantienen, en la actualidad la mayor parte de las implementaciones de UNIX cumplen con el estandar IEEE POSIX.1. Esto simplifica notablemente el desarrollo de aplicaciones, puesto que garantiza la compatibilidad entre las diferentes implementaciones de UNIX.
El mayor inconveniente de UNIX es que es muy grande. Tambien es caro, especialmente en sus versiones para PC. Y aqu es donde aparece Linux, pues, como se explica con mas detalle un poco mas adelante, se diseno para ser pequeno, rapido y barato. Hasta ahora los disenadores han tenido exito.
Linux fue creado originalmente por Linus Torvalds en la Universidad de Helsinki, Finlandia, alla por 1991. Linus baso el Linux en una pequena implementacion de UNIX para PC con fines didacticos llamada Minix. A finales de ese ano se hizo publico Linux con la version 0.10. Un mes despues, en diciembre, aparecio la version 0.11. Linus hizo que el codigo fuente fuera de libre disposicion y animo a otras personas a colaborar en su desarrollo. Lo hicieron. Linux continua su desarrollo hoy en da gracias a un equipo mundial dirigido por el mismo que trabaja a traves de Internet.
Gran parte del software desarrollado para Linux se creo a traves del proyecto GNU de la Free Software Fundation.
3
1.1.2. El Software Libre y la licencia GPL
Llegados a este punto, nos encontramos con un nuevo concepto: el Software Libre. Tiene su origen en el nacimiento del software en EE.UU., cuando la informatica era un feudo reservado a empresas y universidades, y los programadores intercambiaban trucos (hacks, en ingles) que hacan brotar chispas en los enormes cerebros electronicos. Por aquel entonces haca sus pinitos digitales un joven programador, Richard M. Stallman que, al igual que sus companeros de profesion, fue testigo de la primera gran transformacion del mundo de la programacion en industria cerrada.
Cuenta este informatico que, un buen da, aparecieron por la puerta abogados que prohibieron a estos programadores compartir su codigo (el codigo de sus programas) y les obligaron a ocultar celosamente cualquier informacion que pudiera ser usada por la competencia. Ademas, decidieron que las empresas guardaran bajo llave el codigo fuente de sus programas (la secuencia original de instrucciones que los hace funcionar de una determinada manera) y solo entregaran a sus clientes el codigo binario (los unos y ceros que el ordenador entiende, pero apenas pueden interpretar las personas). Por ultimo, obligaron a los trabajadores a aceptar la idea de que quien violaba estas normas no solo cometa un delito, sino tambien un pecado propio de un loco, o de un pirata.
Anos mas tarde, este dogma informatico se extendio hasta convertirse en el actual mercado del software, donde comprar un programa significaba adquirir el derecho a usarlo, pero no a abrirlo para saber como funciona ni, mucho menos, a copiarlo o modificarlo; una prerrogativa que corresponde en exclusiva a la empresa fabricante.
Stallman, convencido de que a la sociedad se le haba robado un debate importante sobre la evolucion de la tecnologa (la frase “es como si te vendieran un coche con el capo sellado, para que no puedas ver el motor” es una de las analogas mas usadas para explicar esta realidad mercantil), decidio dejar su trabajo y emprender una tarea mucho mas altruista: responder al modelo propietario con un software del que nadie pudiera apropiarse, con un software libre.
Se trataba, segun su promotor, de poner en marcha un nuevo contrato por el que los usuarios recibieran siempre el codigo fuente y, ademas, el derecho inalienable a modificarlo a su gusto. A este movimiento se le bautizo con el crptico nombre de GNU, y para defenderlo se creo la Licencia Publica General (GPL, sus siglas en ingles), un peculiar contrato mercantil que, a diferencia de las licencias de software tradicionales, no solo no restringe la posibilidad de copiar y redistribuir los programas, sino que anima a los usuarios a hacerlo.
Este nuevo orden informatico fue recibido con entusiasmo en la entonces incipiente comunidad de programadores que pululaba por Internet, pero tambien con cierta inquietud. De hecho, el movimiento GNU fue visto con recelo desde algunos sectores de la poblacion estadounidense, que lo tacharon de “izquierdoso”, por su tendencia a compartir su trabajo y por su aversion al concepto de propiedad que haba establecido la industria del software.
1.1.3. ¿Que es Linux y GNU/Linux?
Con ideologa o sin ella, el movimiento GNU se extendio por la Red y empezo a dar sus frutos, y as nacio Linux. Lnea a lnea, programa a programa, el sistema operativo del pinguino (la mascota de Linux que, por cierto, responde al nombre de Tux) se convirtio en poco tiempo en el producto mas famoso del codigo abierto y, paradojicamente, en la apuesta de mas de una multinacional en el sector informatico.
Lo que realmente se entiende por Linux es el kernel, el “corazon” de cualquier sistema operativo tipo UNIX. Pero el kernel por s solo no forma todava un sistema operativo. Justamente para UNIX existe multitud de software libre, lo que significa que tambien esta disponible para Linux. Son estas utilidades las que realmente forman el sistema operativo. Entonces es cuando podemos hablar de GNU/Linux.
La gran cantidad de de programas de software libre permite la creacion de diferentes sistemas Linux, cada uno con un conjunto de programas, entorno grafico o sistema de instalacion diferente. Cada una de estas agrupaciones particulares de software entorno al nucleo de Linux es lo que denominamos distribuciones. En general, cuando hablamos de Linux, nos estamos refiriendo a cualquiera de sus distribuciones. Las mas conocidas son Debian, Red Hat, SuSE, Mandrake. De todas ellas, la que mas se acerca a la filosofa del movimiento GNU es Debian ya que es fruto del trabajo de un gran grupo de voluntarios repartidos por el mundo, mientras que las otras pertenecen a empresas privadas dedicadas al desarrollo de Linux.
1.2. Distribuciones de Linux
Lo que vulgarmente conocemos como Linux, debiera llamarse oficialmente como GNU/Linux. El motivo no es otro sino que el corazon de un sistema Linux esta formado por un nucleo (Linux) al que se le han anadido las utilidades desarrolladas por la gente de la Free Software Foundation (GNU), o al menos as era en los primeros momentos.
Curso de Introducion a Linux para Alumnos
1.3. Paquetes de software en Linux 5
Hoy en da, la lista de colaboradores en el desarrollo de Linux es inmensa, estando formada tanto por personas como usted, o como yo, como por las mas grandes companas del sector informatico actual. Parece que ha pasado una eternidad (5 de Octubre de 1991), desde el momento que Linus anuncio la primera version “oficial” de Linux, la 0.02. Ya poda ejecutar bash (el shell de GNU) y gcc (el compilador de C de GNU), pero no haca mucho mas.
En ese anuncio, puso frases como estas:
“[. . . ]¿Suspirais al recordar aquellos das de Minix-1.1, cuando los hombres eran hombres y escriban sus propios drivers? ¿Os sents sin ningun proyecto interesante y os gustara tener un verdadero S.O. que pudierais modificar a placer? ¿Os resulta frustrante el tener solo a Minix? Entonces, este artculo es para vosotros.[. .…