[LINUX] Quelle est la différence entre les liens symboliques et les liens durs?

Connaissez-vous la différence entre lien symbolique et lien dur et comment les utiliser correctement? Je ne savais pas grand-chose à ce sujet, alors j'ai cherché des articles connexes.

Cet article était intuitivement facile à comprendre en tant que figure. Chaque fonctionnalité est également écrite de manière facile à comprendre. https://eng-entrance.com/linux-permission-link

Lien symbolique

N'est-il pas facile de comprendre l'image des liens symboliques comme des raccourcis? Pensez à créer un lien symbolique symkink_fname qui référence un fichier appelé ʻoriginal_fname`.

./original_fname ./symlink_fname

ici

cat ./symlink_fname

Quand tu cours

cat ./original_fname

Devrait signifier la même opération que. En d'autres termes

rm ./symlink_fname

Est


rm ./original_fname

Sera équivalent à, et le fichier original ʻoriginal_fname` sera supprimé.

À ce propos, les précautions lors de la suppression des liens symboliques sont décrites dans cet article, par exemple. https://mimirswell.ggnet.co.jp/blog-165 Le fait est que vous pouvez supprimer le lien avec la commande rm, mais c'est dangereux, alors utilisons ʻunlink`.

Lien dur

D'autre part, qu'en est-il des liens durs?

./original_fname ./hardlink_fname

Chaque chemin pointe vers le même fichier d'entité. Dans cet état


open ./hardkink_fname

Lorsque vous exécutez

open <Fichier réel>

Ça veut dire. Ce qui est intéressant, c'est qu'il existe quelque chose comme un compteur de référence au fichier réel,

rm ./hardkink_fname

Supprime le chemin . / Hardkink_fname, mais pas le fichier réel.

Parce qu'à l'origine, la situation à laquelle je pense maintenant ./original_fname ./hardlink_fname Parce qu'il y avait deux «références», même si une «référence» est supprimée, il en reste une.

Et lorsque le nombre de "références" devient 0, il semble que l'entité soit également supprimée.

inode et fichier réel

Jusqu'à présent, nous avons utilisé les mots «entité» et «référence» pour saisir l'image, mais pour l'expliquer correctement, il faut toucher l'inode.

Cet article est-il facile à comprendre? https://qiita.com/katsuo5/items/fc57eaa9330d318ee342

Comment utiliser les liens physiques

Il semble que les liens symboliques soient couramment utilisés. Alors, quand les liens physiques sont-ils utilisés?

Lisez la réponse à cette question, je vois! Je pense. https://q.hatena.ne.jp/1265361495

On dit que la destination est utilisée pour désigner le courrier de plusieurs personnes sur le serveur IMAP. Cela signifie que vous n'avez pas à le copier et qu'il sera supprimé correctement.

...J'ai beaucoup appris!

Recommended Posts

Quelle est la différence entre les liens symboliques et les liens durs?
Quelle est la différence entre «pip» et «conda»?
Quelle est la différence entre Unix et Linux?
[Introduction à Python] Quelle est la différence entre une liste et un taple?
Quelle est la différence entre usleep, nanosleep et clock_nanosleep?
J'ai étudié le comportement de la différence entre lien dur et lien symbolique
À propos de la différence entre "==" et "is" en python
Différence entre ps a et ps -a
Différence entre == et est en python
[Introduction au modèle des maladies infectieuses] Quelle est la différence entre l'épidémie d'avril et cette épidémie? .. .. ‼
[Python] Notation inclusive. Écrivez une déclaration simple pour. (Une collection est la différence entre un itérable et un itérateur)
La réponse de "1/2" est différente entre python2 et 3
C'est un Mac. Qu'est-ce que la commande Linux Linux?
À propos de la différence entre PostgreSQL su et sudo
Y a-t-il une contradiction entre le parti qui protège le peuple de la NHK et le parti qui protège la NHK du peuple?
Qu'est-ce qu'une distribution?
Qu'est-ce qu'un terminal?
Qu'est-ce qu'un hacker?
Qu'est-ce qu'un pointeur?
Liens physiques et liens symboliques
Prise en compte de la différence entre la courbe ROC et la courbe PR
Différence approximative entre Unicode et UTF-8 (et ses compagnons)
BERT peut-il comprendre la différence entre «Ame (bonbons)» et «Ame (pluie)»?
Comment utiliser argparse et la différence entre optparse
Qu'est-ce qu'un moteur de recommandation? Résumé des types
Différence entre processus et travail
Ajoutez "/" à la fin lorsque vous complétez des liens symboliques dans un répertoire
Différence entre "categorical_crossentropy" et "sparse_categorical_crossentropy"
Quelle est la fonction d'activation?
Comprendre la différence entre l'affectation cumulative aux variables et l'affectation cumulative aux objets
Différence entre régression et classification
Qu'est-ce qu'un arbre de décision?
Qu'est-ce qu'un changement de contexte?
[Python] Python et sécurité-① Qu'est-ce que Python?
Qu'est-ce qu'un super utilisateur?
Un résumé approximatif des différences entre Windows et Linux
Qu'est-ce qu'un appel système
Différence entre les back_populates et backref de SQL Alchemy et lorsque ni l'un ni l'autre n'est utilisé
Différence entre np.array et np.arange
[Définition] Qu'est-ce qu'un cadre?
Différence entre le processus de premier plan et le processus d'arrière-plan compris par principe
Différence entre MicroPython et CPython
A quoi sert l'interface ...
Qu'est-ce qu'une fonction de rappel?
Qu'est-ce que la fonction de rappel?
L'image est Namekuji
Différence entre return et print-Python
Que faire si vous chattez ou suivez un fichier binaire et que le terminal est brouillé
J'ai essayé de trouver la différence entre A + = B et A = A + B en Python, alors notez
Comment donner et signifier l'option des contraintes dans scipy.optimize.minimize
Qu'est-ce qu'un chien? Volume de requêtes GET et paramètres de requête
[Ln] Comment coller le lien symbolique du répertoire est compliqué
[Recherche gratuite] Y a-t-il un lien entre les mises à jour de Wikipédia et les tendances?
Qu'est-ce qu'un chien? Django - Volume d'obtention du nom et de la date à partir de l'URL
Python / Numpy> Lien> Différence entre numpy.random et random.random> thread-safe ou non
Différence entre Ruby et Python Split
[Python] Qu'est-ce qu'une fonction zip?
[Python] Qu'est-ce qu'une instruction with?