Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
lien_physique_et_symbolique [Le 12/09/2021, 18:27]
46.193.67.244 [Syntaxe des liens physiques ou symboliques]
lien_physique_et_symbolique [Le 26/02/2025, 10:12] (Version actuelle)
bcag2 [Exemple de lien symbolique] changer un lien symbolique existant
Ligne 26: Ligne 26:
 ===== Définitions ===== ===== Définitions =====
  
-Il existe deux types de liens qui permettent de rediriger un fichier vers un autre : les **liens physiques** (ou matériels) et les **liens symboliques**. ​+Il existe deux types de liens qui permettent de rediriger un fichier vers un autre : les **liens physiques** (ou matériels) et les **liens symboliques**.
  
 Avec un lien physique, les données du disque sont pointées par plusieurs entrées de répertoire,​ contrairement à ce qui se passe avec un lien symbolique. Avec un lien physique, les données du disque sont pointées par plusieurs entrées de répertoire,​ contrairement à ce qui se passe avec un lien symbolique.
  
-Un lien matériel (ou physique) est l'​information exacte elle-même, située à la même position sur le disque dur. Avec un lien physique, vous pouvez copier certaines données du fichier cible, effacer le reste du fichier, et il continuera à exister. ​+Un lien matériel (ou physique) est l'​information exacte elle-même, située à la même position sur le disque dur. Avec un lien physique, vous pouvez copier certaines données du fichier cible, effacer le reste du fichier, et il continuera à exister.
  
 Un lien symbolique est un fichier qui pointe vers un autre fichier ; si vous supprimez le fichier cible, les liens symboliques pointeront vers un fichier inexistant. Un lien symbolique est un fichier qui pointe vers un autre fichier ; si vous supprimez le fichier cible, les liens symboliques pointeront vers un fichier inexistant.
Ligne 47: Ligne 47:
  
  
-  * **Lien symbolique** : permet d'​attribuer un autre chemin d'​accès à un fichier en pointant sur un nom de fichier. ​+  * **Lien symbolique** : permet d'​attribuer un autre chemin d'​accès à un fichier en pointant sur un nom de fichier.
  
 Voici le résultat obtenu en entrant la même commande **ls -i** : Voici le résultat obtenu en entrant la même commande **ls -i** :
Ligne 57: Ligne 57:
 On voit que les deux fichiers pointent vers deux numéros d'​inode **différents**. On voit que les deux fichiers pointent vers deux numéros d'​inode **différents**.
  
-<note help>​Dans quels cas est-il plus judicieux d'​utiliser un lien symbolique plutôt qu'un lien physique et vice-versa ? +<note help>​Dans quels cas est-il plus judicieux d'​utiliser un lien symbolique plutôt qu'un lien physique et vice-versa ?
  
 Réponse partielle 1 : dans les environnements graphiques (Dolphin, etc.), on ne trouve pas l'​option pour créer de lien fixe ... et je le regrette parfois. Réponse partielle 1 : dans les environnements graphiques (Dolphin, etc.), on ne trouve pas l'​option pour créer de lien fixe ... et je le regrette parfois.
Ligne 63: Ligne 63:
 Réponse partielle 2 : les liens symboliques permettent une meilleure maintenance de l'​espace disque. Avec des liens en dur (physiques) partout, il deviendrait difficile de savoir si on a vraiment effacé un fichier du disque. Réponse partielle 2 : les liens symboliques permettent une meilleure maintenance de l'​espace disque. Avec des liens en dur (physiques) partout, il deviendrait difficile de savoir si on a vraiment effacé un fichier du disque.
  
-Réponse partielle 3 : dans le cas où le lien doit pointer vers un autre système de fichiers (autre partition ou autre support de stockage), seul le lien symbolique est possible. ​+Réponse partielle 3 : dans le cas où le lien doit pointer vers un autre système de fichiers (autre partition ou autre support de stockage), seul le lien symbolique est possible.
  
-Réponse partielle 4 : dans la gestion des sauvegardes,​ les liens symboliques ne sont généralement pas suivis, ce qui permet d'​éviter de sauvegarder les mêmes fichiers plusieurs fois. +Réponse partielle 4 : dans la gestion des sauvegardes,​ les liens symboliques ne sont généralement pas suivis, ce qui permet d'​éviter de sauvegarder les mêmes fichiers plusieurs fois.
  
 Réponse partielle 5 : inversement,​ dans certains cas, il faut passer par le lien physique pour que la sauvegarde fonctionne. Il faut alors passer par la console (ligne de commande ou "​mc"​ à installer et essayer). Exemple : je sauvegarde régulièrement "/​etc",​ mais quelques rares paquets demandent un peu de configuration dans "/​var/​lib/​..."​ ; je mets alors des liens en dur dans un sous-répertoire ad hoc de mon répertoire /etc, pour que la sauvegarde de ces paquets soit aussi assurée. Réponse partielle 5 : inversement,​ dans certains cas, il faut passer par le lien physique pour que la sauvegarde fonctionne. Il faut alors passer par la console (ligne de commande ou "​mc"​ à installer et essayer). Exemple : je sauvegarde régulièrement "/​etc",​ mais quelques rares paquets demandent un peu de configuration dans "/​var/​lib/​..."​ ; je mets alors des liens en dur dans un sous-répertoire ad hoc de mon répertoire /etc, pour que la sauvegarde de ces paquets soit aussi assurée.
Ligne 94: Ligne 94:
  
 <note important>​Malheureusement,​ les liens symboliques ne sont pas mis à jour lorsque le fichier source est déplacé ou renommé. Il faut les recréer.</​note>​ <note important>​Malheureusement,​ les liens symboliques ne sont pas mis à jour lorsque le fichier source est déplacé ou renommé. Il faut les recréer.</​note>​
-===== Prérequis pour l'​exemple =====+====== Prérequis pour l'​exemple ​======
  
 On montrera cela par un exemple simple : On montrera cela par un exemple simple :
Ligne 119: Ligne 119:
 ===== Exemple de lien symbolique ===== ===== Exemple de lien symbolique =====
  
-Pour créer un lien symbolique, on utilise aussi la commande ln, en ajoutant toutefois l'​option -s. +Pour créer un lien symbolique, on utilise aussi la commande ​//ln//, en ajoutant toutefois l'​option -s.
  
-On crée un lien symbolique (que l'on nomme ici lien_symb) : +On crée un lien symbolique (que l'on nomme ici //lien_symb//) : 
-   ​ln -s source lien_symb+<code bash>ln -s source lien_symb</​code>​
  
-On pourra toujours lire source depuis lien_symb : +On pourra toujours lire //source// depuis ​//lien_symb// 
-   ​gedit lien_symb+<code bash>gedit lien_symb</​code>​
  
-À la différence du lien physique, après la destruction de source, le fichier ne sera plus accessible !+À la différence du lien physique, après la destruction ​ou même simplement le renommage ​de source, le fichier ne sera plus accessible ! 
 +<code bash>
    rm source    rm source
    gedit lien_symb    gedit lien_symb
 +</​code>​
  
-On peut repérer les liens symboliques avec ls -F, ils apparaissent avec un @ à la fin. +On peut repérer les liens symboliques avec ls -F, ils apparaissent avec un @ à la fin.
    ls -F    ls -F
  
 +Pour modifier le propriétaire ou/et le groupe d'un lien symbolique, il faut utiliser l'​option //-h//, sinon c'est les propriétés de la cible qu'on change et non celle du lien (le sudo n'est pas indispensable,​ si on a les droits évidemment) :
 +<code bash>
 +sudo chown -h nom_utilisateur_proprio:​nom_groupe lien_symb
 +sudo chgrp -h nom_groupe lien_symb
 +</​code>​
 +
 +Il est possible de remplacer un lien symbolique existant :
 +<code bash>
 +# !! assurez-vous au préalable qu'il s'agit bien d'un lien symbolique (cf. ls -F ou ls -i expliqué plus haut) !!
 +ln -sfn source lien_symb
 +# exemple, basculer sendmail vers msmtp
 +cd /usr/sbin
 +ln -sfn /​usr/​bin/​msmtp sendmail
 +</​code>​
 ===== Autres documentations disponibles ===== ===== Autres documentations disponibles =====
   * [[http://​wiki.linux-france.org/​wiki/​Les_commandes_fondamentales_de_Linux | Explication sur linux-france.org]] *   * [[http://​wiki.linux-france.org/​wiki/​Les_commandes_fondamentales_de_Linux | Explication sur linux-france.org]] *
 +  * [[https://​forum.ubuntu-fr.org/​viewtopic.php?​pid=22433798#​p22433798 | Script corrigeant en masse les conséquences d'un renommage de dossier qui casse les liens symboliques dirigeant vers lui, ses sous-répertoires et fichiers]]. par MicP
  
 ===== En dual-boot Windows ===== ===== En dual-boot Windows =====
  • lien_physique_et_symbolique.1631464061.txt.gz
  • Dernière modification: Le 12/09/2021, 18:27
  • par 46.193.67.244