Les chemins d'accès sous Linux
En informatique, les contenus sont généralement stockés dans des fichiers.
Comme ceux-ci sont vite très nombreux, pour s'y retrouver on a conçu les systèmes de fichiers comme des arborescences : les fichiers sont stockés dans des répertoires1), et en plus des fichiers chacun de ces répertoires peut lui-même contenir plusieurs autres répertoires.
La référence à une ressource (fichier ou répertoire) s'appelle un chemin d'accès (en anglais : path). Dans ce chemin, sous Linux, les noms des répertoires et éventuel fichier sont séparés par un slash /
(alors qu'on utilise un antislash \
sous Windows).
Il existe deux types de chemin : absolu et relatif.
Chemin absolu
Un chemin absolu se base sur la racine de l'arborescence et commence par /
, par ex. : /home/utilisateur/<dossier>/<fichier>
. Il reste valable quel que soit le contexte (à condition quand même d'être sur le même système d'une même machine).
/
au tout début d'un chemin est donc à peu près l'équivalent du C:\
sous Windows.
Chemin relatif
Un chemin relatif est a priori relatif au répertoire courant où se trouve l'utilisateur. Un chemin qui commence par autre chose que /
ou ~
est un chemin relatif. Cette notion de positionnement dépend du contexte, mais sous Linux on se trouve généralement par défaut dans son répertoire personnel qui est /home/<nom d'utilisateur>
. Dans un terminal on peut naviguer d'un répertoire à l'autre avec la commande cd.
On peut aussi utiliser ce type de chemin pour indiquer où se trouvent les ressources les unes par rapport aux autres, indépendamment de la racine du système, par ex. pour que les fichiers d'un site web susceptibles d'être déplacés ensemble puissent se retrouver les uns les autres.
Liens
On peut utiliser des liens physiques ou symboliques pour créer par ex. des raccourcis entre différents chemins.
En particulier .
utilisé comme un nom de répertoire indique le répertoire courant, et ..
indique le répertoire parent (il s'agit ici de liens physiques).
Raccourcis Shell
Tilde ~
utilisé en premier nom de répertoire remplace le chemin absolu vers son répertoire personnel soit /home/utilisateur
(voir Tilde Expansion), mais cette fonctionnalité est propre au shell, et pas au système de fichier.
Ressources cachées
Une ressource (fichier ou répertoire) dont le nom commence par .
est une ressource cachée (donc on ne peut pas la lister par défaut).
Avec la commande ls il faut ajouter l'option a (pour all) pour lister ces ressources, ce qui donne :
ls -a
Généralement on peut aussi les afficher avec un gestionnaire de fichier graphique (par défaut sur Ubuntu : GNOME Fichiers - anciennement Nautilus) avec le raccourci Ctrl + h (pour hidden).
Inodes
Pour aller plus loin il faut savoir que chaque chemin vers un répertoire ou un fichier est en fait un lien physique, et que chacun de ces liens pointe sur un inode qui décrit la ressource elle-même dans le système de fichier. L'inode décrit entre autre les permissions, le propriétaire, et les dates de création et modification de la ressource.
Voir cette page Wikipedia pour plus de détails.