L'arborescence d'un système Debian est organisée selon la norme FHS (Filesystem Hierarchy Standard). Elle codifie de manière précise l'usage de chaque répertoire. Étudions la subdivision principale :
/bin/
: programmes de base ;
/boot/
: noyau Linux et autres fichiers nécessaires à son démarrage ;
/dev/
: fichiers de périphériques ;
/etc/
: fichiers de configuration ;
/home/
: fichiers personnels des utilisateurs ;
/lib/
: bibliothèques de base ;
/media/*
: points de montage pour des périphériques amovibles (CD-Rom, clé USB, etc.) ;
/mnt/
: point de montage temporaire ;
/opt/
: applications additionnelles fournies par des tierces parties ;
/root/
: fichiers personnels de l'administrateur (utilisateur root
) ;
/run/
: données d'exécution volatiles qui ne persistent pas entre les redémarrages ;
/sbin/
: programmes système ;
/srv/
: données pour les services hébergés par ce système ;
/tmp/
: fichiers temporaires, ce répertoire étant souvent vidé au démarrage ;
/usr/
: applications supplémentaires ; ce répertoire se subdivise à nouveau en bin
, sbin
, lib
selon la même logique. En outre, /usr/share/
contient des données indépendantes de l'architecture. /usr/local/
permet à l'administrateur d'installer manuellement certaines applications sans perturber le reste du système qui est géré par le système de paquetage (dpkg
).
/var/
: données variables des démons. Ceci inclut les fichiers de traces, les files d'attente, les caches, etc.
Note that many modern distributions, Debian included, are shipping /bin
, /sbin
and /lib
as symlinks to the corresponding directories below /usr
so that all programs and libraries are available in a single tree. It makes it easier to protect the integrity of the system files, and to share those system files among multiple containers, etc.
B.2.2. Le répertoire personnel de l'utilisateur
Le contenu des répertoires utilisateurs n'est pas standardisé. Cependant, il y a tout de même quelques conventions à connaître. Avant tout, il faut savoir que l'on désigne fréquemment le répertoire personnel par un tilde (« ~ ») car les interpréteurs de commandes le remplaceront automatiquement par le bon répertoire /home/utilisateur/
.
Traditionnellement, les fichiers de configuration des applications sont directement dans le répertoire de l'utilisateur, mais leurs noms débutent par un point (ex : ~/.muttrc
pour le lecteur de courrier mutt
). Signalons que les fichiers débutant par un point sont cachés par défaut : il faut passer l'option -a
à ls
pour les voir et les gestionnaires de fichiers graphiques ont chacun leur propre mécanisme d'activation de l'affichage des fichiers cachés.
Some programs also use multiple configuration files organized in one directory (for instance, ~/.ssh/
). Some applications also use their directory to store a cache of downloaded data. This means that those directories can end up using a lot of disk space.
These configuration files stored directly in a user's home directory, often collectively referred to as dotfiles, have long proliferated to the point that these directories can be quite cluttered with them. Fortunately, an effort led collectively under the FreeDesktop.org umbrella has resulted in the “XDG Base Directory Specification”, a convention that aims at cleaning up these files and directories. This specification states that configuration files should be stored under ~/.config/
, cache files under ~/.cache/
, and application data files under ~/.local/
(or subdirectories thereof). This convention is slowly gaining traction, and several applications (especially graphical ones) have started following it.
Les bureaux graphiques affichent généralement le contenu du répertoire ~/Bureau/
(ou ~/Desktop/
pour un système configuré en anglais) sur le bureau (c'est l'écran qui reste une fois toutes les applications fermées ou minimisées).
Enfin, il arrive que le système de messagerie dépose les courriers électroniques entrants dans ~/Mail/
.