¿Qué son los inodos en Linux y cómo se usan? - 3 - septiembre 2, 2022

¿Qué son los inodos en Linux y cómo se usan?

Todo en Linux se considera un archivo para mantener la coherencia. Eso incluye dispositivos de hardware, impresoras, directorios y procesos. Los archivos regulares como música, texto, videos y otros archivos multimedia también tienen datos adicionales asociados llamados metadatos.

¿Qué son los inodos en Linux y cómo se usan? - 5 - septiembre 2, 2022

¿Qué son los Inodos en Linux? Las entradas de inodo son la base del sistema de archivos de Linux. Administran los metadatos de un archivo y son piezas esenciales del funcionamiento interno de Linux.

¿Cuál es la estructura de un sistema de archivos?

Un sistema de archivos se divide en dos partes: bloques de datos e inodos. El número de bloques es fijo una vez creado y no se puede cambiar.

El nombre, la ruta, la ubicación, los enlaces y otros atributos del archivo no se encuentran en el directorio. Los directorios son simplemente tablas que contienen los nombres de los archivos con el número de inodo correspondiente.

¿Qué son los inodos en Linux y cómo se usan? - 7 - septiembre 2, 2022

Puede crear un vínculo físico que resulte en más de un nombre para el mismo archivo. Cuando crea un vínculo físico, también crea un nuevo nombre en la tabla con el inodo pero no mueve el archivo.

Si tuviera que mover un archivo grande, llevaría mucho tiempo. Es más eficiente crear la entrada de nombre en un nuevo directorio y eliminar la entrada anterior. También puede cambiar el nombre de los archivos de la misma manera.

La parte superior de la jerarquía es el propio sistema de archivos. Dentro del sistema de archivos están los nombres de los archivos. Los nombres de los archivos enlazan con los inodos. Los inodos enlazan con los datos físicos.

¿Qué son los inodos en Linux?

Un inodo es una estructura de datos. Define un archivo o un directorio en el sistema de archivos y se almacena en la entrada del directorio. Los inodos apuntan a bloques que componen un archivo. El inodo contiene todos los datos administrativos necesarios para leer un archivo. Todos los metadatos de los archivos se almacenan en inodos en una estructura de tabla.

Al usar un programa que hace referencia a un archivo por su nombre, el sistema buscará en el archivo de entrada del directorio donde existe para extraer el inodo correspondiente. Esto le da a su sistema los datos de archivo y la información que necesita para realizar procesos u operaciones.

¿Qué son los inodos en Linux y cómo se usan? - 9 - septiembre 2, 2022

Los inodos generalmente se encuentran cerca del comienzo de una partición. Almacenan toda la información asociada con un archivo excepto el nombre del archivo y los datos reales. Todos los archivos en cualquier directorio de Linux tienen un nombre de archivo y un número de inodo. Los usuarios pueden recuperar los metadatos de un archivo haciendo referencia al número de inodo.

Los nombres de archivo y los números de inodo se almacenan en un índice separado y se vinculan al inodo. Puede vincular a los metadatos que representan el archivo. Es posible tener varios nombres de archivo que se vinculen a un dato o inodo, como puede ver en la imagen a continuación.

¿Qué es el número de inodo?

Cada inodo en la estructura de Linux tiene un número único identificado con él. También se le llama número de índice y tiene los siguientes atributos:

  • Tamaño
  • Dueño
  • Fecha y hora
  • Permisos y control de acceso
  • Ubicación en el disco
  • Tipos de archivo
  • Número de enlaces
  • Metadatos adicionales sobre el archivo

Para verificar la lista de números de inodo, use el siguiente comando:

  • Ls -i

La siguiente captura de pantalla muestra un directorio con números de inodo que aparecen en la columna de la izquierda.

¿Qué son los inodos en Linux y cómo se usan? - 11 - septiembre 2, 2022

¿Cómo funcionan los inodos?

Cuando crea un archivo nuevo, se le asigna un nombre de archivo y un número de inodo. Ambos se almacenan como entradas en un directorio. Ejecutar el comando ls (ls -li ) le mostrará una lista de los nombres de archivo y números de inodo que están almacenados en un directorio.

Use el siguiente comando para enumerar la información de inodo para cada sistema de archivos.

  • Df-hola
¿Qué son los inodos en Linux y cómo se usan? - 13 - septiembre 2, 2022

¿Cuántos inodos estás usando?

Una forma de quedarse sin espacio en un sistema de archivos es usar todos sus inodos. Incluso si tiene suficiente espacio libre en su disco, no podrá crear nuevos archivos.

El uso de todos los inodos también puede provocar que su sistema se detenga repentinamente. Para ver una lista de estadísticas sobre el uso de inodos, como usado, libre y porcentaje usado, escriba el siguiente comando:

  • Sudo df-ih
¿Qué son los inodos en Linux y cómo se usan? - 15 - septiembre 2, 2022

Formas adicionales en que se usan los inodos

La forma en que funcionan los inodos en Linux hace que sea imposible tener números de inodos en conflicto. No es posible crear un enlace duro entre diferentes sistemas de archivos. Sin embargo, puede usar enlaces flexibles en diferentes sistemas de archivos. Puede eliminar los archivos originales y aún tener los datos disponibles a través de un enlace físico.

Al eliminar un archivo, todo lo que ha hecho es eliminar uno de los nombres que apuntan a un número de inodo específico. Los datos permanecerán hasta que elimine todos los nombres asociados con el mismo número de inodo. Los sistemas Linux se actualizan sin necesidad de reiniciar el sistema, en gran parte debido a la forma en que funcionan los inodos.

Un proceso puede usar un archivo de biblioteca al mismo tiempo que otro proceso reemplaza el mismo archivo con una versión actualizada más reciente y crea un nuevo inodo. El proceso en ejecución sigue usando el archivo anterior. La próxima vez que utilice el mismo proceso, utilizará la nueva versión.

Los usuarios no interactúan directamente con los inodos, pero representan un componente fundamental de las estructuras de archivos de Linux.