服务端使用 Go 编写,我已在 Linux 和 Windows 上测试运行过了,不过我没有 OS X 运行环境,欢迎有 OS X 环境的同学尝试。
因客户端依赖 fuse 库的缘故,目前仅支持 Linux 。如需移植到 OS X 的话,FUSE for OS X 应该可以解决这个依赖。
这个简单的文件系统类似于 sshfs ,不过 sshfs 需要服务端开放 ssh 服务,这在 Windows 上比较麻烦。而 NFS 配置又过于繁琐。这个网络文件系统使用很简单:
服务端开启文件共享服务:
# 查看帮助
tcfsd -h
# 把整个 e 盘共享出去, 使用 rc4 加密传输, 密码为 foobar, 监听端口为 4567
tcfsd -crypto "rc4" -key "foobar" -port ":4567" -dir "e:"
客户端挂载服务端共享的目录:
# 查看帮助
./tcfs -h
mkdir mountpoint # 挂载点必须是空目录, 创建一个空目录
./tcfs -s "服务端 IP 地址" -p 4567 -m rc4 -k foobar mountpoint
然后客户端就可以像访问本地文件系统一样访问服务端共享的 E 盘了。