GNU/Linux >> Tutoriales Linux >  >> Linux

volcado octal del directorio

Cada tipo de sistema de archivos almacena directorios de una manera diferente. Hay muchos tipos de sistemas de archivos diferentes con diferentes características:buenos para un alto rendimiento, buenos para alta concurrencia, buenos para entornos de memoria limitada, diferentes compromisos entre el rendimiento de lectura y escritura, entre complejidad y estabilidad, etc. Su libro describe un sistema de archivos utilizado en los primeros sistemas Unix. Los sistemas modernos admiten muchos sistemas de archivos diferentes.

Las primeras versiones de Unix tenían mucha manipulación del sistema de archivos fuera del kernel. Por ejemplo, mkdir y rmdir funcionó editando algunas estructuras de datos del sistema de archivos directamente. Esto fue reemplazado rápidamente por una interfaz de acceso a directorio uniforme, el opendir /readdir /closedir family, que permitía que las aplicaciones manipularan directorios sin tener que saber cómo se implementaron bajo el capó.

La razón por la que no puede leer el contenido de los directorios en Linux no es porque deban ocultarse, sino porque las funciones existen solo si se implementan, y esta función no tiene sentido y tiene un costo. Dado que el formato depende del sistema de archivos, es una característica bastante inútil:un programa no puede saber el formato de lo que está leyendo. Tampoco es una característica completamente trivial para admitir:algunos sistemas de archivos organizan directorios de manera que no son solo una secuencia de bytes, por ejemplo, pueden organizarse como un árbol B. Algunas variantes de Unix aún permiten que las aplicaciones lean el contenido del directorio directamente, por compatibilidad con versiones anteriores, pero Linux no tiene esta función (y nunca la tuvo, que yo recuerde, ya era una función obsoleta a principios de la década de 1990).


Sí, pero:

  • los sistemas modernos almacenan los nombres de archivo de manera diferente. En Unix original, los nombres estaban limitados a 14 caracteres, con 2 bytes para inode.
  • la interfaz al directorio es a través de funciones opendir , readdir , closedir en lugar de open , read , close para reflejar el cambio en la organización.
  • debido a que nadie tiene una necesidad práctica de leer entradas de directorio de 16 bytes, los diseñadores omitieron la capacidad de leer archivos de directorio sin formato de programas que están diseñados para leer archivos .

Lectura adicional:

  • Cómo:programación en C con directorios en Linux
  • pregunta sobre opendir, readdir, etc., hilo de Usenet en 1990 discutiendo el moderno implementación de opendir , etc.

Linux
  1. ¿Entendiendo si?

  2. ¿Averigüe de qué sistema de archivos forma parte un archivo o directorio?

  3. ¿Problema del sistema de archivos de solo lectura?

  4. Ejemplos de comandos OD de Linux (volcado octal)

  5. directorio de volcado del núcleo configurable por proceso

Comando Du en Linux

Comando mv en Linux

Cómo leer un archivo con espacios en Linux

Una guía para principiantes para navegar por el sistema de archivos de Linux

Cómo hacer una copia de seguridad del sistema de archivos de Linux usando el comando dump

Bit de ejecución vs lectura. ¿Cómo funcionan los permisos de directorio en Linux?