我有以下exec
将 Linux (CentOS 6) 主机加入 Active Directory 域的内容。从 bash 终端以 root 身份运行时,它会成功运行,并且主机已正确加入 AD 域。
但是,当在 puppet 中运行时,net ads join
命令失败并显示:
加入域失败:为机器帐户设置密码失败(NT_STATUS_ACCESS_DENIED)
这是执行
exec { 'adjoin':
command => "kinit [email protected] -k -t /etc/krb5.keytab && net ads join createcomputer='Machines/Servers/Linux Servers' osName='${operatingsystem}' osVer=${operatingsystemrelease} -k",
unless => "net ads testjoin -k | grep -q 'Join is OK'",
provider => shell,
user => root,
path => '/usr/sbin:/usr/bin:/sbin:/bin',
require => [
File['/etc/krb5.conf'],
File['/etc/krb5.keytab'],
],
logoutput => true,
}
我尝试过使用和不使用provider
anduser
参数。