Filesystem Hierarchy Standard

El Filesystem Hierarchy Standard (FHS) define los directorios principales y sus contenidos en GNU/Linux y otros sistemas operativos de computadora similares a Unix.

Visión general

El proceso de desarrollo de una jerarquía estándar de FileSystem comenzó en agosto de 1993 con un esfuerzo por reestructurar la estructura de archivos y directorios de GNU/Linux. El FSSTND (FilesystemStandard), un estándar de jerarquía del sistema de archivos específico del sistema operativo GNU/Linux, se lanzó el 14 de febrero de 1994. Las revisiones posteriores se publicaron el 9 de octubre de 1994 y el 28 de marzo de 1995.

A principios de 1996, el objetivo de desarrollar una versión más completa de FSSTND para abordar no solo GNU/Linux, sino otros sistemas similares a Unix se adoptó con la ayuda de miembros de la comunidad de desarrollo de BSD. Como resultado, se realizó un esfuerzo concertado para centrarse en los problemas que eran generales para los sistemas similares a Unix. En reconocimiento de esta ampliación del alcance, el nombre de la norma se cambió a Estándar de jerarquía del sistema de archivos o FHS para abreviar.

El FHS es mantenido por el Free Standards Group, una organización sin fines de lucro formada por los principales proveedores de software y hardware, como HP, IBM y Dell. Sin embargo, la gran mayoría de las distribuciones de GNU/Linux, incluidas las desarrolladas por miembros del Free Standards Group, no siguen esta norma propuesta. En particular, las rutas creadas específicamente por los editores de FHS, como /media/ y /srv/, no ven un uso generalizado. Algunos sistemas Unix y GNU/Linux rompen con FHS en favor de un enfoque diferente, como en Gobo GNU/Linux.

Estructura de directorios

Todos los archivos y directorios aparecen bajo el directorio_raíz “/”, incluso si están almacenados en diferentes dispositivos físicos.

Una descripción de la jerarquía especificada en el FHS:

Directorio Descripción
/bin Binarios esenciales de los comandos para el usuario
/boot Archivos estáticos del gestor de arranque
/dev Archivos del dispositivo
/etc Configuración hospedera-especifica del sistema
/etc/local Configuración hospedera-especifica del sistema para binarios Locales
/etc/opt Configuración hospedera-especifica del sistema para paquetes de software adicional
/home Directorios de usuarios
/kern Sistema de archivos virtual de información del núcleo y del sistema (solo el núcleo HyperBK; montado con kernfs)
/lib Librerias esenciales compartidas
/lib/modules Módulos de núcleos cargables (solo paquete de núcleo monolítico)
/lib32 Librerias esenciales compartidas para binarios de 32 bits (solo paquetes multilib)
/media Punto de montaje para medios extraíbles
/mnt Punto de montaje para el sistema de archivos montado temporalmente / Punto de montaje para el montaje de un sistema de archivos temporal
/opt Paquetes de software de aplicación adicional
/proc Sistema de archivos virtual de información de proceso y núcleo (montado con procfs)
/root Directorio de inicio para el usuario root
/run Datos variables en tiempo de ejecución / Datos relevantes para procesos en ejecución
/sbin Binarios esenciales de los comandos
/srv Datos por servicios prestados por este sistema
/sys Sistema de archivos virtual de información del sistema y del núcleo (solo el núcleo Linux*; montado con sysfs)
/tmp Archivos temporales (montados con tmpfs)
/usr Jerarquía secundaria
/usr/bin La mayoría de los binarios de comando de usuario
/usr/games Juegos y binarios educativos
/usr/include Directorio para archivos de inclusión estándar / archivos de encabezado incluidos por programa de lemguaje
/usr/lib Librerias compartidas
/usr/lib/games Librerias compartidas para binarios de juegos.
/usr/lib32 Librerias compartidas para binarios de 32 bits (solo paquetes multilib)
/usr/lib32/games Librerias compartidas para binarios de juegos de 32 bits (solo paquetes multilib)
/usr/libexec Binarios ejecutados por otros programas
/usr/local Jerarquía local (solo para instalación personal)
/usr/local/bin Binarios locales del usuario
/usr/local/games Juegos locales y binarios educativos
/usr/local/include Directorio local para archivos de inclusión estándar / archivos de encabezado locales incluidos por los programas de lenguajes
/usr/local/lib Librerias compartidas locales
/usr/local/lib/games Librerias locales compartidas para binarios de juegos
/usr/local/lib32 Librerias locales compartidas para binarios de 32 bits (solo paquetes multilib)
/usr/local/lib32/games Librerias locales compartidas para binarios de juegos de 32 bits (solo paquetes multilib)
/usr/local/libexec Binarios locales ejecutados por otros programas
/usr/local/sbin Binarios del sistema local
/usr/local/share Datos independientes de la arquitectura local
/usr/local/share/doc Documentación miscelánea local (paquetes de documentación solamente)
/usr/local/share/games Archivos de datos estáticos locales para juegos binarios
/usr/local/share/info Directorio primario local para el sistema de información GNU (solo paquete texinfo)
/usr/local/share/man Manuales locales en línea / Páginas de manuales locales
/usr/local/share/misc Datos independientes de arquitectura miscelánea local
/usr/local/src Código fuente local (solo paquetes de código fuente)
/usr/sbin Binarios de comandos de sistemas no vitales
/usr/share Datos independientes de la arquitectura
/usr/share/doc Documentación miscelánea (paquetes de documentación solamente)
/usr/share/games Archivos de datos estáticos para binarios de juegos
/usr/share/info Directorio primario para el sistema de información GNU (solo paquete texinfo)
/usr/share/man Manuales online / Páginas de manual
/usr/share/misc Arquitectura independiente de datos varios
/usr/src Código fuente (solo paquetes de código fuente)
/var Datos variables
/var/cache Datos de caché de aplicaciones
/var/crash Volcados de fallos del núcleo (núcleos de Linux* no soportados)
/var/games Datos variables del juego
/var/lib Información de estado variable
/var/lib/misc Datos de estado misceláneos
/var/local Datos variables para binarios locales
/var/lock Archivos de bloqueo
/var/log Archivos de registro
/var/mail Archivos de buzón de usuario
/var/opt Datos variables para paquetes de software de aplicaciones complementarias
/var/spool Datos de la cola de aplicación
/var/tmp Archivos temporales conservados entre reinicios del sistema

Créditos

Este artículo de wiki está basado en DebianWiki. Es posible que hayamos eliminado bits que no sean FSDG.