2017-05-24 19 views
0

我想编写一个ldapmodify命令并传入一个ldif文件以将计算机移动到新的OU。这意味着我需要更改DN。LDAPMODIFY - 用于修改计算机对象的DN的LDIF格式

例子:

CN = joesworkstation,OU =培训,OU =电脑,DC =我,DC =域,DC = com的

CN = joesworkstation,OU =笔记本电脑, DC =我,DC =域,DC = com

man ldif显示如何为用户重命名CN,但不更改计算机的DN。根据他们的例子,这是我的ldif文件格式猜测:

dn: CN=joesworkstation,OU=training,OU=computers,DC=my,DC=domain,DC=com 
changetype: modify 
replace: dn 
dn: CN=joesworkstation,OU=laptops,DC=my,DC=domain,DC=com 
deleteoldrdn: 1 

这是最正确的方法吗?

回答

0

我终于能够得到一个解决方案,终于今天工作。 要更新计算机对象的DN我用下面的LDIF格式的文件:

dn: CN=joesworkstation,OU=training,OU=computers,DC=my,DC=domain,DC=com 
changetype: moddn 
newrdn: joesworkstation 
deleteoldrdn: 1     
newsuperior: OU=laptops,DC=my,DC=domain,DC=com 

这工作得很好,保持了计算机对象的机智属性的所有值也是如此。

2

根据LDAP服务器实施的LDIF应该是这样的:

dn: CN=joesworkstation,OU=training,OU=computers,DC=my,DC=domain,DC=com 
changetype: moddn 
newsuperior: OU=laptops,DC=my,DC=domain,DC=com 
# remove old RDN entry 
deleteoldrdn: 1 

有可能是此类活动的限制。 尽职尽责。可能有better methods for Microsoft Active Directory。 -jim

+0

尝试LDIF格式并收到以下错误: 'ldapmodify:期待“newrdn:”但看到“newsuperior:”(第3行,条目“CN = joesworkstation,OU =训练,OU =计算机,DC =我的,DC = domain,DC = com“) – scryptKiddy

+0

[changetype:moddn]元素的确切顺序在[RFC 2849](https://www.ietf.org/rfc/rfc2849.txt)中定义。另外,可能存在需要[特殊处理]的memberOf等属性类型(https://gallery.technet.microsoft.com/scriptcenter/Export-and-Import-content-7234f521)。 – marabu