Lien souple (symbolique) vs lien dur

Soft Link Vs Hard Link



Les liens symboliques (également appelés liens symboliques) et les liens physiques sont une ressource permettant d'accéder à des fichiers ou des répertoires à partir de n'importe quel emplacement. Cet article décrira les différences entre les liens symboliques et les liens physiques.

Liens physiques

Les liens physiques ne sont pas un fichier contenant le chemin d'accès au fichier d'origine, mais des copies miroir du fichier d'origine vers lequel ils pointent. Un fichier et ses liens physiques ne sont pas associés par le nom ou le chemin mais par l'inode qui stocke les informations sur le fichier, comme son emplacement, sa date de création, ses autorisations et d'autres attributs. Chaque numéro d'inode est unique dans un système de fichiers, empêchant les liens physiques de fonctionner entre différentes partitions ou systèmes. Les liens physiques ne peuvent pas être utilisés pour lier des répertoires.







Contrairement aux liens virtuels, les liens physiques contiennent les informations auxquelles ils renvoient. Ainsi, si le fichier d'origine est supprimé, vous pouvez toujours accéder à ses données.



Dans tous les systèmes Linux, les liens physiques et symboliques sont créés avec la commande dans . Pour commencer, créez d'abord un fichier appelé LinuxHintFile et un répertoire appelé LinuxHintDirectory comme le montre l'image ci-dessous :



toucherLinuxHintFile
rmkdir LinuxHintDirectory
ls
racine@Indice Linux :/domicile/astuce linux#





Pour créer un lien physique appelé Link2LHFile vers le fichier LinuxHintFile exécuté dans le terminal :

dansLinuxHintFile Link2LHFile



Après vérification avec ls nous voyons le lien physique que nous venons de créer, si vous tapez ls -i vous verrez les inodes des fichiers, vous pouvez confirmer que le lien que nous venons de créer a le même numéro d'inode que le fichier d'origine, tapez :

ls -je

Comme nous l'avons dit ci-dessus, nous ne pouvons pas utiliser de liens physiques pour les répertoires ni de liens vers d'autres volumes ou systèmes de fichiers, nous allons lier LinuxHintDirectory avec un lien logiciel.

Vous pouvez trouver des liens physiques dans le répertoire de travail en exécutant :

trouve -taperF-liens+1

Vous pouvez également trouver des fichiers par inodes, pour cette exécution :

trouve.-inum <Numéro d'inode>

Comme vous le voyez, il a trouvé à la fois le fichier d'origine et le lien physique partageant le même numéro d'inode.

Liens symboliques

Contrairement aux liens physiques, les liens symboliques ne sont pas des copies du fichier d'origine, ils contiennent le chemin d'accès au fichier d'origine, à cause de cela, si le fichier d'origine est supprimé, le lien symbolique ou le lien symbolique indiquera qu'aucun fichier ne deviendra un lien rompu, ou un lien orphelin, ce qui signifie que si vous perdez le fichier source, si vous le supprimez ou le déplacez, le lien symbolique perdra l'accès à l'information, tandis qu'avec le lien dur, l'information reste malgré la suppression du fichier source car il s'agit d'un lien complet et exact copie de ce fichier.

Contrairement aux liens physiques, les liens symboliques ne partagent pas le même inode avec le fichier d'origine, c'est pourquoi les liens symboliques peuvent traverser les volumes et les systèmes de fichiers, contrairement aux liens physiques. Les liens symboliques peuvent être utilisés pour lier des répertoires alors qu'avec des liens physiques, ce n'est pas possible.

Des liens symboliques sont également créés avec le programme dans , mais pour que le lien soit symbolique/soft nous devons spécifier le paramètre -s , pour créer un lien symbolique vers le répertoire LinuxHintDirectory appelé LHDLink, exécutez :

dans -sLinuxHintDirectory LHDLink

Et puis exécutez ' ls -i ' pour vérifier qu'il a été correctement créé :

Comme nous le voyons dans ce cas, le lien symbolique a été créé, mais il a un numéro d'inode différent de celui du fichier d'origine.

Nous pouvons lister les liens symboliques dans un répertoire avec la commande ls -l

Dans l'image ci-dessus on peut voir dans les permissions du premier fichier le préfixe l pour les liens symboliques, la fin de la ligne indique également vers quel fichier pointe le lien symbolique.

J'espère que vous avez trouvé cet article utile pour comprendre les différences entre les liens physiques et les liens symboliques et comment les créer. Continuez à suivre LinuxHint pour plus de conseils et de mises à jour sur Linux.