我正在使用此命令将 Linux 框添加到 Active Directory:
net ads join -U username%password
我必须通过检查域中是否存在 Linux 框来使此命令幂等。命令行帮助它没有用。
我想知道是否有类似的东西:
net ads search computer-name
我正在使用 Samba 3
答案1
使用net ads testjoin
:
# net ads testjoin -k
Join is OK
→ 此框已加入。现在将其从域中移除并testjoin
返回 -1:
# net ads leave -k
Deleted account for 'DEADBEEF' in realm 'EXAMPLE.COM'
# net ads testjoin -k
Join to domain is not valid: NT code 0xfffffff6
# echo $?
255
答案2
您可以使用net ads dn 'queryhere'
它来搜索计算机对象。
例如,我可以使用以下命令在我的域的“服务器”OU 中找到“Nagios”Linux 服务器:
net ads dn 'CN=nagios,OU=Servers,DC=my,DC=domain,DC=com' cn -S DC_NAME -P -l
开关-P
使其使用计算机帐户进行查找(计算机必须加入域才能工作)并-l
提供更详细的信息。如果失败,使用-d 10
将显示原因。