martes, 27 de mayo de 2008

Arbol de directorios en Ubuntu

En GNU/Linux todo son ficheros, esto es, cualquier elemento presente en el sistema es tratado como un fichero desde nuestros archivos personales hasta los dispositivos hardware como la impresora, el ratón, los dispositivos de almacenamiento, etc. Estos ficheros están organizados en lo que se conoce como un Sistema de ficheros. Aunque GNU/Linux es capaz de trabajar con distintos tipos (incluyendo FAT y NTFS) sus sistemas de ficheros nativos son ext2 o ext3 (Ubuntu se instala sobre ext3).

Si desde Nautilus pulsamos en el panel lateral el acceso al sistema de archivos veremos el árbol completo de directorios. En la barra de título de la ventana veremos el símbolo / indicando que estamos en la raíz del árbol. En GNU/Linux esta es la única raíz, no existen letras de unidad para diferentes dispositivos como sí ocurre en otros sistemas, todo (cdrom, disquete, memoria usb, etc) cuelga de aquí.

Esta estructura se encuentra fuertemente jerarquizada para permitir una mayor familiaridad con el sistema para los usuarios, pero sobre todo, para que los programadores puedan ubicar los ficheros de las aplicaciones sin preocuparse de la distribución en la que funcionará finalmente su programa. Las directrices para esta estructura siguen la especificación pública FHS (Filesystem Hierarchy Standard) y sirven de
referencia para todos los desarrolladores. Por lo tanto, la mayoría de los directorios Ubuntu se encuentran siempre en el mismo lugar en cualquier otra distribución GNU/Linux.

No detallaré el contenido de todos ellos, pero si mencionaré algunos para tratar de que se comprenda la lógica del sistema.

- /bin, contiene los ejecutables (binarios) esenciales para el sistema. Si observamos su contenido encontraremos los comandos más básicos. Ahí podremos también guardar nuestros scripts.
- /boot, aquí están los archivos usados por el sistema durante el arranque, incluida la imagen del núcleo.
- /dev, almacena los controladores (device drivers o device files) para el acceso a los dispositivos físicos del disco, como el ratón, las tarjetas, el escáner, etc.
- /var, suele contener información variable, tanto generada por el propio sistema como por los usuarios. Contiene algunos subdirectorios interesantes:
/var/lock, alberga los ficheros de bloqueo para indicar al sistema que un determinado
dispositivo es inaccesible cuando está siendo usado por alguna aplicación.
/var/log, es la bitácora del sistema, puesto que aquí se almacenan los registros
detallados de toda la actividad desarrollada en el transcurso de una sesión de trabajo.
/var/spool/, contiene información preparada para ser transferida, por ejemplo, los
trabajos de impresión o los mensajes de correo.
- /lib, contiene las librerías usadas por diferentes aplicaciones, evitando que cada programa incluya las suyas propias con la consiguiente redundancia de ficheros.
- /etc, es el directorio destinado para almacenar todos los archivos de configuración del sistema.
- /home, contiene el árbol de directorios propio de cada usuario del sistema. Encontraremos un subdirectorio para cada usuario, lo que en el entorno gráfico se llama carpeta personal. Es una buena costumbre situar este directorio en una partición independiente para salvaguardar los datos en caso de catástrofe o para reinstalar completamente un sistema distinto respetando el trabajo anterior.
- /sbin, aloja comandos esenciales de administración del sistema, normalmente reservados al administrador.
- /usr, donde se almacenan las aplicaciones y recursos disponibles para todos los usuarios del sistema. Destacaremos:
/usr/bin, contiene la mayoría de programas y comandos a disposición de los usuarios.
/usr/share, suele contener datos compartidos independientes de la máquina, como la
documentación de los programas o colecciones de imágenes para el escritorio.
- /tmp, es un directorio temporal usado generalmente por las aplicaciones para almacenar algunos ficheros en tiempo de ejecución.
- /media Cuando montamos un CDRom, una memoria usb o un disquete se crea aquí
automáticamente un subdirectorio.
- /media/cdrom0 para la primera unidad de cdrom.
- /media/usbdisk para la memoria usb.
- /media/floppy para el disquete.

Pues bien, con esta pequeña reseña creo que nos quedará un poco más claro para qué se usan cada uno de las carpetas que se encuentran en nuestro disco. Siempre resulta útil esta información para quien comienza en GNU/Linux.

No hay comentarios: