Différence entre le lien souple et le lien dur dans Unix dans OS
- 625
- 182
- Sarah Poirier
Un lien dans le système basé sur UNIX est utilisé pour établir la connexion entre un fichier et les données réelles sur le disque. C'est plus comme un pointeur ou une référence qui pointe vers un autre fichier ou un répertoire, tout comme le concept de pointeurs dans les langages de programmation.
Disons qu'un fichier a un nom très long et pour certaines raisons, il ne peut pas être modifié. Dans Unix, nous pouvons nous référer au fichier avec une référence en utilisant un nom plus court pour faciliter l'utilisation. Ces références au même fichier dans UNIX sont appelées liens. Autrement dit, un lien est un moyen de se référer au contenu d'un fichier.
Il existe deux types de liens utilisés dans UNIX: liens souples et liens durs. Les deux sont utilisés essentiellement dans le même but, sauf la façon dont ils se comportent.
Qu'est-ce qu'un lien doux?
Un lien doux, ou un rose symbolique, est un petit fichier de pointeur qui associe un nom de fichier au nom de chemin. Il ne s'agit que d'un raccourci du fichier d'origine, similaire à l'option de raccourci dans les systèmes d'exploitation Windows. Il sert simplement de référence à un autre fichier ou répertoire sans le contenu réel du fichier vous permettant de supprimer simplement les liens souples sans même affecter le contenu du fichier ou du répertoire d'origine.
En termes simples, un lien souple est généralement un alias pour le fichier d'origine qui redirige vers le fichier cible ou le répertoire lorsqu'il est accessible via le chemin d'accès spécifié dans le sujet du lien souple. De plus, vous pouvez utiliser des liens souples pour lier le système de fichiers.
Qu'est-ce qu'un lien difficile?
Un lien dur est simplement une réplique du fichier d'origine qui sert de référence ou de pointeur vers le même fichier, ce qui facilite l'accès même du fichier d'origine est supprimé ou déplacé de son emplacement d'origine. Contrairement aux liens souples, les modifications apportées aux fichiers liés durs auront un effet sur d'autres fichiers et le lien dur fonctionne toujours même si vous supprimez le fichier source du système.
Les liens durs partagent la même valeur inode et contrairement aux liens souples, ils pointent vers l'emplacement du fichier au lieu du répertoire. Il est généralement utilisé dans les systèmes de fichiers qui permettent plus que sur le lien dur pour le même fichier. Autrement dit, un lien dur n'est qu'un nom supplémentaire pour un fichier déjà existant sur les systèmes basés sur UNIX.
Différence entre le lien souple et le lien dur dans Unix
Signification
Un lien souple, également appelé lien symbolique, est un pointeur spécial qui établit des liens entre les fichiers. Il est très similaire à la fonction de raccourci disponible dans les systèmes d'exploitation Windows. Un lien souple est simplement un raccourci d'un fichier qui sert de référence à un autre fichier ou répertoire. Un lien dur est très différent d'un lien souple. Il sert de référence ou de pointeur vers le fichier d'origine, ce qui signifie qu'il s'agit de la copie miroir exacte du fichier d'origine auquel il pointe vers. Autrement dit, un lien dur n'est qu'un nom supplémentaire pour un fichier déjà existant.
Comportement
Comme un fichier lié à Soft contient une valeur inode distincte pointant vers le fichier d'origine, le lien devient inaccessible si le fichier ou le répertoire d'origine est supprimé du système. Il s'agit juste d'un raccourci vers un fichier afin que vous puissiez supprimer les liens souples sans affecter réellement le fichier ou le répertoire d'origine. Contrairement aux liens souples, les liens durs partagent la même valeur inode que l'original pointant vers le même emplacement de fichier. Les liens durs sont plus flexibles que les liens souples car vous pouvez accéder au fichier même si le fichier d'origine est supprimé du système.
Commande
Pour établir des liens entre les fichiers du système basé sur UNIX, vous devez utiliser la commande «in». Un lien souple se réfère à un chemin symbolique qui indique l'emplacement du fichier d'origine mais pas le contenu. Un lien souple est créé à l'aide d'une commande «in -s».
En -s
Ici, vous remplaceriez le 'source_file' par le fichier d'origine pour lequel vous souhaitez créer un lien doux et `` MyFile '' par le nom du lien souple ou du lien symbolique et la commande en -s crée le lien souple vers un fichier Nom, les deux dans le répertoire actuel.
D'un autre côté, la commande «in» est utilisée pour créer un lien dur. La commande in est une commande UNIX standard utilisée pour créer un lien dur pour pointer vers plusieurs fichiers avec le même nom.
Dans
Structure
Contrairement aux liens souples qui peuvent être utilisés pour relier les fichiers et les répertoires, les liens durs ne peuvent lier que des fichiers mais pas des répertoires. La différence donne des liens souples certaines qualités que les liens durs n'ont pas, comme la possibilité de lier le système de fichiers. La création et la suppression des liens symboliques n'affecteront pas le fichier d'origine. Les liens durs, en revanche, ne peuvent pas être utilisés pour lier les fichiers en dehors du système de fichiers. Les liens durs partagent la même valeur inode avec le contenu du fichier réel, donc la suppression d'un lien n'affectera pas d'autres liens et affichera toujours le contenu du fichier.
Liaison douce vs. Lien dur: graphique de comparaison
Résumé de la liaison souple vs. Lien dur
En un mot, les liens souples et les liens durs permettent à plus d'un nom de fichier de se référer au même fichier ailleurs, mais la différence réside dans la façon dont ils se comportent lorsque le lien source est supprimé du système. Un lien dur prend moins d'espace qu'un lien souple, mais toute modification apportée au lien dur reflétera éventuellement dans le fichier d'origine, alors que toute modification du lien souple n'aura aucun effet sur le fichier d'origine. Un lien souple est comme une fonction de raccourci du système d'exploitation Windows utilisé comme un alias pour se référer au fichier ou au répertoire d'origine, tandis qu'un lien dur est comme une réplique du fichier d'origine qui relie deux fichiers dans le même système de fichiers.