Question

Je sais qu'il est une condition de liens durs qu'ils ne peuvent pas s'étendre sur les systèmes de fichiers. Est-ce à appliquer les montages NFS? Compte tenu de la structure de répertoire suivant, je serais en mesure de créer un lien dur dans le répertoire A qui pointe vers un fichier dans le répertoire B?

/root
    /A
    /B  <-NFS mount

Par exemple, je voudrais courir ln /root/B/file.txt /root/A/linkedfile.txt

Était-ce utile?

La solution

Eh bien, puisque /B est un système de fichiers séparé (un système de fichiers NFS monté) vous ne pouvez pas faire un lien fort entre elle et /A, parce qu'ils ne sont pas sur le même système de fichiers.

Il est parce qu'un hardlink ne fait pas une copie des données ne mettre une copie de la pointeur à ces données, de sorte qu'ils doivent être dans le même " espace d'adressage ».

Autres conseils

Ce serait une bonne idée d'abord comprendre exactement ce qu'est un lien dur est.

En général, sur un système unix, un nom de fichier dans un répertoire des points à un numéro d'inode - essentiellement un numéro pour un fichier. est tout simplement créer un autre nom de fichier avec le même numéro d'inode Un « lien dur ». Maintenant, vous avez des noms différents qui pointent vers le même fichier numéroté.

Mais remarquez qu'il n'y a pas vraiment un lien direct entre ces deux noms. La relation est que Name1 et Nom2 ont tous deux leur numéro d'inode mis à 12756 - mais il n'y a rien que vous pouvez tenir et dire « cette chose dans ma main est le lien entre deux fichiers ». Ils sont seulement deux entrées de la base de données qui partagent un numéro d'identification. Vous pouvez faire une requête (lente, puisque vous marchez dans chaque entrée de fichier sur le système) pour les noms de fichiers qui partagent un numéro d'identification, mais c'est tout.

Il ne veut pas dire quoi que ce soit pour créer un « lien dur entre deux systèmes de fichiers » - puisque deux systèmes de fichiers ont des schémas de numérotation (Inode 1234 sur le système un, et 1234 sur le système à deux, pointez sur fichiers complètement différents), et seule chose que vous avez à stocker est un nom + inodeNumber, il n'y a rien à faire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top