Featured image of post Arborescence FHS et organisation Des fichiers sur Linux

Arborescence FHS et organisation Des fichiers sur Linux

Arborescence FHS

Quand on administre des serveurs Linux au quotidien, naviguer en ligne de commande doit être une seconde nature. Mais comment s’y retrouver sans friction d’une distribution à l’autre (de Debian à RHEL) ? C’est le rôle du FHS Filesystem Hierarchy Standard. Plus qu’une simple structure de dossiers, c’est la convention standardisée qui dicte où chaque fichier et programme doit se trouver. Voici l’antisèche définitive pour comprendre l’architecture de vos serveurs.

DossierDescription
/La racine du système, chaque fichier et répertoire découle d’ici.
/binCommandes essentielles nécessaires au fonctionnement de base du système et utilisables par tous les utilisateurs, comme ls, cp, mv, cat ou sh.Note : sur la plupart des distributions Linux modernes, /bin est souvent un lien symbolique vers /usr/bin.
/bootChargeur d’amorçage, on y retrouve le noyau Linux, l’initramfs, et la configuration du chargeur d’amorçage (Grub).
/devLe matériel et les périphériques physiques (disques, réseau, …) et virtuels (/dev/null, …). Sous Linux, le matériel est représenté sous forme de fichiers.
/etcFichiers de configuration globaux. Note : le nom vient historiquement de et cetera (répertoire fourre-tout des premiers Unix) ; le backronym Editable Text Configuration est une invention postérieure.
->/etc/optLes configurations spécifiques pour les applications installées dans /opt.
/homeDossiers personnels des utilisateurs (ex : /home/jean).
/libBibliothèques partagées et modules du noyau utilisés par les services et applications.Note : comme /bin, souvent un lien symbolique vers /usr/lib sur les distributions modernes.
/mntPoint de montage pour les systèmes de fichiers montés manuellement et temporairement par l’administrateur. mnt est l’abréviation de mount.
/mediaPoint de montage automatique pour les médias amovibles (CD-ROM, clés USB, cartes mémoire, …).
/optLogiciels d’application supplémentaires, réservé aux applications non incluses dans la distribution et installées manuellement pour un usage par tous les utilisateurs.
/procSystème de fichiers virtuel qui permet d’accéder en temps réel aux informations du noyau Linux, des processus en cours d’exécution et à certains paramètres système.
/rootDossier personnel de l’utilisateur root.
/sbinProgrammes d’administration essentiels du système, principalement destinés au superutilisateur (root), comme fsck, mount ou iptables (selon la distribution).Note : souvent un lien symbolique vers /usr/sbin sur les distributions modernes.
/srvDonnées servies par le système pour des services réseau, par exemple les fichiers d’un serveur web, FTP ou de partage de fichiers.
/tmpFichiers temporaires créés par les applications, généralement nettoyés au redémarrage ou périodiquement (via systemd-tmpfiles, parfois monté en tmpfs).
/usrContient la majorité des logiciels, bibliothèques et ressources installés sur le système.
->/usr/binProgrammes et commandes accessibles aux utilisateurs.
->/usr/sbinOutils d’administration système.
->/usr/libBibliothèques et composants nécessaires aux programmes.
->/usr/shareDonnées partagées : documentation, icônes, traductions, etc.
->/usr/localLogiciels installés manuellement par l’administrateur.
/varContient les données variables produites et modifiées pendant le fonctionnement du système.
->/var/logJournaux du système et des applications.
->/var/cacheDonnées de cache utilisées pour accélérer certaines opérations.
->/var/libDonnées persistantes des services et applications.
->/var/tmpFichiers temporaires conservés plus longtemps que ceux de /tmp.
->/var/spoolFiles d’attente de services (impression, courrier, tâches planifiées, etc.).