Open Directory-replikering virker muligvis ikke. "Maks. størrelse overskredet" vises i slapd.log

Open Directory-replikering virker muligvis ikke. Når det sker, vises der poster som følgende i /var/log/slapd.log

slapd[209]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (4) Maks. størrelse overskredet slapd[209]: do_syncrep2: rid=001 (4) Maks. størrelse overskredet

Dette kan forekomme, hvis en Open Directory-server har været nede i en længere periode, eller hvis der oprettes en replika, når der er mere end 11000 objekter i LDAP-datalageret. 11000 er det maksimale antal objekter, der som standard kan returneres i en søgning.

Tillad, at _ldap_replicator-brugeren tilsidesætter søgegrænsen. Det kan du gøre ved at ændre LDAP-serverkonfigurationen på alle Open Directory-servere. Dette involverer godkendelse som biblioteksadministrator og kørsel af visse LDAP-ændringskommandoer i Terminal. Du skal også kende søgebasen, også kaldet navngivningskontekst, for LDAP-serveren.

Følgende trin kan bruges til at opnå dette.

Find først søgebasen for LDAP-serveren

Find søgebasen for LDAP-serveren. Det er som regel det fuldt kvalificerede domænenavn på serveren med dc= foran hvert mærke og punktummer ændret til kommaer.

En server med værtsnavnet server.example.com vil f.eks. have standardsøgebasen "dc=server,dc=example,dc=com". Du kan bekræfte søgebasen ved at sende en forespørgsel til selve LDAP-serveren med følgende Terminal-kommando:

ldapsearch -x -LLL -b “” -s base namingContexts

Find den linje, der indeholder namingContexts, og søgebasen vil være efter kolon som i eksemplet nedenfor.

dn: namingContexts: dc=server,dc=example,dc=com

Derefter skal du indhente Kerberos-loginoplysningerne for biblioteksadministratoren

Standardnavnet for denne bruger er diradmin, men navnet blev muligvis ændret, da Open Directory-masteren blev oprettet. Det kan du gøre ved at bruge kommandoen kinit i Terminal. Kør følgende kommando, hvor du udskifter det rette navn på biblioteksadministratoren med diradmin, hvis det er nødvendigt, og indtast adgangskoden, når du bliver bedt om det. Der er ingen output.

kinit diradmin

Brug derefter ldapmodify i interaktiv tilstand i Terminal for at foretage ændringerne. Kør ganske enkelt følgende i Terminal=:

ldapmodify

Bemærk! Derved returneres der nogle få SASL-meddelelser, og der ventes på input. Ved vellykket kørsel vil SASL-outputtet se sådan ud:

SASL/GSSAPI authentication started SASL username: diradmin@REALM SASL SSF: 56 SASL data security layer installed.

Rediger konfigurationen

Til sidst skal du foretage ændringerne i konfigurationen. Dette kræver, at hele teksten nedenfor indtastes i Terminal-vinduet som input til kommandoen ldapmodify. Søgebasen skal erstattes med [søgebase] nedenfor. Parenteserne skal også fjernes.

dn: olcDatabase={1}bdb,cn=config changetype: modify add: olcLimits olcLimits: dn.exact="uid=_ldap_replicator,cn=users,[search base]" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited dn: olcDatabase={2}bdb,cn=config changetype: modify add: olcLimits olcLimits: dn.exact="uid=_ldap_replicator,cn=users,[search base]" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited

Tryk nu på Ctrl-D.

Hvis det hele lykkes, vises der meddelelser som følgende.

modifying entry "olcDatabase={1}bdb,cn=config" modifying entry "olcDatabase={2}bdb,cn=config"

Læs mere

Brug eventuelt Shell-instruks

Nedenfor kan du se teksten til en Shell-instruks, der kan bruges til at automatisere denne proces. Angiv blot kinit for biblioteksadministratoren som ovenfor, og kør denne instruks. Se denne artikel for at få forslag til teksteditorer.

#!/bin/sh nc=`ldapsearch -x -LLL -b "" -s base namingContexts | awk '/namingContexts/ {print $2}'` ldapmodify <

Dette dokument opdateres, efterhånden som oplysningerne bliver tilgængelige.

Udgivelsesdato: