Luzablue

Tecnología y más

¿Cómo funcionan los nodos de Linux?
Linux

¿Cómo funcionan los nodos de Linux?

Si ha estado usando Linux el tiempo suficiente, verá el término «inodo». Esto es algo que sucederá ocasionalmente, pero no afectará lo que haces. Aquí explicaremos qué son los inodos y cómo funcionan.

¿Qué es Inodes?

En una biblioteca, todos los libros están organizados por género, nombre del autor o rango de edad de la audiencia. Si desea localizar un thriller de «Bobby Daniels», vaya directamente a la sección de thriller y comience a buscar nombres de autores que comiencen con «B». Como una biblioteca, todos los archivos en un sistema Linux están organizados para una recuperación y uso eficientes. Inode es una entidad que ayuda a organizar archivos en un sistema Linux.

¿Qué son los metadatos de archivos?

Supongamos que tenemos un archivo llamado «sample.txt» que contiene los datos «hola».

Este archivo contiene algunos datos e información relevantes como el tamaño del archivo, permisos, propiedad de usuarios y grupos, creación / acceso / modificación de marcas de tiempo, número de enlaces, etc. Toda esta información se denomina colectivamente metadatos de archivos.

¿Qué es Inode - Metadatos de archivo?

¿Qué son los sistemas de archivos?

En un dispositivo de almacenamiento como un disco duro, una partición se formatea como un sistema de archivos antes de que se utilice para almacenar archivos. Un sistema de archivos es el bibliotecario del disco duro. Formalmente, es un conjunto de estructuras de datos y algoritmos que funcionan en conjunto para almacenar metódicamente archivos en la partición.

Las particiones en los sistemas Linux se formatean con frecuencia con EXT4. Otros sistemas de archivos como B-Tree File System (BTRFS), Reiser File System, ZFS, etc. también están disponibles.

Atarlos a todos juntos

Inode es una estructura de datos en Ext4 que contiene todos los metadatos de un archivo.

Inode en detalle

Por supuesto, habría muchos archivos en un solo sistema de archivos. Como adivinó, cada archivo tendría su propio nodo. Para identificar de forma única los nodos, cada nodo está numerado.

¿Como la numeración de inodos?

Los números de inodos en un sistema de archivos comienzan en 1. Los primeros diez inodos están reservados para uso del sistema. Los archivos de usuario tienen metadatos almacenados en el inodo 11. Todos los inodos se apilan correctamente en una tabla de inodo.

Tabla de inodos

Una entrada en la tabla Inode tendría un tamaño de 256 bytes. Para un archivo, Linux organiza inteligentemente todos los metadatos en 256 bytes. Además, un inodo para un archivo también tendría información sobre la ubicación de los datos del archivo en el sistema de archivos. Nota: solo los metadatos del archivo se almacenan en inodos.

El número total de inodos en un sistema de archivos depende del espacio disponible y del número de archivos que se pueden almacenar en la partición.

¿Cómo se asignan y distribuyen los inodos?

A medida que el usuario agrega archivos a un sistema de archivos recién formateado, los nodos que comienzan en 11 se asignan para almacenar los metadatos del archivo.

Existe otra estructura de datos llamada «Bitmap Inode» para rastrear el estado de una asignación de inodo. Es una colección de bits que actúa como un mapa.

Considere ocho bits en el mapa de bits de inodos para indicar el estado de asignación de inodos 11-18, como se muestra en la tabla siguiente. Un valor de 1 en el mapa de bits significa que el inodo está asignado, es decir, usado para almacenar metadatos para un archivo. Un valor de 0 en el mapa de bits significa que el inodo no está actualmente en uso. Aquí podemos ver que el inodo 17 está en uso.

Mapa de bits de inodo

Si se elimina el archivo que tiene sus metadatos en el nodo 17, entonces el estado correspondiente de su mapa de bits será 0, lo que indica que está libre para ser utilizado por otro archivo.

Tabla de mapa de bits de inodos

¿Cómo mostrar el número de inodo de un archivo?

Hay dos maneras de hacer esto.

El primero es el uso ls ordenar con –i , seguido de un nombre de archivo. El primer campo de la salida es el número de nodo que tiene los metadatos «sample.txt».

Inodo 7

La misma información se puede obtener utilizando stat comando seguido del nombre del archivo.

Inodo 8

Para mostrar el número total de inodos disponibles para una partición, df el comando se puede utilizar con -i cambiar.

Inodo 9

En la partición «/ dev / sda4», están disponibles 404754480 inodos, de los cuales solo se utilizan 359044 inodos.

Conclusión

Naturalmente, la tabla Inode apila los metadatos de todos los archivos clasificados meticulosamente en el inodo, junto con información sobre la ubicación de los datos del archivo. Todo lo que hemos hablado sobre los inodos de Linux es solo la punta del iceberg. Para obtener más información sobre su funcionamiento interno, puede echar un vistazo. esta enlazar.

DEJA UNA RESPUESTA

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *