====== 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 : **F**ile**s**ystem **St**a**n**dar**d**), 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 : {| border="1" style="sortable; text-align: left; width: 100%; border-collapse:collapse; color:#262627; background-color:#f8f9fa;" ! style="background-color:#eaecf0" |Répertoire ! style="background-color:#eaecf0" |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.