
Instalei dois sistemas Ubuntu com servidor OpenLdap e os fiz replicar os dados conforme descrito nesteguia. A replicação funcionou e o contextCSN teve a mesma saída + ainda encontro contas de provedores originais do consumidor. No entanto, os problemas começaram quando comecei a adicionar usuários ao provedor. O contextoCSN dos consumidores não está sendo atualizado e encontro erros no syslog em ambas as máquinas.
Provider:
Jun 23 15:11:13 ldap01 slapd[711]: findbase failed! 32
Jun 23 15:12:14 ldap01 slapd[711]: findbase failed! 32
Jun 23 15:12:14 ldap01 slapd[711]: connection_read(52): no connection!
Consumer:
Jun 23 15:11:13 ldap02 slapd[32562]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (32) No such object
Jun 23 15:11:13 ldap02 slapd[32562]: do_syncrep2: rid=001 (32) No such object
Jun 23 15:11:13 ldap02 slapd[32562]: do_syncrepl: rid=001 rc -2 retrying
Jun 23 15:12:14 ldap02 slapd[32562]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (32) No such object
Jun 23 15:12:14 ldap02 slapd[32562]: do_syncrep2: rid=001 (32) No such object
Jun 23 15:12:14 ldap02 slapd[32562]: do_syncrepl: rid=001 rc -2 retrying
Jun 23 15:13:14 ldap02 slapd[32562]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (32) No such object
Jun 23 15:13:14 ldap02 slapd[32562]: do_syncrep2: rid=001 (32) No such object
Jun 23 15:13:14 ldap02 slapd[32562]: do_syncrepl: rid=001 rc -2 retrying
Jun 23 15:14:14 ldap02 slapd[32562]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (32) No such object
Jun 23 15:14:14 ldap02 slapd[32562]: do_syncrep2: rid=001 (32) No such object
Jun 23 15:14:14 ldap02 slapd[32562]: do_syncrepl: rid=001 rc -2 retrying
Jun 23 15:15:14 ldap02 slapd[32562]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (32) No such object
Jun 23 15:15:14 ldap02 slapd[32562]: do_syncrep2: rid=001 (32) No such object
Jun 23 15:15:14 ldap02 slapd[32562]: do_syncrepl: rid=001 rc -2 retrying
Editar: ok, encontrei minha falha. Esqueci de corrigir esta linha de Provider_sync.ldif
olcRootDN: cn=admin,dc=example,dc=com
Agora não tenho ideia de como consertar isso, se é que é possível. Provavelmente terá que retornar um backup de banco de dados antigo.
Responder1
Para corrigir o olcRootDN, crie um novo arquivo replace-olcrootdn.ldif
dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: <admin DN>
Depois disso, execute o comando:
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f replace-olcrootdn.ldif