Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Parte 1
Parte 1
Introducción a
GNU/Linux
Indice del Curso
•Tema 1 - Introducción
•Tema 2 - Comandos
•Tema 3 - Procesos y Entorno
•Tema 4 - Shell y Editores
•Tema 5 - Distribuciones e Instalación
•Tema 6 - Interactuando con GNU/Linux
2
Introducción
• Que es GNU/Linux
• Unix: El comienzo
• Historia de GNU/Linux
• Situación actual
• Distribuciones
7
GNU (II)
FSF
• La Free “Free as in ‘free
Software speech’
Fundation es not
la ‘free beer’”
principal responsable del proyecto
GNU.
• Actualmente se encuentran disponibles
2068 paquetes de software. Los más
conocidos: Bash, gcc, Emacs, gdb,
Glibc, Gnome, GnuPG, sin olvidar
Hurd: el kernel del sistema GNU aun
en desarrollo.
• Existen muchos mas programas distribuidos bajo licencia
GPL 8
GNU (III)
GPL
• Licencia Pública General (http://www.gnu.org/copyleft/gpl.html)
• Garantiza al usuario del programa la libertad para copiar,
compartir, intercambiar y/o modificar el programa a su antojo.
• Si el usuario distribuye el programa a otra persona debe dar a
ésta los mismos derechos que tenía el usuario original. Es decir,
no se puede impedir que el software que es libre siga siendo libre
para siempre.
• No existe ninguna garantía sobre el programa, el usuario es el
único responsable de todas las consecuencias que el uso del
programa pudiera acarrear.
9
GNU (IV)
GPL (II)
• No obstante, usuarios o compañías podrían optar por ofrecer
garantía sobre un programa GNU a los usuarios a cambio de un
precio.
• Libre no es lo mismo que gratuito, las empresas tienen derecho a
vender el software, y a ofrecer garantías o soporte técnico a
cambio de un precio. Naturalmente, no pueden eliminar al
usuario sus derechos a intercambiar y modificar el programa.
• La licencia establece que si se utilizan partes de un programa
GPL en otro programa, entonces el programa resultante debe
estar también protegido por la GPL (para evitar que el software
deje de ser libre).
10
Linux (I)
• A finales de los 80 la FSF ya tenía gran cantidad de los
programas necesarios implementados pero les faltaba una parte
importante: el kernel. Su propio kernel, llamado Hurd, tardaría
bastante en estar listo (a día de hoy todavía no lo está).
14
Distribuciones (I)
• Casi todos los programas que son necesarios en un sistema
GNU/Linux son de libre distribución y están disponibles en algún
sitio de la red para su descarga, normalmente en forma de código
fuente.
Otras distribuciones:
Mandrake, Slackware,
Caldera.
19
Sistema multiusuario y multitarea
Todo es un fichero
• En el sistema de ficheros de los Unix, todo, absolutamente
todo esta representado por un fichero.
25
Sistema de ficheros (II)
Arbol de directorios
• El árbol de directorios de UNIX tiene una estructura
bastante rígida, que hace fácil la búsqueda de ficheros de
configuración, ayuda, etc. cuando hace falta.
26
Sistema de ficheros (III)
Directorio /bin
• /bin: Abreviación de la palabra binaries (del ingles
ejecutables). Aquí se guardan muchos de los programas
básicos y esenciales para el funcionamiento del sistema como
los comandos ls, cp, etc.
Directorio /boot
• /boot: En este directorio se encuentran los ficheros del núcleo
del sistema, los que ejecuta al arrancar.
27
Sistema de ficheros (IV)
Directorio /dev
• /dev: Viene del ingles device (dispositivo). Este directorio
contiene ficheros que representan los dispositivos del sistema.
Estos ficheros son fundamentales para que el sistema funcione
correctamente.
Directorio /etc
• /etc: Aquí se encuentran ficheros relativos a la configuración
local del sistema, y de los programas, por ejemplo:
/etc/passwd guarda información de cada uno de los usuarios
28
Sistema de ficheros (V)
Directorio /home
• /home: De este directorio cuelgan los los directorios de inicio
(home directory) de los usuarios “normales” (todos excepto el
root y las cuentas que no pertenecen a un usuario real).
Directorio /lib
• /lib: En este directorio se encuentran las bibliotecas del
sistema, ya sean bibliotecas de funciones, de imágenes,
sonidos, iconos, etc..
29
Sistema de ficheros (VI)
Directorio /man
• /man: Aquí se encuentran la mayoría de las paginas del
manual de cada prograam. Para acceder a los manuales se
utiliza el comando man seguido del nombre del programa.
Otras veces están en /usr/man o /usr/local/man.
Directorio /mnt
• /mnt: Generalmente de este directorio cuelgan los ficheros de
los dispositivos “montados” en el sistema, es decir, ficheros
que son accesibles desde el sistema en ese momento.
30
Sistema de ficheros (VII)
Directorio /proc
• /proc: En este directorio se encuentran ficheros virtuales, que
no existen realmente. Al intentar verlos obtendremos
información acerca del sistema. Cada proceso en ejecución
tiene asociado un directorio.
Directorio /root
• /root: Este es el directorio home del usuario root,
tradicionalmente el administrador del sistemas. Recibe este
nombre por ser el propietario del directorio / (directorio raíz
o root directory en ingles).
31
Sistema de ficheros (VIII)
Directorio /sbin
• /sbin: Aquí, al igual que en /bin se guardan muchos
programas pero estos solo son usados por el administrador
del sistema, por ejemplo: el comando exit, el comando halt, el
comando reboot, etc.
Directorio /tmp
• /tmp: En el directorio /tmp se guardan archivos de carácter
temporal, es decir, si un programa necesita mantener cierta
información guardada, pero que no será necesaria en otro
momento, la guardara en el directorio /tmp.
32
Sistema de ficheros (IX)
Directorio /usr
• /usr: En /usr están la mayoría de los programas, las bibliotecas de
funciones, las fuentes del kernel, etc.. De /usr cuelgan otros
directorios lib y bin, que tienen las bibliotecas y los ejecutables
que utilizan normalmente los usuarios, pero que no son
imprescindibles para el sistema, como awk, diff, grep,
Directorio /var
• /var: Este directorio guarda los ficheros “variables”, como los
ficheros donde se guardan los errores, los logs del sistema, los
directorios del SPOOL de la impresora (el buffer de la
impresora por decirlo de algún modo). 33
Entrando en Linux
Login
• Lo primero que hay que hacer para entrar en el sistema es
identificarse como un usuario concreto (introducir el
nombre de usuario o login) y probar que, efectivamente, se
es dicho usuario (introducir la clave asociada o password).
Shell
• Una vez autenticados, el sistema cargará el interprete de
comandos (también llamado shell) asociado a nuestro usuario
en el fichero /etc/passwd. A partir de este momento y hasta
que desconectemos (logout, a través del comando exit)
podremos introducir comandos que el interprete ejecutara (si
tenemos los permisos adecuados), arrancar programas, etc..
34
Links
• Linux: www.linux.org
• Linux kernel: www.kernel.org
• Proyecto GNU: www.gnu.org
• Linux Counter: counter.li.org
• Proyecto de Documentación de Linux: tldp.org
• Proyecto LuCAS: es.tldp.org
• Distribuciones: www.redhat.com, www.debian.org,
www.suse.com
• BSD: www.freebsd.org, www.openbsd.org,
www.netbsd.org
35
Preguntas
¿ ?
36