This is an old revision of the document!


… (WIP)

Filesystem Hierarchy Standard

O Filesystem Hierarchy Standard (FHS) define os principais diretórios e conteúdos num sistema operacional GNU/Linux ou qualquer outro sistema baseado no Unix.

Síntese

O processo de desenvolver um estandarte de herarquia de sistema de arquivo começou em Agosto de 1993 com um esforço de organizar a estrutura de ficheiros e diretórios do sistema operativo GNU/Linux. O FSSTND (Filesystem Standard), um estandarte de hierarquia de sistema de arquivo especifico para o sistema operativo GNU/Linux, foi lançado em 14 de Fevreiro de 1994. Revisões subsequentes foram lancadas a 9 de Outubro de 1994 e a 28 de Marco de 1995.

No inicio de 1996, o objetivo de desenvolver uma versão FSSTND mais completa, com visto a nao abranger somente GNU/Linux, mas também outros sistemas operativos Unix, foi adotada com a ajuda de membros da comunidade de desenvolvimento dos BSDs. Por consequência, um esforço comum foi criado para responder aos problemas de sistemas Unix, como um todo. Reconhecendo o maior abrangimento deste estandarte, apos o lançamento desta nova versão o nome do mesmo foi alterado para Filesystem Hierarchy Standard (ou “FHS”).

O FHS e mantido pelo Free Standards Group, uma organização sem fins lucrativos, composta pelos os maiores fabricantes de hardware e software, como HP, IBM and Dell. Ainda que a vasta maioria de distribuições GNU/Linux,incluindo aquelas que desenvolvidas por membros Free Standards Group, continuam não seguindo o estandarte proposto. Em particular, os diretórios criados, como /media/ and /svr/, que nao obstante verificam um baixo nível de adoção. Alguns sistemas operativos Unix quebram o estandarte FHS, em prol de uma abordagem diferente, como e o caso no sistema operativo GNU/Linux Gobo.

Estrutura de Diretórios

Todos os ficheiros e diretórios apresentam-se sob o diretório root “/”, mesmo que armazenado num dispositivo diferente.

Descrição da hierarquia especifica no FHS:

Directory Description
/bin Essential user command binaries.
/boot Static files of the boot loader
/dev Device files
/etc Host-specific system configuration
/etc/local Host-specific system configuration for Local binaries
/etc/opt Host-specific system configuration for Add-on application software packages
/home User home directories
/lib Essential shared libraries
/lib/modules Loadable kernel modules (monolitic kernel package only)
/lib32 Essential shared libraries for 32bit binaries (multilib packages only)
/media Mount point for removable media
/mnt Mount point for temporarily mounted filesystem / Mount point for mounting a filesystem temporary
/opt Add-on application software packages
/proc Kernel and process information virtual filesystem (mounted with procfs)
/root Home directory for the root user
/run Run-time variable data / Data relevant to running processes
/sbin Essential system command binaries
/srv Data for services provided by this system
/sys Kernel and system information virtual filesystem (Linux* kernel only; mounted with sysfs)
/tmp Temporary files (mounted with tmpfs)
/usr Secondary hierarchy
/usr/bin Most user command binaries
/usr/games Games and educational binaries
/usr/include Directory for standard include files / Header files included by program languages
/usr/lib Shared libraries
/usr/lib/games Shared libraries for game binaries
/usr/lib32 Shared libraries for 32bit binaries (multilib packages only)
/usr/lib32/games Shared libraries for 32bit game binaries (multilib packages only)
/usr/libexec Binaries run by other programs
/usr/local Local hierarchy (for personal installation only)
/usr/local/bin Local user binaries
/usr/local/games Local games and educational binaries
/usr/local/include Local directory for standard include files / Local header files included by program languages
/usr/local/lib Local shared libraries
/usr/local/lib/games Local shared libraries for game binaries
/usr/local/lib32 Local shared libraries for 32bit binaries (multilib packages only)
/usr/local/lib32/games Local shared libraries for 32bit game binaries (multilib packages only)
/usr/local/libexec Local binaries run by other programs
/usr/local/sbin Local system binaries
/usr/local/share Local architecture-independent data
/usr/local/share/doc Local miscellaneous documentation (documentation packages only)
/usr/local/share/games Local static data files for game binaries
/usr/local/share/info Local primary directory for GNU Info system (texinfo package only)
/usr/local/share/man Local online manuals / Local manual pages
/usr/local/share/misc Local miscellaneous architecture-independent data
/usr/local/src Local source code (source code packages only)
/usr/sbin Non-vital system command binaries
/usr/share Architecture-independent data
/usr/share/doc Miscellaneous documentation (documentation packages only)
/usr/share/games Static data files for game binaries
/usr/share/info Primary directory for GNU Info system (texinfo package only)
/usr/share/man Online manuals / Manual pages
/usr/share/misc Miscellaneous architecture-independent data
/usr/src Source code (source code packages only)
/var Variable data
/var/cache Application cache data
/var/crash Kernel crash dumps (Linux* kernels not supported)
/var/games Variable game data
/var/lib Variable state information
/var/lib/misc Miscellaneous state data
/var/local Variable data for Local binaries
/var/lock Lock files
/var/log Log files
/var/mail User mailbox files
/var/opt Variable data for Add-on application software packages
/var/spool Application spool data
/var/tmp Temporary files preserved between system reboots

Créditos

Este Artigo de wiki e baseado na DebianWiki. Nos poderemos ter removido partes não-FSDG deste.