mai 11, 2021

Tour d'horizon :Le Système de Fichier sous Linux (Linux Filesystem)

Tour d'horizon :Le Système de Fichier sous Linux (Linux Filesystem)

Vous rappelez vous cette sensation, la première fois que vous avez utilisé votre tout premier Distro, fraichement installée sur votre fidèle ordinateur ? Un petit tour rapide, l'explorateur de fichier, un clique distrait sur la petite icône marquée "Ordinateur" ... et la, l'interrogation, presque la panique, qu'est-ce-que tous ces dossiers aux noms bizarres ? Où suis-je ?  Finalement,  un recours salvateur a cette petite croix rouge en haut à droite de la fenêtre pour surtout ne rien toucher, ne rien casser ...

Cette première introduction au Système de Fichier utilisé par la grande majorité des distributions Linux est souvent très intimidante, avec ces noms de dossiers obscurs et souvent traitres : usr (absolument pas pour l'utilisateur (user)), bin (pas la poubelle) ... C'est ce petit brouillard mystique que je vous propose de dissiper ici, alors attachez vos ceintures, c'est partie pour un petit tour du Linux Filesystem!!!

/bin

/bin est le répertoire dans lequel vous trouverez certaines des applications (binaries) que vous pouvez utiliser dans votre système. Toutes les applications "basiques" de votre OS se trouvent dans /bin : ls, mv, touch, cd, cp ... (liste, déplacer, créer, se déplacer, copier ...). Attention, d'autres répertoires nommés "bin"sont également présents dans d'autre répertoires.

/boot

Le répertoire /boot contient tous les fichiers nécessaires au démarrage de votre ordinateur. Je vais quand même le préciser ici, mais cela va de soi : NE PAS TOUCHER!!! Ne vous stressez pas non plus inutilement, pour modifier ce répertoire vous devez être super-user et votre OS vous demandera confirmation avant d'effectuer une quelconque modification, les risques d'accident sont donc minimes.

/dev

/dev (device) contiens les fichiers des différents "appareils" connectés à votre ordinateur. Ces fichiers sont créés au démarrage, mais également durant l'utilisation, à chaque fois que vous branchez un nouvel "appareil" : webcam, clé USB ... Vous trouverez également dans /dev un fichier pour chaque disque (hdd, ssd ou NVMe) connecte à votre machine.

/etc

/etc est un répertoire intéressant, hérité des temps ancestraux des premiers systèmes Unix, son nom signifie originellement "et cetera", et avait pour fonction de recueillir tous les fichiers système dont personne ne savait réellement quoi faire avec.
De nos jours, /etc se lit plutôt "Everything To Configure" (tout ce qui se configure), car il contient la grande majorité des fichiers qui configurent le système. Ainsi vous trouverez dans /etc les fichiers configurant le nom de votre système (hostname), les utilisateurs et leurs mots de passe (passwd), le nom de votre machine sur le réseau (hosts) ...

/home

/home contient le dossier personnel de chaque utilisateur ainsi si vous avez dans votre système un utilisateur Bob et un utilisateur Bill, vous trouverez deux dossiers dans /home : /home/bob et /home/bill contenant chacun toutes les données de leur utilisateur respectif. (Documents, Images, Vidéos ...)

/lib

/lib est l'endroit où sont stockées toutes les "librairies"de votre installation, c’est-à-dire des  fichiers contenant différents codes pouvant être utilisés par les applications de votre système.
Il y a d'autres repertoire "lib" dans le système, mais /lib est spécial, car c'est là que résident les modules du kernel, ainsi que les drivers (pilotes) pour vos cartes graphiques, sons ....

/media

/media est l'une des plus récentes additions au système de fichier (la majorité des autres répertoires existent depuis les années 70), c'est là que se montent automatiquement tous les volumes que vous insérez dans votre ordinateur : clé USB, DVD, Disque externe ...

/mnt

/mnt est lui une relique des temps anciens, c'est là que l'utilisateur est censé monter manuellement les volumes qu'ils souhaitent utiliser. (beaucoup moins utilisé de nos jours).

/opt

C'est le répertoire qui gère l'envoie et la réception des colis pour votre système ;)
Plus sérieusement, c'est le répertoire dans lequel se retrouvent parfois les applications que vous installez en compilant manuellement leur code source.

/proc

Comme /dev, /proc est un répertoire virtuel qui contient les informations à propos de votre ordinateur, comme la fréquence de votre Processeur, le pourcentage d'utilisation de votre RAM ... Comme /dev, les fichiers de /proc sont générés au démarrage, ou en cours d'utilisation.

/root

/root est le "dossier personnel" du Super-user (Administrateur) du système. Il est séparé des autres dossiers utilisateurs, car vous n'êtes pas censé aller tripatouiller dedans.

/run

Également une récente adjonction, /run est l'endroit ou les différents processus de votre système leurs données temporaires. Un autre répertoire à Ne Pas Toucher !

/sbin

Meme principe que /bin, mais /sbin contient  les applications uniquement accessibles par le Super-user, telle que mount, iptalbe ... Ces applications sont à utiliser avec la plus grande circonspection afin de prévenir toute catastrophe majeure.

/usr

Originellement, /usr était le répertoire ou l'on trouvait les dossiers personnels des différents utilisateurs d'un système, ceux qui se trouvent aujourd'hui dans /home. De nos jours, /usr contient une masse de différents fichiers et dossiers qui à leur tour contiennent applications, librairies, documentations, wallpapers, icônes, et tout un "tas de trucs" devant être partagé par différents services et applications.
On trouve aussi dans /usr les dossiers /usr/bin /usr/lib /usr/sbin, qui dans certains distros tel que Arch où Manjaro ont effectivement replacé /bin /sbin et /lib.

/srv

/srv comme son nom l'indique contient les données relatives aux serveurs. Si vous faites tourner un Web-serveur par exemple, vos fichiers HTML se trouveront dans /srv/http ou /srv/www ...

/sys

Encore un répertoire virtuel comme /proc et /dev, /sys contient également des informations fournies par les appareils connectés à votre ordinateur, comme la configuration de la luminosité de votre moniteur ...

/tmp

C'est là que sont stockés les fichiers temporaires places là par différentes applications de votre système.

/var

À l'origine /var était l'unique endroit du système où étaient stockées les données dites "variables", principalement les "logs" c’est-à-dire les rapports de tous les événements ayant eu lieu dans votre système. Comme nous l'avons vu avec les différents répertoires virtuels (/proc /dev ...) /var n'est plus si unique aujourd'hui.

En conclusion

J'espère que ce rapide tour d'horizon a quelque peu éclairé votre lanterne et démystifié un tant soit peu cette entité si étrange qu'est le système de fichier de votre système d'exploitation préféré.