Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Tema 3 Sistemas de Archivos
19/09/2018
2
Almacenamiento de información
Necesidades Almacenamiento de grandes cantidades de información Persistencia de la información almacenada Acceso concurrente a la información Solución Archivos Sistemas de archivos 19/09/2018
3
Archivos Mecanismo de abstracción
Unidades lógicas de almacenamiento agrupadas bajo un nombre Formas de nombrar un archivo Cadenas de letras Uso de extensión Distinción entre mayúsculas y minúsculas 19/09/2018
4
Archivo Conjunto de datos al cual se le asigna un nombre
Operaciones sobre un archivo: Abrir Cerrar Crear Destruir Copiar Renombrar Mostrar contenido 19/09/2018
5
Estructura de un archivo
Secuencia de bytes El Sistema Operativo se despreocupa del contenido Máxima flexibilidad MS-DOS, Unix, Windows Secuencia de registros Cada registro tiene su propia estructura interna Árbol de registros Registros con un campo llave para ordenarlos 19/09/2018
6
Tipos de archivos Archivos regulares Directorios
Diferentes formatos Directorios Archivos de sistema para mantenimiento de una estructura del sistema de archivos Archivos especiales de caracteres Relacionados con la Entrada/Salida Archivos especiales de bloques Para modelar discos 19/09/2018
7
Acceso a un archivo Acceso secuencial Acceso aleatorio
Byte a byte, registro a registro Ideal para almacenamiento en cinta Acceso aleatorio Lectura/escritura en orden cualquiera Necesarios para sistemas de bases de datos 19/09/2018
8
Atributos de un archivo
Protección Contraseña Creador Propietario De sistema Tamaño Fecha de creación Modo de uso Ocultamiento 19/09/2018
9
Sistemas de archivos Define la forma en que gestiona los archivos el sistema operativo: Métodos de acceso Administración de archivos Administración de almacenamiento secundario Mecanismos de integridad de los archivos Administración de espacio en disco 19/09/2018
10
Sistemas de archivos: Funciones
Usuarios deben poder crear, modificar, compartir y eliminar archivos. Ofrecer varios tipos de acceso: R,W,X. Posibilidades para estructurar archivos, transferir información entre archivos. Respaldo y recuperación para evitar pérdidas Referencias simbólicas Seguridad y privacidad Interfaz amigable 19/09/2018
11
Directorios Se usan para llevar un registro de los archivos
Por cada archivo hay que almacenar Nombre Atributos (en la entrada del directorio u otro lugar) Estructura en directorios: 1 Directorio global común 1 Directorio por usuario Árbol de directorios 19/09/2018
12
Rutas de acceso Necesarias para los árboles de directorios
Tipos de rutas Absoluta : Ruta desde la raíz del árbol hasta el archivo Ejemplo: /home/usr/hola.txt Relativa: Ruta desde el directorio activo (o de trabajo) hasta el archivo Ejemplos: ./usr/hola.txt ../hola.txt 19/09/2018
13
Rutas de acceso “/”: indica que es un directorio
“.”: directorio actual “..”: directorio padre (en el árbol) 19/09/2018
14
Directorios en MS-DOS Árbol de directorios
Cada entrada de directorio tiene 32 bytes Nombre de archivo: 8 bytes Extensión: 3 bytes Atributos: 1 byte Reservado: 10 bytes Hora: 2 bytes Fecha: 2 bytes Número primer bloque: 2 bytes Tamaño: 4 bytes 19/09/2018
15
Directorios en UNIX Árbol de directorios
Cada entrada de directorio es de 16 bytes Número de nodo-i: 2 bytes Nombre de archivo: 14 bytes 19/09/2018
16
Directorios en UNIX (2) Comandos para directorios
Crear directorio : mkdir directorio Entrar en directorio: cd directorio Borrar directorio: rmdir directorio Ver contenido: ls 19/09/2018
17
Ejemplos de sistemas de archivos
FAT16 (msdos) Despercicio de espacio, bloques 32Kb, máximo 2 GB Nombres 8 caracteres VFAT (win95) Extensión de FAT para permitir nombres largos Compatible con FAT16 FAT32 (win95-98) Bloques 4 kb, discos duros de gran capacidad NTFS (win NT en adelante) NTFS version 2 en XP EXT2FS(linux) 19/09/2018
18
Sistema de ficheros NTFS
El usuario puede configurar el sistema de ficheros a su gusto y manera. Usa un árbol B para indexar los directorios, lo que hace más eficientes las búsquedas. Los ficheros pequeños están localizados en el disco cerca del directorio, por lo que el tiempo de búsqueda promedio disminuye. "Unicode". Dos bytes para cada carácter, evitando así el problema de los códigos locales, véase el problema de la "ñ". Suministra una utilidad cómoda para hacer las particiones de los discos, formatearlos y demás, que poco tiene que ver con "fdisk". Ofrece mucha seguridad al usuario, tanto contra fallos de la máquina como contra posibles "intrusos". Copias automáticas de parte de los ficheros que utiliza el usuario compresión de ficheros se pueden direccionar hasta 2 hexabytes 19/09/2018
19
Tamaño de la unidad (en MB)
Tamaño de la unidad (en MB) Tamaño del clúster en KB FAT 16 FAT 32 VFAT NTFS 0 - 15 4 0.5 (512 bytes) 2 8 0.5 / 4 1 16 1 32 No puede 64 128 256 16 GB - 32 GB Mayores de 32GB 19/09/2018
20
Gestión de Archivos en LINUX
19/09/2018
21
Estructura de Archivos en LINUX
Casi todo se gestiona como si fuera un archivo Ficheros Directorios Dispositivos de Entrada/Salida Estructura jerárquica de directorios Directorio raíz / 19/09/2018
22
Tipos de archivos en LINUX
Ficheros Directorios Ficheros especiales Enlaces Sockets Tuberías 19/09/2018
23
Ficheros en Linux ASCII Datos en binario
Configuración Scripts Datos en binario Programas ejecutables en binario 19/09/2018
24
Directorios en Linux Fichero binario Contenido
Lista de los otros ficheros Lista de directorios 19/09/2018
25
Ficheros especiales en Linux (I)
Mecanismos empleados para las operaciones de entrada/salida. Suelen encontrarse en el directorio /dev. Tipos de ficheros especiales De carácter De bloque 19/09/2018
26
Ficheros especiales en Linux (II)
Ficheros especiales de carácter Para dispositivos de acceso por caracteres Ejemplos: Ficheros especiales de bloque Para dispositivos de acceso por bloques 19/09/2018
27
Enlaces en LINUX Mecanismo que permite que varios nombres de archivos se refieran al mismo contenido Tipos de enlaces Enlace simbólico: enlace a otro nombre de archivo Enlace duro: enlace múltiple al mismo archivo 19/09/2018
28
Comparación entre enlaces
Si borramos el fichero enlazado Enlace duro: no hay problema Enlace simbólico: referencia a algo que no existe Si listamos los ficheros de un directorio (ls -l) Enlace duro: no hay distinción Enlace simbólico: se muestra el enlace 19/09/2018
29
Ficheros para comunicación entre procesos
Sockets Ficheros para comunicación a través de una red entre procesos Tuberías (Pipes) Ficheros para paso de información entre procesos 19/09/2018
30
Identificación de tipos de fichero
Al hacer ls –l, podremos identificar los tipos de fichero de la siguiente forma: - Enlace duro d Directorio l Enlace simbólico b fichero de bloque c fichero de carácter s Socket p Tubería 19/09/2018
31
Propiedad de los archivos
Cada fichero pertenece a un usuario. Cada fichero pertenece además a un grupo de usuarios. El usuario propietario no tiene por qué pertenecer al grupo propietario. Ejemplo: fichero creado por el profesor para los alumnos de una asignatura Usuario: profesor Grupo: grupo con los alumnos 19/09/2018
32
Implicaciones Un usuario tendrá acceso, en principio, a todos los archivos poseídos por sus(s) grupo(s) de usuarios. Si queremos que un usuario acceda a los archivos de un determinado grupo: Hacerle copia de los archivos Hacer “públicos” esos archivos Dar de alta al usuario en el grupo 19/09/2018
33
¿Quién posee un archivo nuevo?
El usuario propietario es el usuario que lo crea………pero………….¿cuál es el grupo propietario? Opción 1: El grupo actual del usuario propietario Opción 2: El grupo propietario del directorio en el que se encuentra (comprobar en prácticas) 19/09/2018
34
Comandos para cambiar la propiedad
Cambiar usuario propietario chown nuevo_propietario lista_archivos chown –R nuevo_propietario directorio Cambiar grupo propietario chgrp nuevo_grupo lista_archivos Cambiar ambos chown nuevo_usuario.nuevo_grupo lista_archivos 19/09/2018
35
¿Cómo puedo hacer que mis archivos sólo sean accesibles para mí ?
Entonces……………… ¿Cómo puedo hacer que mis archivos sólo sean accesibles para mí ? ¿Cómo puedo evitar que otros usuarios modifiquen mis archivos? ¿Cómo puedo permitir que otros usuarios ejecuten mis programas? 19/09/2018
36
Acceso a los archivos Se define el modo de acceso para:
Usuario propietario Grupo propietario Otros usuarios Se define el modo de acceso a : Ficheros Directorios 19/09/2018
37
Tipos de acceso a ficheros
Lectura (R) : Ver contenido del fichero Escritura (W): Modificar el contenido del fichero Ejecución (X): Ejecutar el fichero 19/09/2018
38
Tipos de acceso a directorios
Lectura (R) : Ver contenido del directorio (por ejemplo, uso del comando ls) Escritura (W): Modificar el contenido del directorio (por ejemplo, borrar ficheros del directorio ) Ejecución (X): Entrar en el directorio (por ejemplo, uso del comando cd) 19/09/2018
39
Ejemplos de protección
Comando Mínimo acceso necesario Para fichero Para directorio cd /home/chavez ------ Ejecución ls /home/chavez/*.c Lectura ls –s /home/chavez/*.c Lectura, Ejecución cat runme cat >> runme Escritura runme (si es un fichero ejecutable) Lectura y Ejecución (si es un fichero script) rm runme Escritura y Ejecución 19/09/2018
40
Resumen protección directorios
- - - : no permite ninguna actividad en el directorio ni en sus subdirectorios. R--: permite a los usuarios listar el nombre de los archivos en el directorio, pero no mostrar los atributos de los mismos --X: Permite a los usuarios trabajar con programas del directorio (aquellos cuyos nombres ya conocieran antes) R-X: Permite a los usuarios trabajar con programas del directorio y listar los contenidos del directorio, pero no se puede crear ni eliminar archivos. RWX: Se puede trabajar con programas del directorio, listar contenido y crear y eliminar archivos 19/09/2018
41
Nuevas dudas ¿Qué ocurre si los archivos de un directorio tienen permisos diferentes a los del directorio? ¿Cómo se relacionan estos permisos con los tipos de acceso según los usuarios? 19/09/2018
42
Definición de clases de acceso
Cada archivo (incluyendo directorio) tiene especificados los permisos para: Usuario: usuario propietario del archivo Grupo: grupo propietario del archivo Otros: otros usuarios no cubiertos por los casos anteriores Se definen permisos de lectura, escritura y ejecución 19/09/2018
43
El permiso de un archivo
Cuando hacemos ls –l se nos muestra el contenido de un directorio así como los permisos de cada fichero Se hace uso de 10 caracteres 1: tipo de archivo 3: permisos usuario en formato rwx 3: permisos grupo en formato rwx 3: otros accesos en formato rwx 19/09/2018
44
Ejemplo [jfernand@dis jfernand]$ ls -la total 36
drwx--x--x 4 jfernand profesor oct 30 15:02 . drwxr-xr-x 43 root root nov 6 13:39 .. -rw jfernand profesor nov 7 12:33 .bash_history -rw-r--r jfernand profesor oct 16 11:27 .bash_logout -rw-r--r jfernand profesor oct 16 11:27 .bash_profile -rw-r--r jfernand profesor oct 16 11:27 .bashrc -rw-r--r jfernand profesor oct 16 11:27 .emacs drwxr-xr-x 4 jfernand profesor nov 7 11:56 .kde drwxr-xr-x 4 jfernand profesor oct 31 18:06 public_html 19/09/2018
45
Comandos para gestionar permisos
Cambio genérico chmod lista_permisos lista_archivos Ejemplos chmod u+w lista_archivos chmod a+w lista_archivos chmod a-w lista_archivos chmod a=r lista_archivos 19/09/2018
46
Búsqueda de archivos En ocasiones necesitamos buscar ciertos archivos o datos cuya ubicación desconocemos. El sistema operativo debe proporcionar mecanismos para realizar búsquedas en el sistema de archivos. Unix proporciona el comando FIND 19/09/2018
47
FIND Sirve para realizar búsquedas.
Sintaxis: find directorio_inicio opciones Tipos de opciones: tiempo de acceso/modificación/creación de fichero tipo de fichero nombre de fichero propiedad del fichero Permite realizar una serie de acciones con los ficheros encontrados 19/09/2018
48
Acciones asociadas a FIND
PRINT: Mostrar por pantalla el nombre de los archivos LS : hacer el ls de los archivos encontrados EXEC cmd: ejecutar un comando sobre el archivo OK cmd: idem pero pidiendo confirmación 19/09/2018
49
Ejemplos de FIND find . –name /*.c –print
busca los archivos que con “.c” y muestra el nombre por pantalla a partir del directorio actual find . –name /*.c –exec rm –f {} \ borra los archivos “.c” a partir del directorio actual find /chem –size –mtime +30 –exec ls –l {} lista los archivos de más de 2048 bloques que no hayan sido modificados en el último mes 19/09/2018
50
Sistema de Impresión en LINUX
19/09/2018
51
Sistema de Impresión en LINUX
Elementos del sistema de impresión Comandos de usuario para iniciar la impresión Colas para gestionar los trabajos de impresión Directorios para almacenar los trabajos a imprimir Servidor de procesos de impresión Comandos de administración para gestionar el sistema de impresión 19/09/2018
52
Comandos de usuario Enviar un trabajo a imprimir (lpr)
Ver la cola de impresión (lpd) Eliminar un trabajo de la cola (lprm) 19/09/2018
53
Copias de seguridad Muchos sistemas ofrecen una variedad de utilidades para hacer copias de seguridad, variando desde unos programas de propósito general hasta programas especialmente diseñados para hacer copias de seguridad incrementales de un sistema de ficheros Nos centraremos en el primer grupo de aplicaciones 19/09/2018
54
Programas para copias de seguridad
Programas para cuando necesitemos hacer copias de seguridad de una cantidad no muy elevada de datos. Ideales cuando tenemos controladas adecuadamente las modificaciones de los ficheros. tar cpio 19/09/2018
55
cpio programa original de Unix para intercambiar archivos mediante soportes magnéticos. tiene opciones para realizar intercambio (swapping) de bytes, escribir en diferentes formatos de archivo y enviar mediante una tubería los datos a otros programas. Esta última prestación hace de cpio una excelente elección para soportes de instalación. no sabe cómo recorrer el árbol de directorios, por lo que se le debe suministrar una lista de archivos. Ejemplo: Find /home –cpio /dev/rmt0 19/09/2018
56
tar trabaja con el sistema de archivos
escribe archivos y directorios en la cinta. soporta todas las opciones disponibles para cpio no necesita la inusual tubería que cpio emplea 19/09/2018
57
Compresión en Linux La compresión de archivos permite almacenar la misma cantidad de información en menos espacio utilizando algoritmos de compresión Herramientas para compresión GZIP GUNZIP TAR 19/09/2018
58
Programas para compresión
Por convención, a los ficheros comprimidos se les da la extensión .gz. El comando Gzip crea un fichero comprimido que finaliza con .gz; Gunzip extrae los ficheros comprimidos y suprime el fichero .gz. gzip filename.ext gunzip filename.ext.gz 19/09/2018
59
Compresión ZIP Si intercambia ficheros con usuarios no-Linux, le conviene zip para evitar problemas de compatibilidad zip -r filename.zip files unzip filename.zip gzip filename.gz file1 file2 file3 /user/work/school 19/09/2018
60
Gestión de la Entrada/Salida en Linux
Define el acceso a terminales, discos, impresoras, redes, etc. En Linux el acceso se realiza mediante archivos especiales integrados en el sistema de archivos. Cada dispositivo de E/S tiene asignado el nombre de su ruta de acceso (generalmente /dev) Se puede hacer uso de las funciones normales para archivos Mismos mecanismos de protección y seguridad 19/09/2018
61
Entrada/Salida estándar
Entrada estándar: lugar por donde los procesos acceden a la información de entrada stdin Salida estándar: lugar por donde depositan los procesos la información de salida stdout Salida de error: lugar por donde los procesos emiten los mensajes de error stderror 19/09/2018
62
Redirecciones Entrada comando_a_ejecutar < archivo_fuente_datos
Salida comando_a_ejecutar > archivo_destino_datos Error comando 2> archivo_destino_errores 19/09/2018
63
Tuberías Uno de los métodos más importantes de comunicación entre procesos consiste en las llamadas tuberías; éstas permiten que la salida standard de un proceso se pueda conectar a la entrada standard de otro proceso. Ej: ls –l | more 19/09/2018
64
Filtros Los filtros son programas muy útiles para usarse en conjunción con las tuberías. Un filtro es un programa que lee la entrada estándar, la cambia de alguna manera, y la saca por la salida estándar. Ejemplo: more , sort ls –l | more 19/09/2018
65
Fin 19/09/2018
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.