我有一个 Linux NFS,/etc/exports 如下所示:
/opt/nfs 10.8.0.0/20(no_root_squash, rw, sync)
我可以从其他 Linux 机器上读写文件。但是,我在 Windows 客户端上只有读取权限。
我在 Windows Server 2012 R2 机器上所做的是安装“NFS 服务”并使用以下命令来安装它。有人可以指出哪里出了问题吗?
谢谢!
mount \\10.8.0.2\opt\nfs X:
编辑:我尝试mount -u:user -p:password \\...
与我在 Linux 和 Windows 端创建的相同用户一起使用,但仍然不起作用。以下是 Windows 消息: 您需要权限才能执行此操作 您需要 S-1-1-0 的权限才能更改此文件
答案1
这是我发现的一个技巧,可以将 Windows 客户端的默认 UID 和 GID 设置为与 nfs 共享的 UID 和 GID 相匹配。这是完整文章的链接Windows 7:NFS 客户端和用户名映射,无需 AD、SUA 这是基本步骤。
1)regedit
在Windows机器上运行并找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default
2) 添加两个 DWORD 值:AnonymousUid
和AnonymousGid
3) 将这些值设置为共享 linux 目录所有者的 UID 和 GID。
4) 重新启动NFS 服务客户端或重新启动计算机。
*.reg
快速添加的文件示例:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default]
"AnonymousUid"=dword:000003e8
"AnonymousGid"=dword:000003e8