我有一个托pipe公司OPENVZ内运行的Ubuntu 11.10 VPS。 我试图让它挂载一个使用NFS4的远程NFS服务器,但只能使用版本3工作。我一直在search这个相当多的东西,偶尔我会读一些“NFS4客户端无法在OpenVZ容器中工作“。 我找不到最新的具体答案,所以我会在这里问:
这是真的吗?如果真是这样,那么我就可以停止尝试这个工作! 但是,如果这是可能的,为什么它不工作? 这是我所做的 –
据负责工程师介绍,我login了一张票,现在相关模块已经安装在VPS节点上。 他回答说,现在应该是工作,但我认为他可能只是重新启用“标准”的NFS模块(见上面重新:cat / proc / filesystems | grep nfs)
$ sudo mount -v -t nfs4 [SERVER_IP]:/ NFS-ARCHIVE / mount.nfs4:pinging:prog 100003 vers 4 prot tcp port 2049 mount.nfs4:没有这样的设备
$ sudo mount.nfs [SERVER_IP]:/ / NFS-ARCHIVE / -w -n -o nfs4 mount.nfs:不支持的nfs挂载选项:nfs4
我读过,我可能需要通过在安装之前运行modprobe nfs 手动加载模块 ,但我不认为我可以在VPS上做到这一点。 客户端上的sudo modprobe -l什么也不返回
任何帮助非常感谢,特别是如果你能够明确地回答第一个问题 – 至less如果我知道这是不可能的,那么我可以继续使用第三版来设置一切!
更高版本的OpenVZ在容器中支持NFS4。 我们正在使用最新的CentOS 6.2以及最新的稳定的OpenVZ 2.6.32-042stab053.5和NFS4。
当NFS 4客户端在OpenVZ VPS(使用Proxmox 2.1testing)中工作时,如果启用了functionnfs:on并且nfs模块在主机(例如容器0)上被加载,则名称 – > UID查找总是使用运行在主机上的rpc.idmapd。 这意味着您需要在主机/ etc / passwd中拥有与您的VPS中相同的用户。
此外,如果您的VPS,主机和服务器之间的UID / GID号码不匹配,则默认的安装选项sec = sys权限不起作用! 人们可以预料,与nfs3(因为它通过电线发送的UID / GID号码),但与nfs4用户名/组名称发送。 有关更多详细信息,请参阅http://thread.gmane.org/gmane.linux.nfsv4/7103/focus=7105 (并且回答RHEL – NFS4:安装/导出为rw,用户写入权限被拒绝 )。
结果是你可以在sec = sys提供的VPS中挂载nfs4
你有一个新的openVZ内核。
你有足够的控制主机和VPS设置
您可以忍受必须共享VPS /主机用户名的隐含限制。
使用kerberos / ldap或者即使有办法控制用于挂载的idmapd域也许可以设置更灵活的东西,但是我对这些选项没有经验。
VPS本身必须启用functionnfs:on。 请求您的托pipe公司来启用该function。
你可以在维基上find更多的信息: http : //wiki.openvz.org/NFS