将多个挂载点合并到一个点,但保持它们全部可读写

将多个挂载点合并到一个点,但保持它们全部可读写

我有 1,000 多个目录,分布在 6 台服务器上。从技术上讲,它们是主文件夹。可以保证永远不会有任何重复的文件夹名称。

我想要做的是将它们(NFS 或 SSHFS)挂载到第 7 台服务器,然后将它们全部合并到单个 /home 中,以便所有 6 台服务器都可以完全查看,并保持读写。

理论上这很容易,因为每个文件夹都属于单个服务器,文件夹内的写入可以转到具有父文件夹的服务器。不幸的是,UnionFS 和 OverlayFS 似乎不支持多个读/写文件系统。

有没有我想不到的方法可以做到这一点?我认为 1,000 个 NFS 挂载(每个主目录一个)效果不会很好,而且保持最新状态也很麻烦。

答案1

为每个服务器创建单独的挂载点。创建主目录到挂载点目录的符号链接。

答案2

我认为您想要的是绑定安装。

我的系统中有一个 OS 驱动器和一个数据驱动器。我的数据驱动器为/var和服务/home,并且安装在/mnt/DataDrive

为了使其映射到 /var 和 /home,我通过将此条目添加到我的fstab. /mnt/DataDrive/var /var none bind 0 0

这是关于绑定挂载

答案3

将目录集中到一个 NFS 共享中。导出该共享。

使用 autofs 自动挂载正在使用的目录。使用通配符后,您的 /home 映射可能类似于

 *         server:/export/home/&

如果 autofs 不起作用,请考虑在 /etc/fstab 中将整个共享挂载到 /home。因此 /home 的列表是几千个目录,但挂载的数量较少。

相关内容