运行Ubuntu 11.10的OpenVZ容器中的NFS4客户端?

我有一个托pipe公司OPENVZ内运行的Ubuntu 11.10 VPS。 我试图让它挂载一个使用NFS4的远程NFS服务器,但只能使用版本3工作。我一直在search这个相当多的东西,偶尔我会读一些“NFS4客户端无法在OpenVZ容器中工作“。 我找不到最新的具体答案,所以我会在这里问:

这是真的吗?如果真是这样,那么我就可以停止尝试这个工作! 但是,如果这是可能的,为什么它不工作? 这是我所做的 –

  • nfs-common安装在客户端,nfs-kernel-server安装在服务器上
  • 看到了在客户端上安装nfs-utils的一些说明,但是apt-get找不到这个包
  • 从客户端到服务器的挂载可以使用NFS版本3成功运行
  • 服务器似乎工作正常; 可以从我的桌面上运行的Ubuntu VM使用NFSv4成功安装
  • 但在成功的客户端机器上nfs AND nfs4被列在/ proc / filesystems中,在有问题的那个上只有nfs
  • 据负责工程师介绍,我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

  1. 你有一个新的openVZ内核。

  2. 你有足够的控制主机和VPS设置

    • 启用nfs4客户端VPS的nfs:on选项
    • 加载主机上的nfs模块
    • 在主机上运行rpc.idmapd守护进程
    • 控制主机上的/ etc / passwd条目
  3. 您可以忍受必须共享VPS /主机用户名的隐含限制。

使用kerberos / ldap或者即使有办法控制用于挂载的idmapd域也许可以设置更灵活的东西,但是我对这些选项没有经验。

VPS本身必须启用functionnfs:on。 请求您的托pipe公司来启用该function。

你可以在维基上find更多的信息: http : //wiki.openvz.org/NFS