Inodo

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 22 de enero de 2022; las comprobaciones requieren 2 ediciones .

En informática , inodo (pronunciado ainod o inode), un inodo  es una estructura de datos en los sistemas de archivos (FS) UNIX tradicionales , como UFS , ext4 . Esta estructura almacena metainformación sobre archivos estándar , directorios u otros objetos del sistema de archivos, además de los datos y el nombre en sí.

Detalles

Cuando se crea un sistema de archivos, también se crean estructuras de datos que contienen información sobre los archivos. Cada archivo tiene su propio inodo, identificado por un número único (a menudo llamado "número i" o "inodo") en el sistema de archivos donde reside el archivo.

Los inodos almacenan información sobre los archivos, como la propiedad (usuario y grupo), el modo de acceso (lectura, escritura, ejecución) y el tipo de archivo. Hay una cierta cantidad de inodos que especifica la cantidad máxima de archivos permitidos por un determinado sistema de archivos. Por lo general, al crear un sistema de archivos, aproximadamente el 1 % de su volumen se asigna a los inodos.

El término inodo generalmente se refiere a los inodos de dispositivos de bloque que administran archivos persistentes, directorios y, si es posible, enlaces simbólicos . Este concepto juega un papel importante en la recuperación de sistemas de archivos dañados.

Nombres de archivo y contenido del directorio:

La representación del núcleo de estos datos en la memoria se denomina struct inode(inodo estructural) (en el sistema operativo Linux ). Los sistemas BSD usan el término , donde la vnodeletra v indica un sistema de archivos virtual a nivel de kernel .

Descripción de un inodo en POSIX

Los estándares POSIX describen el comportamiento de un sistema de archivos como descendiente de los sistemas de archivos UNIX tradicionales, UFS. Los archivos regulares deben tener los siguientes atributos:

La llamada al sistema statlee el número de inodo del archivo y parte de su información.

Etimología de inodo

Se desconoce qué en el nombre "i-nod" significa "y". En respuesta a una pregunta sobre esto, el co-creador de Unix, Dennis Ritchie , respondió:

Para ser honesto, yo tampoco lo sé. Era solo un término que comenzamos a usar. Debido a la estructura ligeramente inusual del sistema de archivos, en el que la información de acceso a los archivos se almacena como una matriz plana en el disco, separada de toda la información de la jerarquía del directorio, lo mejor que puedo adivinar (para "y") es "índice". Por lo tanto, i-number era un índice en esta matriz e i-node era un elemento seleccionable de la matriz. (El prefijo "y-" se usó en la primera versión del manual; con el tiempo, ya no se usó el guión).

Texto original  (inglés)[ mostrarocultar] La verdad yo tampoco lo se. Era solo un término que comenzamos a usar. "Índice" es mi mejor suposición, debido a la estructura del sistema de archivos ligeramente inusual que almacenaba la información de acceso de los archivos como una matriz plana en el disco, con toda la información del directorio jerárquico viviendo aparte de esto. Por lo tanto, el i-number es un índice en esta matriz, el i-node es el elemento seleccionado

de la matriz (La notación "i-" se usó en la primera edición del manual; su guión se eliminó gradualmente).

¿Qué significa la "i" en inodo ? Dennis Ritchie tampoco lo sabe. (enlace no disponible) . Consultado el 3 de agosto de 2010. Archivado desde el original el 23 de agosto de 2011. 

Es decir, nodo de índice (nodo de índice, elemento) → nodo de índice → nodo -i → inodo  : una reducción y fusión graduales de la frase nodo de índice . Según otras versiones, la letra inicial i en el nodo i también puede provenir de las palabras información (información), incore, indirección.

Significado

Los sistemas de archivos que usan inodos tienen varias características sutiles:

Aplicación práctica

Muchos programas utilizados por los administradores de sistemas en el sistema operativo (SO) UNIX suelen utilizar números de inodo para hacer referencia a los archivos. El popular comando o comprobador de disco duro incorporado puede servir como ejemplo aquí, ya que tiene la necesidad de convertir naturalmente los números de inodo hacia y desde las rutas de archivo . Esto se puede aumentar usando un buscador de archivos con la tecla o un comando con la tecla apropiada (que en la mayoría de las plataformas es ). fsckpfiles find-inumls-i

Asignación dinámica de inodos

Uno de los problemas es que los inodos pueden "agotarse". En este caso, no podrá crear un nuevo archivo o directorio en el dispositivo, incluso si hay suficiente espacio libre. En este caso, los archivos existentes se pueden modificar por completo.

Por lo tanto, los sistemas de archivos se pueden dividir en dos grupos

Problema Y2038

Algunos sistemas de archivos basados ​​en inodos son inmunes al problema Y2038 (conocido como tiempo Unix ) para evitar desbordamientos de fechas, pero no todos. Al configurar un servidor, es más importante evitar el uso de tales sistemas de archivos incompatibles con POSIX . La última versión de POSIX admite llamadas de fecha y hora del sistema que son resistentes al problema Y2038 .

Véase también

Literatura