好吧,我在这里疯狂。
尝试设置OS X(10.8.2)NFS客户端以连接到Debian(6.0.6)nfs服务器。 我主要是按照这里的说明: https : //help.ubuntu.com/community/NFSv4Howto哪些是非常彻底的。 但是,有两个问题:
mount_nfs: can't mount /mnt from servername.domain onto /home: Permission denied 我设置了两个主体, nfs/servername@REALM和nfs/clientname@REALM ,并将其复制到客户机和服务器上的/etc/krb5.keytab 。
服务器(根据Kerberos日志)获取nfs/servername.REALM票据,所以我怀疑OS X NFS客户端不是以某种方式使用它的主体。
有任何想法吗?
更新: /var/log/daemon.log报告:
Oct 7 19:12:43 servername rpc.svcgssd[19635]: ERROR: GSS-API: error in handle_nullreq: gss_accept_sec_context(): Unspecified GSS failure. Minor code may provide more information - No supported encryption types (config file error?)
按照此页面: http ://permalink.gmane.org/gmane.comp.encryption.kerberos.heimdal.general/5551我已经删除了除了客户端和服务器krb5.keytab文件中的所有DESencryption选项。 并在/etc/krb5.conf文件中添加了allow_weak_crypto 。 并重新启动hfs-kernel-server ,它仍然不起作用。 叹。
事实上,现在它报告:
Oct 7 19:26:55 servername rpc.svcgssd[19721]: ERROR: GSS-API: error in handle_nullreq: gss_accept_sec_context(): Unspecified GSS failure. Minor code may provide more information - Wrong principal in request
那么“请求中的错误的主体”是否意味着客户通过了错误的krb5主体? 我可以在OS X中控制吗?
在Mac OS X 10.8下,NFSv4似乎已经被打破了。
非官方的说法是,苹果已经意识到了这个问题,但没有一个时间表来解决这个问题。 同时,共识是opendirectoryd相当破碎。
几个地方,你可能会检查更好的debugging信息:
# sysctl -w vfs.generic.nfs.client.idmap_ctrl=127
当您尝试运行ls命令时,请观察/var/log/system.log的输出。
# odutil set log debug
观察/var/log/opendirectoryd.log的输出
使用dtrace来确定挂断的位置。
我们的经验是, nfs4_id2guid超时,因为opendirectoryd并不总是正确地向内核注册。
我的事情你应该尝试创build其他两个校长与您的域名添加到您的服务器名称。
像nfs/mysername.example.com@REALM和host/myclientname.example.com@REALM
但无论如何,在MacOSX上你必须有一个TGT之前尝试安装。
所以在mount之前试一下kinit(任何主体都可以)。
Personnaly,我设法在MacOSX上有一个nfs + kerberos。 但是在NFSV3中。
在NFSV4中我设法挂载它,但是速度很慢…非常慢。