partition – ln -s vs mount –bind

前端之家收集整理的这篇文章主要介绍了partition – ln -s vs mount –bind前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用ln -s或mount -bind之间有什么实际区别吗?

我想将一些文件夹移动到另一个分区,而不改变它们的守护进程设置,并想知道我应该采取什么方法.

我更喜欢ln -s,因为它需要最少的设置(没有/ etc / fstab修改),但也许有一个原因,它不常见?

解决方法

当然好.如果你执行ln -s你创建一个符号链接,这是一个指向某个文件系统对象的 inode,这就是为什么符号链接可以遍历文件系统而硬链接不能:硬链接没有自己的inode.

如果使用–bind挂载文件系统,则为设备或文件系统创建第二个挂载点.

如果您将符号链接设想为重定向,那么设想 – 绑定已挂载的文件系统作为创建另一个数据网关.

符号链接和绑定坐骑是一个完全不同的球赛.

–bind mount对我来说似乎更健壮,它可能比使用符号链接快一点.另一方面,使用符号链接没有严重的缺点,因为性能命中率很小(如果它存在的话).

编辑:我一直在考虑这个问题,而且性能影响可能会比我原先想象的要大一些.如果您的应用程序读取了许多不同的文件,那么每个打开的新文件都需要额外的读取.一些研究@L_403_1@表明我的假设是正确的,所以如果你在那里运行IO重型应用程序,请考虑使用–bind选项安装在符号链接解决方案之上.

它不常见的原因可能是符号链接在ls中可见,而绑定挂载仅在查看/ proc / mounts或/ etc / mtab时可见(这是mount命令的作用,如果它没有参数执行).除此之外,我认为没有任何问题.不过,如果有,我会感兴趣.

另外:ln -s的另一个问题是,对于某些应用程序,当路径被取消引用时,如果它“期望”某些项目位于特定位置,则可能导致应用程序无效.

猜你在找的Linux相关文章