Aller au contenu principal

liens_symbolique_linux

Commande Ln sous Linux (Créer des liens symboliques)

Un lien symbolique, également appelé lien symbolique ou lien symbolique, est un type spécial de fichier qui pointe vers un autre fichier ou répertoire. Les liens symboliques sont généralement utilisés pour créer des raccourcis ou des alias pour les fichiers ou les répertoires situés dans le système de fichiers.

Nous verrons comment utiliser la commande ln pour créer des liens symboliques.

Types de liens

Il existe deux types de liens dans les systèmes Linux/UNIX :

  • Hard links (Liens physiques) Vous pouvez considérer un lien physique comme un nom supplémentaire pour un fichier existant. Les liens physiques lient deux ou plusieurs noms de fichiers avec le même inode. Vous ne pouvez créer des liens physiques que pour des répertoires et des fichiers situés sur le même système de fichiers ou la même partition. Un fichier peut avoir un ou plusieurs liens physiques.

  • Soft links (Liens souples) Un lien symbolique, également appelé lien logiciel, est un type de fichier qui sert de référence à un autre fichier ou répertoire dans le système de fichiers. Il est comparable à un raccourci dans le système d'exploitation Windows, car il vous permet d'accéder à un fichier ou à un répertoire à partir d'un emplacement différent sans en créer une copie. Les liens symboliques sont utiles pour organiser les fichiers, ainsi que pour faciliter l'accès aux fichiers ou aux répertoires fréquemment utilisés. Contrairement à un lien en dur, un lien symbolique peut pointer vers un fichier ou un répertoire situé sur une partition ou un système de fichiers différent.

Comment utiliser la commande ln

ln est un utilitaire de ligne de commande permettant de créer des liens entre des fichiers. Par défaut, la commande ln crée des liens physiques. Pour créer un lien symbolique, utilisez l'option -s (--symbolic).

ln -s [OPTIONS] FILE LINK
  • Si le FILE et le LINK sont tous deux fournis, ln créera un lien depuis le fichier spécifié comme premier argument (FILE) vers le fichier spécifié comme deuxième argument (LINK).

  • Si un seul fichier est donné en argument ou si le second argument est un point (.), ln créera un lien vers ce fichier dans le répertoire de travail courant. Le lien symbolique aura le même nom que le fichier vers lequel il pointe.

  • Par défaut, en cas de succès, ln ne produit aucune sortie et renvoie zéro.

Créer un lien symbolique vers un fichier

Pour créer un lien symbolique vers un fichier donné, ouvrez votre terminal et tapez :

ln -s source_file symbolic_link

Remplacez source_file par le nom du fichier existant pour lequel vous souhaitez créer le lien symbolique et symbolic_link par le nom du lien symbolique.

Le paramètre symbolic_link est facultatif. Si vous ne spécifiez pas le lien symbolique, la commande ln créera un nouveau lien dans votre répertoire actuel :

Dans l'exemple suivant, nous créons un lien symbolique nommé mon_lien.txt vers un fichier nommé mon_fichier.txt :

ln -s mon_fichier.txt mon_lien.txt

Pour vérifier que le lien symbolique a été créé avec succès, utilisez la commande ls :

ls -l mon_lien.txt

Le résultat ressemblera à ceci :

lrwxrwxrwx 1 linuxize users  4 Nov  2 23:03  mon_lien.txt -> mon_fichier.txt

Le caractère l est un indicateur de type de fichier qui représente un lien symbolique. Le symbole -> indique le fichier vers lequel pointe le lien symbolique.

Créer des liens symboliques vers un répertoire

La commande de création d'un lien symbolique vers un répertoire est la même que celle utilisée pour créer un lien symbolique vers un fichier. Spécifiez le nom du répertoire comme premier paramètre et le lien symbolique comme second paramètre.

Par exemple, si vous souhaitez créer un lien symbolique du répertoire /mnt/my_drive/movies vers le répertoire ~/my_movies, vous devez exécuter :

ln -s /mnt/my_drive/movies ~/my_movies

Écraser les liens symboliques

Si vous essayez de créer un lien symbolique qui existe déjà, la commande ln affichera un message d'erreur.

ln -s my_file.txt my_link.txt
ln: failed to create symbolic link 'my_link.txt': File exists

Pour écraser le chemin de destination du lien symbolique, utilisez l'option -f (--force).

ln -sf my_file.txt my_link.txt

Suppression des liens symboliques

Pour supprimer/supprimer les liens symboliques, utilisez la commande unlink ou rm. La syntaxe de la commande unlink est très simple :

unlink symlink_to_remove

Supprimer un lien symbolique à l'aide de la commande rm revient au même que supprimer un fichier :

rm symlink_to_remove

Quelle que soit la commande que vous utilisez, lorsque vous supprimez un lien symbolique, n'ajoutez pas la barre oblique / à la fin de son nom.

Si vous supprimez ou déplacez le fichier source vers un autre emplacement, le fichier symbolique restera en suspens (cassé) et devra être supprimé.

Conclusion

Pour créer un lien symbolique sous Linux, utilisez la commande ln avec l'option -s. Pour plus d'informations sur la commande ln, visitez la page de manuel ln ou tapez man ln dans votre terminal.