Jerarquía de directorios

De WikiNux

Contenido

Introducción

Los sistemas GNU/LINUX, y por tanto VENENUX, almacenan los ficheros de forma jerárquica, como árbol de directorios. En este árbol existe un directorio raíz ("''root''"), representado por el carácter “/” y el resto de directorios y ficheros "cuelgan" de él. Para tener una mejor idea se puede pensar en la estructura de archivos de GNU/LINUX como un mueble clasificador de documentos en la oficina: las carpetas representarían los ficheros, los que contienen la información y las gavetas o compartimientos serían los directorios que a su vez pueden contener mas compartimientos (directorios) o carpetas (ficheros).

Un directorio es representado de izquierda a derecha, es decir, desde la raíz de la jerarquía “/”. Un ejemplo sería el directorio /tmp/stuck, esto se trata del directorio /stuck, que esta dentro del directorio /tmp que cuelga del directorio raíz “/”.


Características

Las características mas destacadas de un árbol de directorios GNU/LINUX, son:

  • Contar con un pequeño número de directorios donde almacenar cada fichero
  • Cada usuario posee un directorio propio donde almacenar sus ficheros personales
  • La estructura impide el duplicado de un mismo fichero; por ejemplo, dos aplicaciones que utilicen la misma biblioteca ("library" en inglés) no tendrían uno para cada uno, si no que utilizan una sola almacenada en el directorio “/lib”.
  • Mayor seguridad, puesto que algunos directorios únicamente son accesibles mediante el superusuario” o “root”.
  • Para que un fichero pueda ejecutarse desde cualquier directorio, este debe ser copiado a la ruta definida en el parámetro PATH del comando env. Por defecto en VENENUX es: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Árbol de Directorios

Cabe destacar una informacion importante, estos directorios tienen un nivel de acceso, para algunos usuarios ciertos directorios estan vetados, esto es producto de la fuerte seguridad de VENENUX GNU/Linux, muy distinta a los conceptos de otras distribuciones mas amigables y flexibles pero menos seguras.

Un típico árbol de directorios en VENENUX es como sigue:

/
|-- bin/
|-- boot/
|-- cdrom -> /media/cdrom/
|-- dev/
|-- etc/
|-- home/
|-- initrd.img -> boot/initrd.img-2.6.30-2-686
|-- lib/
|-- lost+found/
|-- media/
|-- mnt/
|-- none/
|-- opt/
|-- proc/
|-- root/
|-- sbin/
|-- selinux/
|-- srv/
|-- sys/
|-- tmp/
|-- usr/
|-- var/
|-- vmlinuz -> boot/vmlinuz-2.6.30-2-686


El Directorio “/”

Es el directorio de mayor jerarquía, y es el directorio base desde donde se accede a los restantes directorios y ficheros, su contenido por lo general esta vacío de ficheros , excepto los habituales “initrd.img” y “vmlinuz” que arrancan el núcleo al inicio del equipo.


/bin

Contiene los archivos ejecutables esenciales del sistema para la consola de texto, estos ejecutables suelen ser ls, grep, mkdir, cat, mount, cp, mv y rm.


/boot

Almacena los archivos System.map-XXXX, config-XXXX, initrd.img-XXXX, vmlinuz-XXXX, necesarios para arrancar el núcleo del sistema. Si se instala mas de un núcleo, existirán tantos ficheros (como los anteriores) como núcleos, y si se tiene instalado “grub” (como en VENENUX), sus ficheros de configuración también se consiguen en este directorio.


/cdrom -> /media/cdrom/

En este directorio es donde se montan los lectores o grabadores de CD/DVD para acceder a su contenido.


/dev

Este directorio contiene los ficheros para acceder a los distintos dispositivos y recursos del sistema, estos pueden ser: Discos duros, puertos paralelos, puertos series, Dependiendo de los componentes que posea el equipo, existiran unos ficheros u otros.

Algunos de los mas frecuentes son :


/dev/fd,

Para unidades de disquets

/dev/sd,

Para unidades de almacenamiento masivo (pata, sata)

/dev/ttyS,

Puertos serie

/dev/null,

Este fichero se utiliza para redireccionar todo lo que se quiera borrar, como ficheros o mensajes. Cada nombre de fichero posee un número en su final que indica el número de dispositivo, si existe mas de uno del mismo tipo.


/etc

Contiene todos los ficheros de configuración del sistema, como ficheros de servidores, seguridad, y contraseñas. Un ejemplo es el fichero /etc/X11, que guarda la configuración del servidor gráfico.


/home

Este directorio posee todos los directorios personales de cada uno de los usuarios en el sistema, excepto los del usuario “root”. Cada usuario posee un directorio con su mismo nombre, donde se guardan sus ficheros personales y la configuración de las aplicaciones que ha ejecutado.


/lib

Este directorio contiene el conjunto de bibliotecas ("libraries" en inglés) utilizadas por una o mas aplicaciones. Gracias a este directorio muchas aplicaciones pueden compartir una biblioteca ("library" en inglés) sin que sea necesario instalarla en mas de una ocasión, por lo que sus ejecutables son menores y se reduce el espacio ocupado en disco.


/lost+found

Almacena los ficheros eliminados por un error en el sistema o un apagado involuntario del equipo.


/media

Este directorio contiene los subdirectorios utilizados como puntos de montaje para los medios (media) removibles, tales como memorias USB ("pendrives"), unidades de discos externas por USB y disco o particiones adicionales.


/mnt

Este directorio está reservado para sistemas de ficheros montados temporalmente, tales como montajes de NFS.


/none

/opt

Directorio destinado al almacenamiento de aplicaciones que no son nativas de VENENUX. Esto puede ser una instalación de “xampp” etc.


/proc

Sistema virtual de ficheros, no ocupa espacio físico en el disco duro puesto que reside en la memoria. Este contiene ficheros que muestran los procesos que se están ejecutando e información de los dispositivos de hardware instalados. Algunos de estos ficheros son : “version”, “meminfo”, “cpuinfo”, etc.


/root

Este es el directorio personal del superusuario o root, almacena ficheros similares al del resto de los usuarios.


/sbin

Contiene ficheros binarios, solo pueden ser ejecutados por el superusuario o usuarios con permisos especiales, estos ficheros son herramientas de administración del sistema. Algunas de las disponibles son: fsck, hdparm, modprobe, mkfs, iptables, etc.


/srv

Este directorio le proporciona a los usuarios la ubicación de los archivos de datos para un servicio en particular, tal como FTP, WWW o CVS. Los datos que sólo pertenecen a un usuario específico deben de ir en el directorio /home de cada usuario. En VENENUX, por defecto lo usa CVS


/sys

Este directorio utiliza el sistema de ficheros virtual sysfs específico al kernel 2.6. Cuenta con el soporte más extendido para los dispositivos de conexión en caliente ("hot plug") en el kernel 2.6, el directorio /sys contiene información similar a la que se encuentra en /proc/, pero muestra una vista jerárquica de la información de dispositivos específica con relación a los dispositivos de conexión en caliente.


/tmp

Es el directorio temporal, tiene como finalidad para las aplicaciones, copiar ficheros que únicamente se necesitan en ejecución o para realizar pruebas de copia, comandos o instalación de aplicaciones. Este contenido es borrado en el arranque de manera automática.


/usr

Este directorio almacena los restantes ficheros del sistema, como los ejecutables, configuración o bibliotecas ("libraries" en inglés). Aunque las aplicaciones que contiene no son necesarias para el correcto funcionamiento del sistema, puesto que no almacena ningún fichero critico, aunque si lo son para las restantes aplicaciones. Algunos de estos directorios que se pueden encontrar son:


/usr/bin,

Ejecutables de las aplicaciones

/usr/games,

Ejecutables de los juegos instalados

/usr/include,

Ficheros de cabeceras para los distintos compiladores

/usr/lib,

Bibliotecas ("libraries" en inglés) utilizadas por las aplicaciones

/usr/lib64,

Bibliotecas ("libraries" en inglés) utilizadas por las aplicaciones de 64bits

/usr/local,

Funcionamiento similar a /us, almacena aplicaciones extras, tiene la misma utilidad que /opt pero mantiene un mayor orden en los ficheros

/usr/man,

Contiene la documentación de uso y configuración de las aplicaciones

/usr/sbin,

Contiene aplicaciones adicionales para la administración del sistema

/usr/share,

Contiene los ficheros de ayuda de las aplicaciones y elementos adicionales des estas como sus iconos o ficheros de traducciones

/usr/src,

Contiene el código fuente de las aplicaciones

/usr/X11R6,

Contiene ficheros del servidor gráfico


/var

Este directorio contiene los directorios y ficheros que modifican continuamente su contenido, como las cache de las aplicaciones, mensajes internos del sistema, como datos de puntuaciones en los juegos. Algunos de los que se pueden encontrar son:


/var/log,

Contiene información adicional de las aplicaciones, como estado de servidores o eventos producidos en el sistema

/var/mail,

Contiene mensajes internos de los usuarios del sistema

/var/www,

Contiene ficheros disponibles de un servidor web instalado. (ejemplo Apache)


Continua ... 22-04-2010

Herramientas personales