Dans la gestion des fichiers de Linux, il existe une fonctionnalité nommée Lien symbolique.
Cela permet de créer un lien (comprenez raccourci) avec un fichier ou un dossier.
Il existe deux types de liens symboliques. De plus, cette fonctionnalité n’étant pas évidente, vous pouvez vous poser quelques questions sur son fonctionnement.
Ce guide vous apprend tout ce qu’il faut savoir sur les liens symboliques dans Linux. Qu’est-ce qu’un lien symbolique et comment cela marche.
Table des matières
Qu’est-ce qu’un lien symbolique sur Linux
Un lien symbolique est un fichier ou dossier de raccourci pour n’importe quel répertoire ou fichier.
Le lien symbolique (symlink) ou le lien souple (soft link) sont les autres noms du lien symbolique.
Dans Linux, les liens symboliques fonctionnent comme une chaîne de caractères qui génère des chemins entre différents fichiers et répertoires. Ces liens sont fréquemment utilisés pour lier des bibliothèques. Ils permettent également de s’assurer que les fichiers existent à des emplacements cohérents.
Les liens symboliques sont utilisés pour stocker de nombreuses copies d’un même fichier à plusieurs endroits tout en faisant référence au même fichier.
Quels sont les types de liens symboliques sur Linux
Le lien souple
Ce type de lien symbolique fait référence à l’emplacement ou au chemin d’accès du fichier d’origine.
Sur Internet, il fonctionne de la même manière qu’un lien hypertexte.
En anglais, il se nomme softlink.
Le lien symbolique souple possède un inode différent que sa cible comme le montre la commande ls ci-dessous.
De plus, l’utilitaire ls affiche un softlink avec un type link (l) et de couleurs cyan. Enfin la cible est indiquée par une flèche vers la droite.
Si la cible est renommé, le lien symbolique souple ne fonctionne plus.
Il apparaît alors en rouge et si on tente d’accéder au contenu, on obtient un message d’erreur de fichiers introuvable.
Le lien physique, matériel ou dur
Un lien dur (en anglais hardlink) fonctionne en générant un nouveau nom de fichier lié aux données de l’inode du fichier original (fichier de référence). Cela équivaut à faire une copie du fichier en question.
Comme le montre la commande ls ci-dessous, le lien symbolique partage le même inode que sa cible.
Comme il s’agit d’un lien direct dans le système de fichiers, si vous modifiez la cible, par exemple, vous renommez le nom. Cela n’affecte pas le lien symbolique qui continue de fonctionner.
En effet, le lien symbolique continue de lire l’information de l’inode qui est mis à jour.
Notez aussi que la commande ls ne l’affiche pas comme un lien symbolique, contrairement au softlink précédent.
Il est donc considéré comme un autre fichier.
En résumé
Cette image résume les principales différences entre ces deux types de liens symboliques dans Linux.
Comment créer un lien symbolique sur Linux
Vous pouvez créer un lien symbolique souple ou physique en ligne de commande avec la commande ln.
Cette commande crée des liens en dur par défaut.
Cependant, vous pouvez ajouter l’option -s (–symbolic) si vous souhaitez créer un lien souple.
La syntaxe est la suivante :
ln -s <fichier_source> <lien symbolique>
Il est aussi possible de créer un lien symbolique avec l’explorateur de fichiers Nautilus.
Seules les liens symboliques souples peuvent être créés.
Pour apprendre à le faire, consultez ce guide : Ubuntu : créer lien symbolique
Liens
- Ubuntu : créer lien symbolique
- La commande ls Linux : utilisation et exemples
- Comment utiliser la commande chown pour changer le propriétaire d’un fichier
- La commande cp Linux : utilisation et exemples (copier des fichiers)
- Comprendre les permissions de fichiers dans Linux
- Inode dans Linux : qu’est-ce que c’est et comment les afficher
- Les jonctions et liens symboliques dans Windows