golang NFSv3 服务器
Golang 网络文件服务器 === NFSv3 协议的纯 Golang 实现。 当前状态: * 最低限度的测试 * 支持挂载、只读和读写 * 使用方法 === 最有趣的演示目前位于 example/osview。 启动服务器 go run ./example/osview . 目录 ./ 中的本地文件夹将作为挂载中的初始视图。 向元数据或内容进行的更改将完全存储在内存中,不会写回到操作系统。 运行此演示时,它将打印正在监听的端口。 可以使用类似于 mount -o port=,mountport= -t nfs localhost:/mount 的命令访问挂载(适用于 Mac 用户)。
mount -o port=,mountport=,nfsvers=3,noacl,tcp -t nfs localhost:/mount (适用于 Linux 用户)
inode 或等效唯一标识符来引用文件系统中的文件。这些标识符在本文中被视为不透明标识符,这意味着在硬链接的情况下它们不会按预期工作。 * billy 抽象层不扩展到暴露文件的 uid 和 gid 所有权。如果文件系统的所有权很重要,则您需要确保 os.FileInfo 符合额外的约束。特别是,此库会查询 Sys() 逃逸口,如果您的文件系统填充了 syscall.Stat_t 具体结构,则将使用该对象中指定的所有权。您还可以返回一个 file.FileInfo,该结构在不同平台之间不变,因此 m暂无开放 Issues,或尚未同步最近议题。