Hiérarchie des répertoires Linux

To the non-french speaker, note that you can translate the articles using the Google Trad widget situated at the bottom of all pages.


Pour bien commencer sur Linux (et toutes les autres distributions Unix), il est important de bien comprendre la hiérarchie des répertoires. Pour ma part j’utilise la distribution ParrotOS qui est basé sur Debian.

Avant toute chose : sur Unix tout est un fichier. Votre CV écrit sous LibreOffice est un fichier, votre lecteur CD est aussi un fichier. Dans toute hiérarchie il y a un début : une racine. Sous Linux il y en a une seul qui est désigné par :   » / « .

Pour s’y rendre rien de plus simple, vous ouvrez un terminal puis vous lancez la commande suivante :

cd /

Maintenant si vous voulez voir le contenu de la racine il vous suffit de lancer la commande ls :

contenuracine.png

Comme vous pouvez le constater il y a pas mal de choses. Chacun de ces éléments est en fait un répertoire qui contient lui aussi des répertoires ainsi que des fichiers. Mais ce qu’il faut retenir, c’est que chaque répertoire à une utilité bien définie :

/bin : on y trouve une partie des programmes (binaries) utilisables par les utilisateurs. Regardons ce qu’il contient :

bin.png

On y trouve les commandes dd, gzip, cp, ls, ln etc… C’est à dire tous les petits utilitaires installés que l’on pourra utiliser en ligne de commande.

/boot : dans le répertoire boot se trouve tous les fichiers nécessaires au…. boot du système d’exploitation. C’est là que sont stockés les fichiers de configuration du grub par exemple. Du coup si vous voulez exploser votre distribution vous avez juste besoin de supprimer le répertoire boot 😉😉 !

/dev : comme je vous l’ai dit plus haut, tout est considéré comme un fichier pour Linux. Même votre disque dur, votre lecteur CD etc… Tous les fichiers en rapport avec la configuration de ces matériels se trouvent dans ce répertoire.

/etc : probablement l’un des répertoires les plus riches en utilisation, vous y trouverez tous les fichiers de configuration de vos outils. Par exemple les fichiers de configuration de votre serveur SSH :

etcssh.png

/home : ce répertoire contient les espaces de travail personnels des utilisateurs. Sur ma machine j’ai un compte utilisateur standard qui s’appelle defte. Si je fais un ls du répertoire home je vais trouver le répertoire personnel de defte.  Et si je fais un ls de ce répertoire je vais trouver le répertoire Dekstop, Téléchargements, Images etc :

lshomedefte.png

lib, lib32, lib64 et libx32 : sont les répertoires qui contiennent les librairies utilisées par l’ensemble des programmes installées sur ma machine (l’équivalent des DLL’s Windows).

/lost+found : est un répertoire un peu particulier puisqu’il n’y a rien dedans… Du moins tant que votre système ne crash pas. Si cela venait à arriver, il vous faudrait utiliser l’utilitaire fsck qui vous permettrait de récupérer une partie de vos données. Ces données seront stockées dans ce répertoire.

/media : dans le répertoire media vous trouverez vos périphériques USB (entre autres) :

mediadd.png

84863… C’est le nom de mon disque dur externe, oui je sais il faudrait que je le renomme eheh, on verra ça plus tard (ou pas)…

/mnt : on utilise ce répertoire quand on veut monter temporairement un système de fichier. A vrai dire je m’en suis pas beaucoup servi encore mais ça ne saurait tarder.

/opt : historiquement ce répertoire servait à stocker les programmes optionnels. Maintenant on s’en sert surtout pour stocker les add-on, les plugins etc.

/proc : le répertoire /proc contient toutes les informations liées au système. Pour chaque processus actifs vous trouverez un dossier correspondant au PID du processus dans le répertoire /proc.

Un petit exemple s’impose. Tout d’abord je vous montre les processus actifs sur ma machine via la commande suivante :

top

top.png

Si on prend le processus mate-terminal, on voit que son PID (son identifiant de processus) est 1695. Si je me rends dans /opt, je vais effectivement trouver un dossier nommé 1695 dans lequel je vais avoir des informations relatives au processus mate-terminal :

pid.png

/root : ce répertoire est en fait l’espace personnel de travail du compte root. On y trouve plus ou moins la même chose que dans le répertoire /home/defte c’est à dire un répertoire Desktop, Downloads etc…

/run : beh celui-là je sais pas trop en fait. Voilà ce que j’ai trouvé sur le web :

Similar to the existing /var/run/ directory, the new directory is designed to allow applications to store the data they require in order to operate. This includes process IDs, socket information, lock files and other data which is required at run-time but can’t be stored in /tmp/ because programs such as tmpwatch could potentially delete it from there.

Du coup ça serait un répertoire dans lequel on stocke des données utilisées par des programmes.

/sbin : contient les « super binaries », d’autres programmes qui sont cette fois utilisés par le système directement. On y trouve notamment le binaire de la commande ifconfig.

/tmp : contient tous les fichiers utilisés temporairement par les programmes actifs. A noter que tout le monde a le droit en écriture dans ce répertoire 😉 !

/usr : c’est un répertoire qui est utilisable par les utilisateurs et qui contient quasiment la même chose que la racine :

usr.png

/var : on y trouve toutes les données variable et notamment les logs ! C’est donc toujours intéressant de s’y rendre quand on a un problème avec notre système.


Dans l’optique d’avoir un système le plus « sain » possible il est intéressant de coller à cette hiérarchie c’est à dire mettre les fichiers de configuration dans /etc, mettre ses binaires dans /bin ou /sbin etc… Bien évidemment rien ne vous oblige à le faire 🙂 !

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google

Vous commentez à l'aide de votre compte Google. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s