Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GNU/Linux
Índice del Curso
•Tema 1 – Introducción
•Tema 2 – Distribuciones e Instalación
•Tema 3 – Repaso
•Tema 4 – Administración en Linux
•Tema 5 – Entorno gráfico
•Tema 6 – Kernel de Linux
•Tema 7 – Instalación y Configuración de
servidores
•Tema 8 – Conceptos básicos de seguridad
Introducción 2 de 31
Introducción
• Que es GNU/Linux
• Unix: El comienzo
• Historia de GNU/Linux
• Situación actual
• Sistema multiusuario y multitarea
• Usuarios y permisos
• Sistema de ficheros
• Entrando en Linux
Introducción 3 de 31
Qué es GNU/Linux
• Linux es un sistema operativo creado inicialmente como
un hobby por Linus Torvalds, un estudiante de la
Universidad de Helsinki. Linus estaba interesado en
Minix, un pequeño sistema UNIX, y decidió desarrollar un
sistema que superara los estándares de Minix.
• Comenzó su trabajo en 1991 cuando divulgo la versión 0.0.2 y trabajó
firmemente hasta 1994 fecha en la que se divulgó la versión 1.0 del kernel
Linux.
• Linux se desarrolla bajo la Licencia Publica General GNU y su código
fuente esta disponible para cualquiera. Aun así, esto no significa que Linux y
las diferentes distribuciones sean gratuitas -- las compañías y los
desarrolladores pueden cobrar por ello siempre y cuando el código fuente
este disponible. Linux puede utilizarse para un amplio rango de propósitos
incluyendo networking, desarrollo de software y como plataforma para el
usuario final. Linux se considera frecuentemente una alternativa excelente y
de bajo coste a otros Sistemas Operativos más caros.
Introducción 4 de 31
Qué es GNU/Linux
• GNU/Linux es un Sistema Operativo multiplataforma,
multiusuario y multitarea con compatibilidad POSIX.
• Esta compuesto por software libre. Podemos descargarlo
gratuitamente o comprarlo a una compañía junto con el soporte
técnico.
• Hoy día se puede instalar GNU/Linux en casi cualquier
plataforma existente, desde 386 hasta superordenadores Cray.
• La gran mayoría del software que puede necesitar un usuario
domestico o uno profesional están disponibles para GNU/Linux
• A pesar de que Unix ha sido tradicionalmente poco amigable,
GNU/Linux se acerca cada vez más al entorno domestico.
• Se estima que actualmente hay más de 18 millones de usuarios de
GNU/Linux en el mundo
Introducción 5 de 31
UNIX: El comienzo
• Años 60: en los Laboratorios Bell se comienza el desarrollo de
Multics, un SO multiusuario, multitarea, multicomplicado.
Nunca se terminó.
Introducción 7 de 31
GNU (II)
FSF
“Free as in ‘free speech’ not ‘free beer’”
Introducción 8 de 31
GNU (III)
GPL
Introducción 9 de 31
GNU (IV)
GPL (II)
Introducción 10 de 31
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á).
Introducción 12 de 31
Situación actual (II)
• Busqueda en Google:
– Windows: 63.200.,000 – Linux: 59.600.000
– Microsoft: 33.100.000 – Unix: 15.900.000
– Mac OS: 3.570.000 – BSD: 3.530.000
Introducción 13 de 31
Sistema multiusuario y multitarea
Introducción 16 de 31
Usuarios y permisos (III)
• Pero solo estos permisos no son suficientes, queremos
otorgar diferentes permisos a diferentes grupos de
usuarios.
• Cada usuario estará asociado a un grupo, compuesto
por usuarios con características comunes.
• Se definen TRES conjuntos de usuarios:
– El propietario del fichero
– Los miembros del grupo del propietario del fichero
– El resto de usuarios.
• Para cada uno de estos grupos definiremos los tres
permisos diferentes.
Introducción 17 de 31
Usuarios y permisos (IV)
• Ejemplo 1: comando ls
-rwxr-xr-x root root ls
El propietario puede leer, modificar y ejecutar el fichero. Su
grupo y el resto solo leerlo y ejecutarlo.
• Ejemplo 2: directorio personal
drwx------ jtpfevaa profesores jtpfevaa
El propietario puede ver, modificar y acceder al contenido
del directorio. Su grupo y el resto no pueden hacer nada.
• Ejemplo 3: directorio tmp
drwxrwxrwx root root tmp
Todo el mundo puede ver, modificar y acceder al directorio.
Introducción 18 de 31
Sistema de ficheros (I)
Todo es un fichero
• En el sistema de ficheros de los Unix, todo, absolutamente
todo, está representado por un fichero.
Introducción 19 de 31
Sistema de ficheros (II)
Árbol 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.
Introducción 20 de 31
Sistema de ficheros (III)
Directorio /bin
• /bin: Abreviación de la palabra binaries (del inglés,
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.
Introducción 21 de 31
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
Introducción 22 de 31
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..
Introducción 23 de 31
Sistema de ficheros (VI)
Directorio /man
• /man: Aquí se encuentran la mayoría de las paginas del
manual de cada programa. 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.
Introducción 24 de 31
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).
Introducción 25 de 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.
Introducción 26 de 31
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).
Introducción 27 de 31
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..
Introducción 28 de 31
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
Introducción 29 de 31