【问题标题】:NFS Client libraryNFS 客户端库
【发布时间】:2011-01-27 09:55:32
【问题描述】:

我正在寻找一些独立的库来访问 NFS 共享。 我不是在寻找安装共享,只是浏览和访问文件以供阅读。

最好使用类似于opendirscandirread 等常规 POSIX 操作的简单 API。

提前致谢!

【问题讨论】:

  • 最好是 iPhone,但我会满足于任何 UNIX-y

标签: client posix nfs


【解决方案1】:

这是NFS client library 的链接,但它看起来很有希望,引用:

NFS 客户端一次只处理一个连接,但没有连接 很长。 读取请求必须小于 8000 字节。这与数据包大小有关。 你不想知道。 一旦同时打开 256 个文件——所有应用程序都打开,因为客户端 不以任何方式区分请求——文件句柄开始 覆盖。客户端打印错误。 如果客户端在打开套接字时遇到问题,它会优雅地退出,包括 通过套接字将消息返回给应用程序。例外是如果 它被赋予了一个错误的主机名来挂载,在这种情况下它只会以失败响应 而不是放弃。 如果代码的格式看起来乱七八糟,那是因为代码是写的 Mac 上的一半(制表符 = 4 个空格)。

这是另一个链接,可以解释在 sourceforge.net 上同时打开的 256 个文件的限制,请参阅 sourceforge 上常见问题解答的 B3...

编辑:这是在Stackoverflow 上发布的关于递归读取可以轻松修改为scandir 的目录的问题...

【讨论】:

  • 谢谢,我应该提到我也找到了那个库。不幸的是,它提供了一个非常基础的 API,并且不允许像 scandir 这样的操作。这是一个交易破坏者:(
  • 您可以通过递归方式使用 opendir、readdir 和 closedir 来合并一个简单的 scandir....
  • 所有这些点都很清楚,但有问题的库不支持 opendirreaddir
【解决方案2】:

现在github上有一个libnfs库:https://github.com/sahlberg/libnfs
我看到它有 DebianFreeBSD 包。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-29
    • 2018-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-21
    • 2017-01-01
    • 1970-01-01
    相关资源
    最近更新 更多