This is an old revision of the document!
Lors de l'utilisation d'un terminal, il est important de savoir où l'on se situe dans la hiérarchie. Si nous voulons jouer à un jeu, nous savons que nous voulons aller dans le répertoire Jeux, où se trouve notre jeu préféré, Warcraft3. Pour accéder au répertoire Games, nous devons savoir où nous nous trouvons, puis naviguer dans le système de fichiers pour y arriver.
Une hiérarchie de fichiers et de répertoires est une structure pour les organiser. La structure hiérarchique permet de les regrouper dans des répertoires, qui à leur tour contiennent d'autres répertoires ou fichiers. De cette façon, nous ne pouvons travailler qu'avec un sous-ensemble de fichiers et de répertoires sur le total du système.
Un tel exemple est le suivant :
Sous Linux, le début de cette hiérarchie est /, le répertoire racine du système de fichiers. Si nous considérons le système de fichiers comme un arbre inversé, le répertoire racine est la racine même de cet arbre. À partir de là, les branches et les feuilles du système de fichiers se développent, formant ce que nous appellerons des chemins.
Nous pouvons voir le début de la hiérarchie Linux ci-dessous :
student@uso:/$ tree -F -L 1 / / |-- bin/ |-- boot/ |-- dev/ |-- etc/ |-- home/ |-- initrd.img -> /boot/initrd.img-3.16.0-4-586 |-- lib/ |-- lib64/ |-- libx32/ |-- lost+found/ |-- media/ |-- mnt/ |-- opt/ |-- proc/ |-- root/ |-- run/ |-- sbin/ |-- srv/ |-- sys/ |-- tmp/ |-- usr/ |-- var/ ``-- vmlinuz -> boot/vmlinuz-3.16.0-4-586
On remarque / (le répertoire racine) au début de la hiérarchie. Au niveau suivant, c'est-à-dire les branches / enfants du répertoire racine, se trouvent les répertoires bin, boot, dev, etc.
On observe le contenu du répertoire home :
student@uso:/home$ tree -F -L 1 /home . ``-- student/
Il n'y a qu'un seul directeur, appelé student.
Ensuite, nous détaillons le concept de chemin.
Nous partons de l'analogie suivante : Nous avons quatre points sur une droite : A, B, C et D. Pour aller de A à D, nous devons passer par B et C. Ainsi, nous avons les segments suivants : AB, BC , CD.
De même, pour le système de fichiers, nous commençons au répertoire racine (/) et descendons dans l'arborescence.
La liste des répertoires intermédiaires depuis la racine de la hiérarchie des fichiers (/) jusqu'à un fichier ou un répertoire particulier est appelée chemin.
Le chemin actuel est notre position dans le système de fichiers.
Dans la ligne de commande, nous affichons le chemin d'accès au répertoire dans lequel nous nous trouvons (chemin actuel) à l'aide de la commande pwd (print working directory) :
code bash>
student@uso:~ pwd
/home/student
student@uso:~
pwd
/usr/bin
</code>
Nous sommes maintenant à la position /usr/bin dans le système de fichiers. Nous remarquons comment le chemin actuel change lorsque nous changeons le répertoire dans lequel nous nous trouvons.
Lorsque nous voulons lire, écrire, supprimer un fichier ou un répertoire, nous devons nous référer à ce fichier ou répertoire. Pratiquement toutes les opérations du système de fichiers (archiver, chiffrer, supprimer, modifier) utilisent des chemins. Il est incorrect de dire “ouvrez le fichier /home/student/a.txt” ; techniquement correct est “ouvrez le fichier à partir du chemin /home/student/a.txt”.
Dans le système de fichiers, nous pouvons faire référence à un fichier de 2 manières : en utilisant le chemin relatif ou en utilisant le chemin absolu.
Prenons par exemple une série sur Netflix. Nous nous référons à un épisode de deux manières :
De même, nous nous référons à un fichier :
Comme indiqué ci-dessus, le chemin absolu commence toujours par le caractère / (barre oblique), également appelé répertoire racine. Ceci indique le début de la hiérarchie des fichiers.
On liste les fichiers /usr/bin/touch et /etc/passwd par chemin absolu en utilisant ls :
student@uso:~$ ls -l /usr/bin/touch lrwxrwxrwx 1 root root 10 Mar 14 2015 /usr/bin/touch -> /bin/touch student@uso:~$ ls -l /etc/passwd -rw-r--r-- 1 root root 1768 Sep 9 14:07 /etc/passwd
On a utilisé l'option -l de l'utilitaire ls pour afficher des informations supplémentaires sur les fichiers.
On remarque qu'au début des chemins il y a toujours le caractère '/' (le répertoire racine).