Norme de la hiérarchie des systèmes de fichiers
La norme la hiérarchie des systèmes de fichiers (FHS : Filesystem Hierarchy Standard) définit les principaux répertoires et leur contenu dans les systèmes d'exploitation GNU/Linux et autres systèmes informatiques de type Unix.
Vue d'ensemble
Le processus de développement d'une hiérarchie standard des systèmes de fichiers a commencé en août 1993 par un effort de restructuration de la structure des fichiers et des répertoires de GNU/Linux. Le standard de système de fichier (FSSTND : Filesystem Standard), une norme de hiérarchie de systèmes de fichiers spécifique au système d'exploitation GNU/Linux, a été publié le 14 février 1994. Les révisions ultérieures ont été publiées le 9 octobre 1994 et le 28 mars 1995.
Au début de 1996, l'objectif de développer une version plus complète de la FSSTND pour traiter non seulement GNU/Linux, mais aussi d'autres systèmes de type Unix, a été adopté avec l'aide des membres de la communauté de développement BSD. En conséquence, un effort concerté a été fait pour se concentrer sur les questions qui étaient générales aux systèmes de type Unix. En reconnaissance de cet élargissement du champ d'application, le nom de la norme a été changé en “Filesystem Hierarchy Standard” ou FHS en abrégé.
Le FHS est géré par le groupe de standards libres (FSG : Free Standards Group), une organisation à but non lucratif composée des principaux fournisseurs de logiciels et de matériel informatique, tels que HP, IBM et Dell. Cependant, la grande majorité des distributions GNU/Linux, y compris celles développées par les membres du FSG, ne suivent pas cette proposition de norme. En particulier, les chemins spécifiquement créés par les éditeurs du FHS, tels que /media/ et /srv/, ne voient pas d'usage répandu. Certains systèmes Unix et GNU/Linux rompent avec le FHS en faveur d'une approche différente, comme Gobo GNU/Linux.
Structure des répertoires
Tous les fichiers et répertoires apparaissent sous le répertoire racine “/”, même s'ils sont stockés sur des périphériques physiques différents.
Une description de la hiérarchie spécifiée dans le FHS :
Répertoire | Description |
---|---|
/etc/opt | Configuration du système spécifique à l'hôte pour les paquets de programmes complémentaires |
/home | Répertoires des utilisateurs |
/lib | Bibliothèques partagées essentielles |
/lib/modules | Modules de noyau chargeables (paquet de noyau monolithique uniquement) |
/lib32 | Bibliothèques partagées essentielles pour les binaires 32 bits (paquets multilib uniquement) |
/media | Point de montage pour les supports amovibles |
/mnt | Point de montage pour un système de fichiers monté temporairement / Point de montage pour le montage d'un système de fichiers temporaire |
/opt | Paquets de logiciels complémentaires |
/proc | Système de fichiers virtuel d'informations sur les noyaux et les processus (monté avec procfs |
/root | Répertoire personnel pour l'utilisateur root |
/run | Données variables sur le temps d'exécution / Données pertinentes pour les processus en cours |
/sbin | Binaires de commande des systèmes essentiels |
/srv | Données relatives aux services fournis par ce système |
/sys | Noyau et système de fichiers virtuels d'informations système (noyau Linux* uniquement ; monté avec sysfs) |
/tmp | Fichiers temporaires (montés avec tmpfs) |
/usr | Hiérarchie secondaire |
/usr/bin | La plupart des binaires de commande utilisateur |
/usr/games | Binaires de jeux et éducation |
/usr/include | Répertoire des fichiers d'inclusion standard / fichiers d'en-tête inclus par les langages de programmation |
/usr/lib | Bibliothèques partagées |
/usr/lib/games | Bibliothèques partagées pour les binaires de jeux |
/usr/lib32 | Bibliothèques partagées pour les binaires 32 bits (paquets Multilib uniquement) |
/usr/lib32/games | Bibliothèques partagées pour les binaires de jeux 32 bits (paquets Multilib uniquement) |
/usr/libexec | Binaires gérés par d'autres programmes |
/usr/local | Hiérarchie locale (pour l'installation personnelle uniquement) |
/usr/local/bin | Binaires d'utilisateurs locaux |
/usr/local/games | Binaires de Jeux et d'éducations locaux |
/usr/local/include | Répertoire local pour les fichiers d'inclusion standard / Fichiers d'en-tête locaux inclus par les langages de programmation |
/usr/local/lib | Bibliothèques locales partagées |
/usr/local/lib/games | Bibliothèques locales partagées pour les binaires de jeux |
/usr/local/lib32 | Bibliothèques locales partagées pour les binaires 32 bits (paquets Multilib uniquement) |
/usr/local/lib32/games | Bibliothèques locales partagées pour les binaires de jeux 32 bits (paquets Multilib uniquement) |
/usr/local/libexec | Binaires locaux gérés par d'autres programmes |
/usr/local/sbin | Binaires du système local |
/usr/local/share | Données indépendantes de l'architecture locale |
/usr/local/share/doc | Documentation diverse locale (dossiers de documentation uniquement) |
/usr/local/share/games | Fichiers de données statiques locaux pour les binaires de jeux |
/usr/local/share/info | Répertoire primaire local pour le système GNU Info (paquet texinfo uniquement) |
/usr/local/share/man | Manuels locaux en ligne / Pages de manuels locaux |
/usr/local/share/misc | Données locales diverses indépendantes de l'architecture |
/usr/local/src | Code source local (paquets de code source uniquement) |
/usr/sbin | Binaires de commande de systèmes non vitaux |
/usr/share | Données indépendantes de l'architecture |
/usr/share/doc | Documentation diverse (dossiers de documentation uniquement) |
/usr/share/games | Fichiers de données statiques pour les binaires de jeux |
/usr/share/info | Répertoire principal du système GNU Info (paquet texinfo uniquement) |
/usr/share/man | Manuels en ligne / Pages de manuel |
/usr/share/misc | Données diverses indépendantes de l'architecture |
/usr/src | Code source (paquets de code source uniquement) |
/var | Données variables |
/var/cache | Application cache data7 |
/var/crash | Plantage du noyau (noyaux Linux* non pris en charge) |
/var/games | Données variables pour les jeux |
/var/lib | Informations variables sur l'état |
/var/lib/misc | Données diverses sur l'état |
/var/local | Données variables pour les binaires locaux |
/var/lock | Verrouiller les fichiers |
/var/log | Fichiers journaux |
/var/mail | Fichiers de la boîte mail des utilisateurs |
/var/opt | Données variables pour les progiciels d'application complémentaires |
/var/spool | Données de spool d'application |
/var/tmp | Fichiers temporaires conservés entre les redémarrages du système |
Remerciements
Cet article du wiki est basé sur le [b]Wiki Debian[/b]. Nous avons peut-être supprimé les bits non-FSDG de ce wiki.