Filesystem Hierachy Standard (FHS)
Ce chapitre se focalise sur la structure du système de fichiers sous Linux. On identifiera les différents emplacements d’un système Linux, l’emplacement courant et comment naviguer à travers des chemins relatifs ou absolus.
https://fr.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
1. La structure du système de fichier
Un système de fichiers est similaire à une arborescence, avec une racine qui se scinde en branches et sous-branches, soit en répertoires et sous-répertoires.
On commence par le tronc principal, la racine (root) : /
. C’est un peu comme le C:\
sous DOS, sauf que C:\
est également le premier périphérique de stockage, alors que la racine peut correspondre à n’importe quel disque (partition) de votre système (point de montage).
La racine contient différents répertoires et sous-répertoires contenant eux-mêmes des fichiers.
2. La commande tree
La commande tree
liste le contenu de répertoires sous forme d’arborescence.
sudo yum install -y tree
Par exemple sous Centos 7, l’arborescence à partir de la racine :
tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── lost+found
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
20 directories, 0 files
2. Partition racine
Les répertoires suivants peuvent être montés sur d’autres partitions que la celle de la racine :
/boot
/home
/root
/tmp
/usr
/usr/local
/opt
/var
Les répertoires /dev
, /bin
, /sbin
, /etc
et /lib
doivent être montés sur la partition racine.
De plus, la racine doit contenir un répertoire /proc
vide. Il est utilisé par le noyau pour informer sur le statut du système d’exploitation (processus, statistiques d’utilisation de la mémoire, etc.).
3. Contenu du système de fichier
-
/bin
et/sbin
: contiennent les binaires nécessaires au démarrage et les commandes essentielles -
/dev
: fichiers périphériques ou fichiers spécifiques -
/etc
: fichiers et répertoires de configuration spécifiques à la machine -
/lib
et/lib64
: bibliothèques partagées pour les binaires de/bin
et/sbin
. Contient également les modules du noyau. -
/mnt
ou/media
: points de montage pour les systèmes de fichiers externes -
/proc
: informations du noyau. En lecture seule sauf pour/proc/sys
. -
/boot
: contient le noyau Linux, le System.map (carte des symboles du noyau) et les chargeurs d’amorçage secondaires. -
/home
(facultatif) : répertoires utilisateurs, avec, en général, une copie du contenu de/etc/skel
. -
/root
: répertoire de l’utilisateur root. -
/sys
: export d’information du noyau, à la manière de/proc
. -
/tmp
: fichiers temporaires. -
/usr
: User Specific Ressource. Contenu essentiellement statique et partageable./usr
est composé de sous-répertoiresbin
,sbin
,lib
et autres qui contiennent des programmes et bibliothèques de votre système non essentielles ni nécessaires au démarrage. -
lost+found
: est un dossier spécial de récupération des données du système de fichiers.
$ tree -L 1 /usr
/usr
├── bin
├── etc
├── games
├── include
├── lib
├── lib64
├── libexec
├── local
├── sbin
├── share
├── src
└── tmp -> ../var/tmp
12 directories, 0 files
-
/usr/local
ou/opt
: programmes et bibliothèques supplémentaires. En général, c’est dans ces répertoires que l’on place les programmes qui ne font pas partie des paquets des distributions. -
/var
: données variables comme les spool ou les journaux. Les sous-répertoires peuvent être soit partageables (comme/var/spool/mail
) soit non partageables (comme/var/log
). -
/var/www
,/var/ftp
ou/srv
: pages web ou fichiers ftp anonymes.
4. Chemins relatifs et absolus
On peut accéder à un répertoire ou un fichier en donnant son chemin complet, qui commence à la racine (/
), ou en donnant son chemin relatif partant du répertoire courant.
Chemin absolu :
- indépendant du répertoire de travail de l’utilisateur
- commence par
/
Chemin relatif :
- dépend de l’endroit où se trouve l’utilisateur
- ne commence pas par
/
5. Se déplacer dans le système de fichiers
Comme pour tout système de fichiers structuré, un certain nombre d’outils aident à parcourir le système. Les deux commandes suivantes sont des commandes internes du shell :
-
pwd
: (Print Working Directory) affiche le répertoire actuel en chemin absolu -
cd
: la commande pour changer de répertoire (Change Directory)
6. Emplacements
- L’emplacement courant est représenté par un point
.
- L’emplacement parent est représenté par deux points
..
- Le répertoire utilisateur courant est représenté par le tild
~
7. Exercices
- Aller dans le répertoire
/etc/
- Revenir dans le répertoire personnel Téléchargements
- Aller dans
/etc/default
de manière relative - Revenir rapidement dans son répertoire personnel
- Se placer dans le répertoire
Téléchargements