Introducci´
on a los Computadores (CNM-130)
El sistema operativo GNU/Linux
Alejandro Piedrahita H.
Instituto de Matem´
aticas
Facultad de Ciencias Exactas y Naturales
Universidad de Antioquia
Copyleft«2012. Reproducci´on permitida bajo los t´erminos de la licencia de documentaci´on libre GNU
.
Contenido
1
Introducci´
on
2
Linux Mint
¿Qu´
e es UNIX
R?
Sistema Operativo
Desarrollado en 1969 en los Laboratorios Bell Servidores, computadores personales, port´atiles Portable, multiusuario, multitarea
Tipos de UNIX
Solaris (Sun Microsystems) AIX (IBM)
HP-UX (Hewlett-Packard)
MacOS X (Apple Inc.) FreeBSD, OpenBSD GNU/Linux
Componentes
Kernel (n´ucleo): permite que los programas accedan al hardware de la computadora
Shell (terminal): interfaz entre el usuario y el kernel Programas
¿Qu´
e es GNU/Linux?
Sistema Operativo que consta de:
Kernel (Linux)
Utilidades GNU (manipular archivos y procesos) Entorno de escritorio gr´afico (X11, GNOME, KDE) Aplicaciones del sistema
Linux fue creado por Linus Torvalds en 1991 con el
prop´
osito de ofrecer un sistema basado en Unix para
m´
aquinas i386.
Linux sirvi´
o como n´
ucleo para el sistema operativo del
proyecto GNU que ten´ıa como objetivo el desarrollo de un
sistema Unix completo, compuesto s´
olo de software libre.
Particularidades:
Hardware soportado Software disponible
Conectividad y Convivencia Documentaci´on y Soporte
¿Qu´
e son las distribuciones Linux?
Distribuci´
on de software basada en el n´
ucleo Linux que incluye
determinados paquetes de software para satisfacer las necesidades de
un grupo espec´ıfico de usuarios
Linux Mint: caracter´ısticas
Disponibilidad en varias arquitecturas (
i386
,
amd64
,
sparc
,
powerpc
)
Amplia colecci´
on de software disponible (m´
as de 25.000 paquetes)
Herramientas para la instalaci´
on y actualizaci´
on del software
Movimiento del Software Libre (
proyecto GNU
,
soporte
)
GNOME
GNOME: GNU Network Object Model Environment
Entorno de escritorio e infraestructura de desarrollo para sistemas
operativos tipo Unix, compuesto enteramente de software libre
Provee un gestor de ventanas
((intuitivo y atractivo)) y una plataforma
de desarrollo para crear aplicaciones que se integran con el escritorio
Flexibilidad en la configuraci´
on: men´
us, ´ıconos, tipograf´ıa,
configuraci´
on X-window
El Proyecto pone gran ´
enfasis en la simplicidad, usabilidad y eficiencia
Libertad: c´odigo fuente disponible para reutilizarse bajo una licencia de software libre
Accesibilidad: que pueda ser utilizado por cualquiera, sin importar sus conocimientos t´ecnicos
Disponibilidad en muchos idiomas Ciclo regular de liberaciones
MATE
Ambiente de escritorio derivado del c´
odigo base de GNOME 2
(actualmente descontinuado)
Surge de la necesidad de continuar el desarrollo de GNOME 2
El nuevo nombre fue necesario para evitar conflictos con componentes
de GNOME 3
Numerosas aplicaciones de GNOME fueron derivadas y renombradas:
Caja - Administrador de archivos (a partir de Nautilus) Pluma - Editor de texto (a partir de Gedit)
Eye of Mate - Visor de im´agenes (a partir de Eye of GNOME) Atril - Visor de documentos (a partir de Evince)
Engrampa - Herramienta de compresi´on (a partir de File Roller) MATE Terminal - Emulador de terminal (a partir de Gnome Terminal)
Caja
Administrador de archivos (a partir de Nautilus)
Permite navegar por los archivos locales
Previsualizaci´
on de archivos en sus iconos, por ejemplo con archivos de
texto plano, im´
agenes, v´ıdeos, sonido (con el puntero del mouse sobre
el archivo).
Estructura de directorios en Linux
Estructura de directorios en Linux
/: contiene TODO (nivel m´as alto de jerarqu´ıa) /bin: archivos ejecutables del sistema (binarios) /boot: archivos necesarios para iniciar el sistema /dev: contiene archivos de dispositivos de hardware (usb, impresoras, etc.)
/etc: archivos de configuraci´on de programas instalados /home: directorios de usuarios (“Mis documentos”) /lib: librer´ıa del sistema y drivers
/lost+found: informaci´on que se guard´o de manera incorrecta por fallos del sistema
/media: punto de montaje para unidades extraibles /mnt: directorio para montajes temporales de unidades /opt: directorio para instalar programas adicionales /proc: permite virtualizaci´on del sistema de archivos /root: directorio de usuario del administrador /sbin: acceso de programas cliente de un determinado servicio (Apache, ProFtpd, etc.)
/tmp: contiene archivos temporales /usr: contiene programas instalados
Video recomendado: c´
odigo Linux
La Shell
Shell:
Interfaz (terminal) entre el usuario y el kernel
Proporciona int´erprete de comandos (lenguaje de programaci´on Bash) Programas escritos en Bash: scripts
Comandos de navegaci´
on
Comando Origen Descripci´on
pwd printworkingdirectory Muestra el directorio de trabajo cd changedirectory Cambia de directorio
ls list Lista archivos y directorios man comando manual Informaci´on sobre el uso decomando
invitado@matematicas06:∼$ asldfj bash: asldfj: orden no encontrada
invitado@matematicas06:∼$ pwd /home/invitado invitado@matematicas06:∼$ ls Desktop invitado@matematicas06:∼$ cd /tmp invitado@matematicas06:/tmp$ invitado@matematicas06:/tmp$ cd .. invitado@matematicas06:/$ invitado@matematicas06:/$ pwd / invitado@matematicas06:/$ ls bin lib32 srv
boot lib64 sys
cdrom lost+found tmp
dev media usr
etc mnt var
home opt vmlinuz
initrd.img proc vmlinuz.old initrd.img root
lib sbin
invitado@matematicas06:∼$ cd /lib/init/ invitado@matematicas06:/lib/init$
Comandos de navegaci´
on
Comando Par´ametro Descripci´on
ls -a Lista TODO (all), incluyendo archivos ocultos ls -R Lista directorios y sus contenidos (Recursive) ls -l Lista informaci´on en formato largo (long)
invitado@matematicas06:∼/lib/init$ cd /etc/terminfo/ /home/invitadoinvitado@matematicas06:∼/etc/terminfo$ invitado@matematicas06:/etc/terminfo$ cd -/lib/init invitado@matematicas06:/lib/init$ cd invitado@matematicas06:∼$ invitado@matematicas06:∼$ ls /lib/init/
bootclean.sh readlink splash-functions usplash-fsck-functions.sh mount-functions.sh rw splash-functions-base vars.sh
invitado@matematicas06:∼$ ls -R /lib/init/
bootclean.sh readlink splash-functions usplash-fsck-functions.sh mount-functions.sh rw splash-functions-base vars.sh
/lib/init/rw: sendsigs.omit.d
Comandos de navegaci´
on
Comando Par´ametro Descripci´on
ls -a Lista TODO (all), incluyendo archivos ocultos ls -R Lista directorios y sus contenidos (Recursive) ls -l Lista informaci´on en formato largo (long)
invitado@matematicas06:∼$ ls /lib/init/
bootclean.sh readlink splash-functions usplash-fsck-functions.sh mount-functions.sh rw splash-functions-base vars.sh
invitado@matematicas06:∼$ ls -a /lib/init/
. mount-functions.sh splash-functions vars.sh
.. readlink splash-functions-base
bootclean.sh rw usplash-fsck-functions.sh
invitado@matematicas06:∼$ ls -l /lib/init/ total 44
-rw-r--r-- 1 root root 5089 2008-10-14 08:02 bootclean.sh -rw-r--r-- 1 root root 3982 2008-10-14 08:02 mount-functions.sh -rwxr-xr-x 1 root root 10712 2008-10-14 08:02 readlink
drwxr-xr-x 3 root root 80 2009-11-01 09:10 rw
-rw-r--r-- 1 root root 1536 2008-05-27 14:14 splash-functions -rw-r--r-- 1 root root 2847 2008-10-14 08:02 splash-functions-base -rw-r--r-- 1 root root 5636 2008-10-14 08:02 usplash-fsck-functions.sh -rw-r--r-- 1 root root 571 2008-10-14 08:02 vars.sh
Caracteres comodines (wildcards)
Comando Descripci´on ? Representa solamente un caracter * Representa varios caracteres
[algo] Representa los caracteres entre corchetes
[!algo] Cualquier caracter distinto a los que aparecen entre corchetes (algo)
invitado@matematicas06:∼$ ls /lib/init/
bootclean.sh readlink splash-functions usplash-fsck-functions.sh mount-functions.sh rw splash-functions-base vars.sh
invitado@matematicas06:∼$ ls /lib/init/s* /lib/init/splash-functions /lib/init/splash-functions-base invitado@matematicas06:∼$ ls /lib/init/*h /lib/init/bootclean.sh /lib/init/usplash-fsck-functions.sh /lib/init/mount-functions.sh /lib/init/vars.sh invitado@matematicas06:∼$ ls /lib/init/[!r]* /lib/init/bootclean.sh /lib/init/splash-functions-base /lib/init/mount-functions.sh /lib/init/usplash-fsck-functions.sh /lib/init/splash-functions /lib/init/vars.sh invitado@matematicas06:∼$ ls /lib/init/?[o]* /lib/init/bootclean.sh /lib/init/mount-functions.sh
Ejemplo 3.1: uso de ls y comodines
Ejemplo 3.1
1
Liste todos los archivos (incluyendo los ocultos) del directorio /tmp.
2Liste todos los archivos del directorio /etc que empiezan con u y
terminan en r.
3
Liste, en orden, inverso todos los archivos del directorio /etc que
empiezan con t. (Sugerencia: ver documentaci´
on del comando ls).
4
Liste todos los archivos del directorio /dev que empiecen por tty y
tengan 4 caracteres.
5
Liste todos los archivos del directorio /dev que empiecen por tty y
acaben en 3, 5 ´
o 9. (Sugerencia: buscar informaci´
on de comodines).
Soluci´
on
Comandos de manipulaci´
on de archivos y directorios
Comando Descripci´on
cp archivo1 archivo2 Crea una copia dearchivo1y la llamaarchivo2 mv archivo1 archivo2 Cambia (mueve) el nombre dearchivo1aarchivo2
rm archivo Borra (remueve)archivo
rm -r dir Borra directoriodiry todo su contenido
mkdir dir Crea (make) un directorio (directory) llamadodir
invitado@matematicas06:∼$ mdkir pruebas
invitado@matematicas06:∼$ cd pruebas invitado@matematicas06:∼/pruebas$
invitado@matematicas06:∼/pruebas$ cd invitado@matematicas06:∼$
invitado@matematicas06:∼$ mkdir pruebas/a
invitado@matematicas06:∼$ ls pruebas/ a
invitado@matematicas06:∼$ ls /lib/init/?[o]*
Comandos de exploraci´
on de archivos
Comando Descripci´on
file Examina informaci´on contenida en archivos (file)
cat Muestra contenido de un archivo por pantalla (concatenate) less Imprime el contenido de un archivo en pantalla
head Muestra las 10 primeras l´ıneas de un programa - cabeza (head) tail Muestra las 10 ´ultimas l´ıneas de un programa - cola (head) sort Ordena alfab´etica o num´ericamente una lista
wc Cuenta (count) palabras (words), l´ıneas, caracteres de un archivo
invitado@matematicas06:∼$ mdkir pruebas
invitado@matematicas06:∼$ cd pruebas invitado@matematicas06:∼/pruebas$
invitado@matematicas06:∼/pruebas$ cd invitado@matematicas06:∼$
invitado@matematicas06:∼$ mkdir pruebas/a
invitado@matematicas06:∼$ ls pruebas/ a
invitado@matematicas06:∼$ ls /lib/init/?[o]*
Comandos de redireccionamiento y tuber´ıas (pipes)
Sintaxis Descripci´on
comando > archivo Redirige (>) la salida (output ) decomandoaarchivo
comando >> archivo Agrega la salida decomandoaarchivoconservando lo anterior comando < archivo comandorecibe (<) como entrada (input ) el contenido dearchivo comando < archivo1 > archivo2 El input dearchivo1genera un output se escribe enarchivo2
Permisos
invitado@matematicas06:∼$ ls -l /lib/init/ total 44
-rw-r--r-- 1 root root 5089 2008-10-14 08:02 bootclean.sh -rw-r--r-- 1 root root 3982 2008-10-14 08:02 mount-functions.sh -rwxr-xr-x 1 root root 10712 2008-10-14 08:02 readlink
drwxr-xr-x 3 root root 80 2009-11-01 09:10 rw
-rw-r--r-- 1 root root 1536 2008-05-27 14:14 splash-functions -rw-r--r-- 1 root root 2847 2008-10-14 08:02 splash-functions-base -rw-r--r-- 1 root root 5636 2008-10-14 08:02 usplash-fsck-functions.sh -rw-r--r-- 1 root root 571 2008-10-14 08:02 vars.sh
r: lectura (read) = 4
w: escritura (write) = 2
x: ejecuci´
on (execute) = 1
Permisos
Comando Descripci´on chmod [opciones] archivo Cambia los permisos dearchivo chmod [opciones] directorio Cambia los permisos dedirectorio
Procesos
Comando Descripci´on
ps Lista procesos en ejecuci´on del sistema kill Ordena finalizar (“kill”) un proceso
top Lista informaci´on m´as completa de procesos en ejecuci´on Ctrl + C Cancela comando en ejecuci´on
Ctrl + Z Detiene (“pausa”) comando en ejecuci´on
bg Reanuda, en background, comando que qued´o en “pausa” fg Reanuda, en foreground, comando que qued´o en “pausa” exit Cierra la sesi´on