使用客户端访问服务器上绑定挂载到 NFS 共享的文件

使用客户端访问服务器上绑定挂载到 NFS 共享的文件

我有一个家庭服务器,有多个驱动器,为了简单起见 /media/user/Photos /media/user/Software

两者都是单独导出的 NFS

然后有一个单独的目录“/media/user/Software/software”,其中包含一堆....软件等等。

遗憾的是,安装在 /media/user/Software 上的驱动器刚刚出现故障,我备份了信息。我将其备份到 /media/user/Photos/software

现在我有很多应用程序被设置为在 /media/user/Software/software 中查找配置甚至一些二进制文件。我希望在攒钱买新驱动器来替换另一个驱动器的几周/几个月内仍能访问它们。

首先,我只是创建了一个符号链接,它在本地运行良好,但如你所知,它在远程系统上效果不佳。

然后我想我可以绑定安装它,这样就可以在服务器上工作了

sudo mount --bind /media/ketterer/Photos/software/ /media/ketterer/Software/software/

再次,这在本地运行良好,但对我的远程客户端却没有像我想象的那样工作,我认为绑定挂载复制了目录树,所以我认为我能够“通过”原始路径从远程访问文件。

我哪里做错了?或者有什么更好的方法可以做我想做的事?这可能是 NFS 导出问题,还是根本不可能?

答案1

我假设/media/ketterer/照片/media/ketterer/软件是服务器上的单独导出。您可以在服务器上
使用或来显示/验证导出。showmount -e <nfs-server-ip>exportfs -v

您必须crossmnt在服务器上指定才能使绑定挂载目录可见。

假设/media/ketterer/Photos是导出路径,采用 NFS 导出配置并添加crossmnt。例如/etc/exports..

/media/ketterer/Photos 192.168.122.0/24(rw,sync,no_root_squash,no_subtree_check,crossmnt)

更改后,您必须告诉 NFS 服务器获取这些更改。

exportfs -ar

最后在您的客户端上重新挂载 NFS 共享。

相关内容