0

SUSE: Sistema de archivos

Este artículo se puede aplicar a casi todas las distribuciones de Linux, con él pretendo que los usuarios conozcan muy por encima las diferencias del sistema de archivos entre Linux y otros sistemas operativos no basados en POSIX.

En *NIX todo se trata como archivos, desde los dispositivos hasta los procesos, todo se encuentra en el sistema de archivos.

En *NIX no todos los directorios son reales, existen directorios viruales.

Unos ejemplos de estos directorios son: /dev, /proc y /sys. Estos directorios contienen ficheros que están en memoria:

  • /dev: contiene ficheros para acceder a nuestros dispositivos (usb, ps2, mouse, modems, …).
  • /proc: contiene ficheros con información del ordenador, las características de la CPU, de los USB, los procesos activos del sistema, etc. Mirar los ficheros: /proc/cpuinfo y /proc/pci.
  • /sys: parecido al /proc pero con otra estructura de directorios, el /proc esta “deprecated” y se recomienda reemplazarlo por sys.

Al estar todo orientado al sistema de archivos, cuando insertamos un CD el sistema lo monta (manuálmente o automáticamente) en un directorio y si accedemos a él, realmente estaremos accediendo a la unidad de CDROM. Pues esto ocurre con todo, ya sea un CD, una cámara de fotos, un USB STICK, etc.

Para saber que tenemos montado en el sistema se usa el comando mount que podéis ejecutar desde un terminal de texto; también podréis ver el fichero “/etc/fstab”.

Esta características aporta grandes ventajas frente a otros sistemas:

  • Si quisieramos hacer un programa que escribiera en un USB bastaría (de forma resumida) con abrir el dispositivo (OPEN), leer y escribir en él (READ, WRITE) y, finalmente cerrarlo (CLOSE). Lo trataríamos como si fuera un fichero de texto.
  • Podríamos tener el sistema operativo repartido en distintas particiones, ya comentaré en otro artículo la utilidad de esto.
  • Se puede tener un directorio montado que pertenezca a otra máquina de nuestra red, de esta forma podríamos navegar por el otro ordenador como si estuvíeramos en la misma máquina.

Por último quiero citar brevemente la estructura de directorios de Linux:

  • /: directorio principal, del que cuelga el resto del sistema.
  • /bin, /sbin, /opt, /lib/, /usr: contienen librerías, ejecutables de los programas instalados.
  • /boot: directorio con la información necesaria para arrancar el sistema operativo.
  • /dev: dispositivos de nuestro sistema.
  • /etc: archivos de configuración del sistema.
  • /home: contiene los directorios y archivos de los usuarios del sistema.
  • /proc y /sys: contiene información de nuestro sistema.
  • /tmp: direcotiro que contiene archivos temporales.
  • /var: contiene las colas de impresión y el registro de los logs.
  • /usr/share/doc: contiene documentación de los programas instalados.