Putain, oui. Si vous exécutez le, ln -s
vous créez un lien symbolique, qui est un inode pointant vers un certain objet du système de fichiers, c'est pourquoi les liens symboliques peuvent traverser les systèmes de fichiers et les liens matériels ne le peuvent pas: les liens matériels n'ont pas leur propre inode.
Si vous montez un système de fichiers avec --bind
, vous créez un deuxième point de montage pour un périphérique ou un système de fichiers.
Si vous envisagez un lien symbolique comme une redirection, envisagez un --bind
système de fichiers monté comme créant une autre passerelle vers les données.
Les liens symboliques et les montures de liaison sont un tout autre jeu de balle.
Le --bind
montage me semble un peu plus robuste et il est probablement un peu plus rapide que de travailler avec un lien symbolique. D'un autre côté, il n'y a pas d'inconvénients sérieux à utiliser le lien symbolique, car les performances seront faibles (si elles existent).
Edit : J'y ai pensé, et le hit de performance pourrait être un peu plus grand que je ne le pensais à l'origine. Si vous avez une application qui lit beaucoup de fichiers différents, chaque nouveau fichier ouvert nécessitera une lecture supplémentaire. Certaines recherches suggèrent ici que mon hypothèse est correcte, donc si vous avez une application IO lourde en cours d'exécution, envisagez l' --bind
option de monter au-dessus de la solution de lien symbolique.
La raison pour laquelle elle n'est pas courante, est probablement le fait qu'un lien symbolique est visible dans un ls
, alors qu'un montage bind n'est visible que lorsque vous regardez / proc / mounts ou / etc / mtab (ce que fait la commande mount, si elle est exécuté sans paramètres). À part cela, je ne pense pas qu'il y ait de problème. Je serais intéressé s'il y en avait, cependant.
Addition : un autre problème avec ln -s
est que pour certaines applications, lorsque le chemin est déréférencé, il peut faire reculer l'application s'il "s'attend" à ce que certains éléments soient à des endroits spécifiques.