Directorios
Los directorios son una división lógica para el almacenamiento, pudiendo contener archivos y otros directorios (subdirectorios).
Constituyen una estructura jerárquica en forma de árbol. En un determinado momento, un usuario siempre se encuentra en un determinado directorio, y las operaciones que se realizan afectan a éste.
Cada sistema de archivos tiene un directorio especial denominado "raíz", el cual contiene al resto de directorios y archivos. Las rutas que no parten de la raíz, se denominan rutas "relativas".
La ruta absoluta de un archivo es la ruta completa desde la raíz hasta el archivo en cuestión.
En Windows, cuando se especifica una ruta, cada directorio se separa mediante el carácter "\", mientras que en Linux, es el carácter "/".
Los sistemas de archivos empleados en Windows y Linux, contienen en cada directorio, dos entradas especiales "." y "..", las cuales hacen referencia al propio directorio, y al padre, respectivamente.
En cuanto a los atributos, también son similares a los archivos, y dependiendo del sistema de archivos empleado se tienen los siguientes:
- H: oculto.
- R: sólo lectura.
- A: modificado.
- Fecha: fecha de creación del directorio.
- Hora: hora de creación del directorio.
Algunos sistemas operativos como Linux utilizan también atributos para identificar la pertenencia del directorio a un usuario o grupo, así como los permisos correspondientes.
En Windows, sin embargo, al igual que ocurría con los archivos hay atributos que indican si el directorio está comprimido o cifrado.
Las normas para nombrar los directorios coinciden con las correspondientes a los archivos.
Las operaciones comunes a la hora de manejar un directorio son:
- Crear: se requiere nombre. Como normas, no puede llamarse igual que otro archivo ubicado en el mismo directorio. No debe incluir algunos caracteres especiales.
- Ejecutar/desplazarse:acceder al directorio (entrar)/recorrer el árbol de directorios.
- Copiar / Mover / Renombrar
- Eliminar: borrar un directorio y sus subdirectorios. Hay que prestar especial atención ya que la eliminación de un directorio, supone la eliminación de todos los archivos contenidos en cada uno de los subdirectorios.
Ejemplos de directorios en sistemas Unix y Windows:
Directorio Raíz: aquel que contiene al resto del sistema de archivos. En Linux es explícito (/), en Windows está escondido detrás de las unidades lógicas (C/, D/, …)
Directorio de trabajo: directorio en el cual se esta ejecutando un proceso, como por ejemplo el interprete de comandos. Este se simboliza con un punto(.).
Ruta absoluta: ubicación de un archivo o directorio indicando su posición explicitando todos los directorios desde el directorio raíz al elemento. Ej: /usr/local/nachos/code/build.linux/nachos.
Ruta relativa: ubicación de un archivo o directorio indicando su posición respecto al directorio de trabajo actual. Ej: ../build.linux/nachos
Directorio Padre: aquel en el cual es contenido un directorio. Se simboliza con punto doble (..).
Cuando los archivos se establecen sobre un directorio, se define el acceso de un usuario o grupo a dicho directorio, así como a los archivos que contiene.
Al igual que ocurre con los archivos, la asignación de permisos corresponde al administrador, al propietario o a aquellos usuarios y grupos designados por éstos.
Herencia: mecanismo por el cual los archivos y subdirectorios de un directorio padre, modifican sus permisos de forma dinámica cuando son modificados los permisos del directorio padre.
Los sistemas de archivos NTFS contemplan mecanismos de herencia.