Sistema de Ficheros Bloque: unidad básica de almacenamiento del sistema de ficheros Un fichero está compuesto por un número entero de bloques. Es importante tener cuidado con el tamaño de bloques sobre todo si los ficheros que se van a almacenar son de pequeño tamaño.
Sistema de Ficheros Supuesto práctico1: –Tamaño del fichero de 1 byte, tamaño del bloque 4096 bytes, se estarán desperdiciando 4095 bytes. Supuesto práctico 2: –Disco con bloques de 4096 bytes. –Tamaño total será 500 Mbytes. –Supongamos ficheros de 400 bytes – *400=48,83 Mbytes. –¡Disco lleno con únicamente 48,83 Mbytes! –Se desperdician 451,17 Mbytes.
Sistema de Ficheros Algunos comando calculan el tamaño de los ficheros en bloques: du, df o find. du –h;du –c df –h;df find –size +4b ficheros de más de 4 bloques El tamaño de los bloques históricamente era de 512 o 1024 bytes.
Sistema de Ficheros Tablas de inodos: –Es una estructura de datos que contiene la información que representa a un fichero. –Cada fichero dispone de un número de inodo (i-number). –Todos los inodos están presentes dentro de la tabla de inodos. –Un fichero sólo puede tener un único inodo. –Un inodo es único dentro del sistema de ficheros.
Sistema de Ficheros Contenido de un inodo: –Tamaño. –Identificador del periférico que lo contiene. –Su propietario. –Su grupo. –Su número de inodo. –Derechos de acceso. –Fecha de última modificación del inodo. –Fecha de última modificación de contenido. –Fecha de último acceso –Contador de hardlinks.
Sistema de Ficheros Un inodo no contiene el nombre del fichero. Comando stat fichero o directorio, vemos la información referente al inodo al que representa. ls –i nos muestra el nombre de inodo de los ficheros o directorios.
Sistema de Ficheros El inodo contiene campos de direcciones de bloques. –Direcciones que apuntan directamente a bloques –Direcciones que apuntan a bloques que contienen otros campos de direcciones. Tres campos de indirección: –Indirección simple –Indirección doble –Indirección triple –Esta estructura conforma un árbol.
Sistema de Ficheros
Ejemplo para sistema de ficheros ext2: –Diez campos que apuntan a un bloque de datos. –Indirección simple, apunta a 256 direcciones de bloques de datos. –Indirección doble apunta a 256 direcciones las cuales apuntan cada una a otras 256 direcciones de bloques de datos. –Indirección triple, 256 direcciones las cuales apuntan cada una de ellas a otras 256 direcciones que a su vez apuntan a 256 direcciones de bloques de datos
Sistema de Ficheros Ejemplo para sistema de ficheros ext2: –Si n es el tamaño de bloque de datos en bytes, el tamaño máximo de un fichero será: – n*( ) bytes –Para n=4096 tendremos 64Gbytes
Sistema de Ficheros Catálogos, son los directorios o carpetas, permiten organizan el disco creando una jerarquía. Un catálogo no es más que un fichero que contiene la lista de los ficheros presentes en ese directorio. Como un directorio contiene una lista de ficheros y un inodo representa a un fichero, cada nombre de fichero se asocia a su inodo dentro del directorio. – ls -li
Sistema de Ficheros Creación de un sistema de ficheros: – mkfs –t tipo opciones periférico –Donde tipo puede ser: ext2, ext3, reiserf, vfat, ntfs – mkfs -t ext2 /dev/sdc1 – mkfs –t ext2 –b 2048 –m 0 –L “Datos” /dev/sdc1
Sistema de Ficheros mkfs -t ext2 /dev/sdc1 mke2fs (17-May-2010) Etiqueta del sistema de ficheros= Tipo de SO: Linux Tamaño del bloque=1024 (bitácora=0) Tamaño del fragmento=1024 (bitácora=0) Stride=0 blocks, Stripe width=0 blocks nodos-i, bloques bloques (5.00%) reservados para el superusuario Primer bloque de datos=1 Número máximo de bloques del sistema de ficheros= bloque de grupos 8192 bloques por grupo, 8192 fragmentos por grupo 2040 nodos-i por grupo Respaldo del superbloque guardado en los bloques: 8193, 24577, 40961, 57345, 73729, , , Escribiendo las tablas de nodos-i: hecho Escribiendo superbloques y la información contable del sistema de ficheros: hecho Este sistema de ficheros se revisará automáticamente cada 20 montajes o 180 días, lo que suceda primero. Utilice tune2fs -c o -i para cambiarlo.