1

Topic: FHS (Filesystem Hierarchy Standard)

La norme 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 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 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 Free Standards Group, 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 :

/bin                    --> Binaires de commande utilisateur essentiels.
/boot                  --> Fichiers statiques du chargeur d’amorçage
/dev                   --> Fichiers de périphérique
/etc                    --> Configuration du système spécifique à l'hôte
/etc/local           --> Configuration du système spécifique à l'hôte pour les binaires locaux
/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 Wiki Debian. Nous avons peut-être supprimé les bits non-FSDG de ce wiki.

2

Re: FHS (Filesystem Hierarchy Standard)

Merci beaucoup, Minzord pour cette excellente traduction !!

Je l'ai ajoutée au wiki, en adaptant un peu le formatage smile
Elle est visible ici : https://wiki.hyperbola.info/doku.php?id=fr:main:fhs

Merci encore, et n'hésite pas à soumettre d'autres traductions ou à poser des questions dans cette catégorie du forum.

3

Re: FHS (Filesystem Hierarchy Standard)

Merci smile