Parte 2 Curso ESF-GPUL

22
Gui´ on Sesi´ on Unix Comandos b´ asicos Tratamiento de ficheros Curso de Introducci´ on a sistemas GNU/Linux odulo 2: Unix: estructura del sistema e int´ erpretes de comandos Francisco Javier Tsao Sant´ ın Grupo de Programadores y Usuarios de Linux Grupo de Sistemas de Informaci´ on de Enxe˜ ner´ ıa Sen Fronteiras ETSI Caminos, Canales y Puertos de Coru˜ na 27 y 28 de Abril de 2009 27 de abril de 2009 Francisco Javier Tsao Sant´ ın Curso de Introducci´ on a sistemas GNU/Linux

Transcript of Parte 2 Curso ESF-GPUL

Page 1: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Curso de Introduccion a sistemas GNU/LinuxModulo 2: Unix: estructura del sistema

e interpretes de comandos

Francisco Javier Tsao Santın

Grupo de Programadores y Usuarios de LinuxGrupo de Sistemas de Informacion de

Enxenerıa Sen Fronteiras

ETSI Caminos, Canales y Puertos de Coruna27 y 28 de Abril de 2009

27 de abril de 2009Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 2: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

1 Sesion Unix

2 Comandos basicos

3 Tratamiento de ficheros

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 3: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Acceso

La entrada a una sesion se realiza de diversas formas:

login, en consolas virtuales (Ctrl+Alt+Falgo)

xdm/gdm/kdm

rlogin, ssh, telnet

Y para salir, logout/exit

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 4: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Interpretes de comandos

Una vez que nos hemos autenticado, podemos usar el inteprete decomandos.Algunos interpretes:

bash (Debian por defecto)

ksh (OpenBSD por defecto)

csh (interprete con algunos comandos similares a lenguage C)

...

xterm, kterm,... son emuladores de terminal, que usan uno de losinterpretes por debajo.

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 5: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Algunas ayudas en los interpretes

tab autocompleta

flecha arriba/abajo navega por el historico de comandos

shift arriba/abajo scroll de pantalla arriba/abajo

shift pag arriba/abajo pantalla arriba/abajo

Uso de wildcards: * uno o varios caracteres cualquiera, ? uncaracter cualquiera

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 6: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Algunas ayudas en los interpretes(II)

Busqueda de ayuda:

man (seccion) nombrecomando

info nombreprograma

apropos cadena-de-busqueda

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 7: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

ls

ls (LiSt): listar archivos en el directorio. Algunas opciones:

-l formato largo

-s indicar tamano

-a todos los archivos, incluyendo los ocultos

-h tamano en unidades “humanas”

–color colorear nombres segun tipo de archivo y permisos

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 8: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

El arbol de directorios

La jerarquıa de directorios es unica:

/ Directorio raız

/etc Configuraciones del sistema

/dev Dispositivos

/sbin Ejecutables esenciales del sistema

/bin Ejecutables importantes del sistema

/lib Bibliotecas de sistema, modulos del kernel

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 9: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

El arbol de directorios (II)

/usr Programas, materiales compartidos, documentacion paralos usuarios

/var Archivos variables en el sistema: logs, caches, backups,...

/boot Kernels y configuraciones de arranque

/root Raız del superusuario

/home Raız de los usuarios

/mnt Directorio de montaje de exportaciones

/proc Recursos del kernel

/tmp Espacio temporal para usuarios

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 10: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Arbol y dispositivos

Todo en Unix es un fichero: la pantalla, las unidades de disco, lasunidades de red...A cada dispositivo se le asigna un archivo de lectura/escritura en/dev:

hda, hdb,... discos IDE

sda, sdb,... dispositivos SCSI/USB/SATA

tty1,tty2,... consolas virtuales

dsp, audio... dispositivos de audio

...

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 11: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Arbol y dispositivos (II): mount, df, du

Las unidades de almacenamiento se deben montar en un directorio:mount /dev/hdc4 /mntmount -t vfat /dev/sda1 /media/usbdiskmount -t nfs 192.168.1.39:/home/fran /mntde tal manera que se mantiene la uniformidad del arbol dedirectorios.Si queremos conocer el espacio usado y disponible en las unidadessubyacentes, usamos el comando df (Disk Free)Si queremos saber el espacio que ocupa un directorio, usamos elcomando du (Directory Usage)

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 12: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Rutas a archivos

Las rutas hacia los archivos pueden ser:

Absolutas: /home/fran/isf/curso.tex

Relativas: isf/curso.tex

Algunos atajos:

. Directorio actual

.. Directorio padre

- Directorio anterior

/ Directorio raız de usuario

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 13: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

cd, mkdir, pwd

cd (Change Directory): cambiar a directorio por defectomkdir (MaKeDIRectory): crear directoriopwd (Print Working Directory): mostrar ruta hasta el directoriormdir (ReMove DIRectory): borrar directorio (vacıo)

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 14: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

touch, cp, mv, rm

cp (CoPy): copiar un archivo (-r recursivo -f forzar sin confirmar)mv (MoVe): renombrar un archivorm (ReMove): borrar un archivo (-r recursivo -f forzar sinconfirmar)

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 15: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

ln

ln(LiNk): crea enlaces

hard links: crean una copia del archivo

soft links (-s): si se borra el original, desaparece el contenido

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 16: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Sistema de permisos

Permisos de: lectura(r,4), escritura(w,2), ejecucion(e,1)

Especiales: setuid/setgid (s), sticky bit (t)

Para: todos(a), grupo(g), usuario(u)

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 17: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Sistema de permisos: chmod, chown, chgrp

chmod (CHange MODe): cambia permisos. Ejemplos:chmod o-rwx ficherochmod 664 ficherochown (CHange OWNer): cambia de dueno. Ejemplos:chown fran:svn /var/repositoriochgrp (CHange GRouP). cambia de grupo

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 18: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Herranientas de manejo de archivos

touch: crear un archivo vacıo

cat (conCATenate): une dos archivos en un tercero

cat archivo1 archivo2 ¿ archivo3

split: dividir archivo. Ejemplo: split -b 1000k nombrefichero

more, less, most: visualizador de archivos

head, tail: mostrar las (-n ) numero de lıneas primeras/ultimas

wc: imprime el numero de (-l) lıneas (-w) palabras o (-c)caracteres

find: busca archivos por (-name) nombre, (-user) dueno,(-perm) permisos...

grep: busca contenido en los archivos (-r) recursivamente

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 19: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Empaquetado de archivos

Los programas mas habituales para empaquetar y comprimir, sontar, gzip, bzip2. Algunos ejemplos de uso:

tar -xvf archivo.tar (descomprime guardando la estructura dedirectorios)

gzip archivo (genera un archivo.gz)

tar -xjvf archivo.tar.bz2 (descomprime un archivo tarcomprimido con bzip),

zless archivo.gz (lee el contenido del archivo descomprimiendobajo demanda)

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 20: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Entrada/salida/error standard, pipes

Hay tres dispositivos basicos en la ejecucion de programas en Unix:stdin, stdout, stderr

> A salida standard

< A entrada standard

2 > A error standard

| salida standard de un programa a entrada standard de otroprograma

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 21: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Gestion de procesos

Unix es un sistema multitarea. El usuario puede ver y gestionarprocesos con estos comandos:

ps muestra los procesos (a todos los del sistema lanzadosdesde consola, u indicando los usuarios propietarios, x todoslos lanzados incluso mas alla de la consola)

top muestra indicadores de los procesos (tiempo de CPU, etc)

kill -(senal) (proceso) manda senales a los procesos

ctrl-z, ctrl-c para o corta el proceso lanzado desde el terminal

proceso & ejecuta el proceso de fondo

bg % (proceso) lanza el proceso a background

fg % (proceso) devuelve el proceso a primer plano

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux

Page 22: Parte 2 Curso ESF-GPUL

Guion Sesion Unix Comandos basicos Tratamiento de ficheros

Archivos de configuracion y variables de entorno

El interprete de comandos bash cuenta con algunos archivos quemodifican su comportamiento:

.bash profile usado por intepretes bajo autenticacion

.bashrc usado por interpretes lanzados sin autenticacion

.bash logout ejecutado al desconectarse

Comando env muestra variables de entorno, export las pone enfuncionamiento

Francisco Javier Tsao Santın Curso de Introduccion a sistemas GNU/Linux