![[ldap]ldap相关问题 [ldap]ldap相关问题](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
背景:
ldap数据库要同步,按照如下操作步骤:
1.导出:
使用slapcat,slapcat直接对数据库操作,
slapcat
2.将所需的条目取出,生成文件in.ldif
3.在目标机器上导入:
ldapadd -D 'cn=admin,dc=xxxx,dc=xxx' -x -f in.ldif -W
但是爆出如下问题:
additional info: structuralObjectClass: no user modification allowed
ldap_add: Constraint violation ()
参考下面的链接,http://serverfault.com/questions/290264/ldap-add-constraint-violation-19
使用slapcat会导出很多条目,而这些条目,只在slapd内部使用,任何账户(即便管理员账户)都不能修改。
所以要将这些条目删除才行。
第二个问题:
Nov :: planner slapd[]: bdb_db_cache: db_open(objectClass) failed: Permission denied ()
Nov :: planner slapd[]: bdb_index_read: Could not open DB objectClass
http://forums.gentoo.org/viewtopic-t-515958.html
参考上面的帖子,结果再没有报这个错误。
chown openldap.openldap /var/lib/ldap/objectClass.bdb
第三个问题:
修改某个dn的密码
ldapmodify -D 'cn=admin,dc=xxxx,dc=net' -w binddnpassword<enter>
dn: cn=silence,ou=People,dc=xxxx,dc=net<enter>
changetype: modify<enter>
replace: userPassword<enter>
userPassword: mypass<enter>
<enter> 屏幕上出现:
modifying entry "cn=silence,ou=People,dc=xxxx,dc=net“
也可以将修改的内容写入文件,类似下面:
ldapmodify -D 'cn=admin,dc=xxxx,dc=net' -x -f jeffpass.ldif -W