我们的 Kubuntu 计算机配置为通过 AutoFS 自动连接到其网络驱动器。当我们将机器升级到库班图 18.04 LTS此 AutoFS 连接不再有效。它在 Kubuntu 14.04 LTS 和 Kubuntu 16.04 LTS 中仍然运行良好。
我已在调试模式下运行 autoFS(自动挂载):
自动挂载-f-d
..并收到以下错误:
mount error(126): Required key not available
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
我可以使用 klist 并看到存在 kerberos 密钥,但仍然无法映射(为什么?)
现在,经过一些愚弄后,kerberos 密钥现在只能在调试模式下可靠地工作(automount -f -d)。当作为服务运行时(service autofs start),它根本不起作用。为什么它只能在调试模式下工作..?
这是 daemon.log 中的错误:
May 16 17:49:02 computer1234 cifs.upcall: get_cachename_from_process_env: pathname=/proc/1234/environ
May 16 17:49:02 computer1234 cifs.upcall: get_existing_cc: default ccache is FILE:/tmp/krb5cc_12345678
May 16 17:49:02 computer1234 cifs.upcall: get_tgt_time: unable to get principal
May 16 17:49:02 computer1234 cifs.upcall: krb5_get_init_creds_keytab: -1765328174
May 16 17:49:02 computer1234 cifs.upcall: Exit status 1
我尝试在 /etc/request-key.d/cifs.spnego.conf 中添加“-t”,但它仍然不起作用
如果您有类似问题可以尝试添加日志记录=“详细”或者日志记录=“调试”在 /etc/autofs.conf 中获取更多详细信息。
昨天我们注意到 autofs 正在寻找以此格式命名的 kerberos 票证文件:
/tmp/krb5cc_12345678
然而,实际的 kerberos 票证文件名末尾多了 7 个字符,如下所示:
/tmp/krb5cc_12345678_1A23B4
答案1
按照更新2上面的问题是 autofs 正在寻找以此格式命名的 kerberos 票证:
/tmp/krb5cc_12345678
但实际的 kerberos 票证是按以下格式命名的:
/tmp/krb5cc_12345678_1A23B4
要修复文件名,请编辑 /etc/sssd/sssd.conf 并在相关域部分下添加以下内容,即:在 [domain/yourAD_ServerName] 下
krb5_ccname_template=FILE:%d/krb5cc_%U
我必须重新启动才能使这些更改生效。我尝试重新启动 sssd-secrets、sssd 和 autofs,但这还不够。只有重新启动后,文件名的格式才正确,然后 autofs 才能在 Kubuntu 18.04 LTS 中正常工作。