kerberos 导入 KDC Account Manager 凭据 命令 失败

CDH6.3.2平台kerberos导入 KDC Account Manager 凭据命令失败

报错信息:

/opt/cloudera/cm/bin/import_credentials.sh failed with exit code 127 and output of <<
+ export PATH=/usr/kerberos/bin:/usr/kerberos/sbin:/usr/lib/mit/sbin:/usr/sbin:/usr/lib/mit/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
+ PATH=/usr/kerberos/bin:/usr/kerberos/sbin:/usr/lib/mit/sbin:/usr/sbin:/usr/lib/mit/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
+ KEYTAB_OUT=/var/run/cloudera-scm-server/cmf1992343635361899048.keytab
+ USER=USERNAME-REDACTED
+ passwd=BUNDLE-REDACTED KVNO=1
+ SLEEP=0
+ RHEL_FILE=/etc/redhat-release
+ '[' -f /etc/redhat-release ']'
+ set +e
+ grep Tikanga /etc/redhat-release
+ '[' 1 -eq 0 ']'
+ '[' 0 -eq 0 ']'
+ grep 'CentOS release 5' /etc/redhat-release
+ '[' 1 -eq 0 ']'
+ '[' 0 -eq 0 ']'
+ grep 'Scientific Linux release 5' /etc/redhat-release
+ '[' 1 -eq 0 ']'
+ set -e
+ '[' -z /etc/krb5.conf ']'
+ echo 'Using custom config path '\''/etc/krb5.conf'\'', contents below:'
+ cat /etc/krb5.conf
+ IFS=' '
+ read -a ENC_ARR
+ for ENC in '"${ENC_ARR[@]}"'
+ echo 'addent -password -p USERNAME-REDACTED -k 1 -e des3-hmac-sha1'
+ '[' 0 -eq 1 ']'
+ echo PASSWORD-REDACTED
+ for ENC in '"${ENC_ARR[@]}"'
+ echo 'addent -password -p USERNAME-REDACTED -k 1 -e arcfour-hmac'
+ '[' 0 -eq 1 ']'
+ echo PASSWORD-REDACTED
+ echo 'wkt /var/run/cloudera-scm-server/cmf1992343635361899048.keytab'
+ ktutil
/opt/cloudera/cm/bin/import_credentials.sh: line 61: ktutil: command not found

>>


报错显示:61行 ktutil命令未找到

于是查看ktutil的位置和权限,没有问题

img

查看import_credentials.sh 代码,61行的代码应该也没有问题

img

哪位朋友帮我解决一下,谢谢

报错内容和截图发给我看看

根据提供的错误信息,无法准确确定导入 KDC Account Manager 凭据命令失败的具体原因。但是根据错误信息可以发现,脚本执行失败的错误码是 127,这可能与脚本中使用的某个命令无法执行相关。可以尝试按照以下步骤排除错误:

1.检查系统中的 kerberos、KDC 软件是否已经安装、配置并启动。
2.确认脚本中使用的所有命令是否在系统中安装并可用,如 /usr/kerberos/bin/kadmin、/usr/bin/expect 等。
3.检查脚本中的语法错误和逻辑错误,以确定是否需要更正脚本。
4.尝试手动执行脚本中的命令,观察执行结果是否与预期一致,以确定是否需要修改脚本。

另外,也可以根据错误信息提供的相关日志信息,查看是否存在其他的提示或错误信息,以帮助确定导入 KDC Account Manager 凭据命令失败的具体原因。

这个错误可能是由于没有安装Kerberos工具包导致的,可以试试安装Kerberos工具包,然后重新运行import_credentials.sh脚本,以解决这个问题

这个错误信息可能意味着你的系统环境没有安装或找不到ktutil这个命令。
ktutil是一个用于管理keytab或srvtab文件的命令行工具。题主可以检查一下你的系统是否已经安装了kerberos相关的软件包,比如krb5-user。
如果已经安装了,可能需要指定ktutil的完整路径,或者把它添加到你的环境变量中去。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

import_credentials.sh failed
import_credentials.sh失败
import_credentials.sh: line 61: ktutil: command not found
import_credentials.sh:第61行:ktutil:未找到命令
联系这2个报错,猜测问题在kerberos认证没配置好
参考实例思路:CDH 的Kerberos认证配置,链接:https://blog.csdn.net/wulantian/article/details/42173095/