Question:
Quelle est la différence entre un lien physique et un lien symbolique ?
kiki
2012-09-27 07:48:15 UTC
sous linux
Quatre réponses:
Ramis V
2012-09-28 02:15:39 UTC
La différence est énorme !!!



Déja au niveau structurel, le lien physique est au niveau le plus bas du système de fichiers. pour accéder à un fichier, tu as des répertoires (manipulables par MKDIR, RMDIR, etc). un répertoire est un fichier système qui contient des noms de fichiers mis en relation avec un numéro d'inode. et la table des inodes renvoie vers les secteurs de données physiques. quand tu crée un lien physique, tu te retrouve donc avec deux noms de fichiers qui pointent vers le même inode.



la conséquence, c'est que une fois le / les liens créés, rien ne permet de distinguer un lien plutôt qu'un autre. un fichier est considéré effacé uniquement quand son dernier lien est effacé et que son dernier handle est libéré.



tu peux donc déplacer ou renommer l'un ou l'autre de ses liens, et tous les autres liens marcheront toujours. contrairement à un lien symbolique qui fonctionne un peu comme les raccourcis de windows, c'est à dire, que le nom de l'objet pointé est mémorisé dans le lien et si tu déplace le fichier physique, le lien dne marche plus.



du coup, il y a des différences de fonctionnalités. le lien physique doit être sur le même volume (même système de fichiers et point de montage) alors que le lien symbolique peut pointer vers n'importe quoi.



donc quand tu veux faire apparaitre un fichier ou un répertoire venant d'un autre disque, tu n'a pas le choix, tu ne peux utiliser que le lien symbolique.



pour plus d'infos, MAN LN
stephaneascoet
2012-09-28 11:16:14 UTC
Le lien symbolique est un peu comme les raccourcis sous les systèmes micro$oft, mais en bien plus puissant. C'est un fichier supplémentaire, mais qui contient un "marque-page" vers un autre fichier. Du coup, en accédant au lien depuis un système d'exploitation qui les gère et les interprète(c'est le cas de tous les systèmes POSIX), tu accèdes en fait au fichier pointé par celui-ci. Si le fichier pointé n'existe plus, le lien symbolique renverra une erreur.



Un lien physique porte mal son nom, car en fait ce n'est pas vraiment un lien. En réalité, ça consiste à référencer un fichier déjà existant une fois supplémentaire. En effet, tous les fichiers présents sont listés dans un répertoire qui indique au système où les trouver. Un fichier est supprimé quand tous les enregistrements dans la table des inodes le concernant sont supprimés. Comme presque tous les fichiers n'en ont qu'un, nous obtenons le comportement habituel: le fichier est supprimé(en fait, seul son cataloguage est supprimé, il sera physiquement écrasé lorsque d'autres données viendront à cet emplacement, qui du coup, est marqué libre) dès la suppression de cet enregistrement. Mais du coup, un fichier ayant plusieurs de ces enregistrements(appelés "liens physiques" de façon erronée), le fichier restera accessible(et ne sera donc pas écrasé par autre chose) tant qu'il restera un référécement de celui-ci.
anonymous
2012-09-29 07:31:24 UTC
désolé
Ch'Picard
2012-09-27 08:14:58 UTC
oh oh qu'elle est belle cette question !!! Voici une réponse à cette question:



Va voir sur ce lien, tu trouveras certainement de quoi t'éclairer.



www.developpez.net › ... › Programmation système › Linux



Bonne journée !


Ce contenu a été initialement publié sur Y! Answers, un site Web de questions-réponses qui a fermé ses portes en 2021.
Loading...