将硬安装的NFS卷视为软

时间:2014-02-07 20:45:03

标签: c linux nfs

我正在编写一个Linux程序,用于读取和写入NFS服务器上的文件。分享很难;尝试访问它将无限期地阻止它们工作。我的程序无限期阻塞是不好的;即使文件不可用,它仍然能够做有用的工作。重新安装股票不是一种选择。

有两个进程,其中一个进行工作并且不会阻塞,另一个进程处理文件IO并且可能阻塞是一个选项,但会构成一个重大变更。我想避免这种情况。真的,我想说,"我知道你已经很难装,所以天真的程序可以假装你是一个高度可靠的本地磁盘。但我知道的更好,我准备应对任何失败的访问,类似于你在软安装时的行为。"所以:

在C中,如何访问硬盘挂载的NFS共享上的文件,如果服务器不可用而不是无限期阻塞,则会收到错误?

如果有必要,我可以以root身份运行,但不愿意。使用root来重新安装共享是正确的。我可能会依赖新功能,但进一步的支持会更好。

我的研究表明答案是,这是不可能的,但也许我错过了一些东西。

1 个答案:

答案 0 :(得分:3)

你没有错过任何东西,你永远不会收到服务器不可用的错误,因为内核永远不会在硬安装的nfs挂载点上提供它们。

因为hard选项是挂载点的属性,所以你不能让应用程序选择,因为内核没有按照这种方式运行。

但是,您确实提到可以以root身份运行该应用程序。为什么不将文件系统挂载到其他地方软件,然后获得预期的行为?