slapd[209]: do_syncrep2: rid=001 LDAP_RES_SEARCH_RESULT (4) Size limit exceeded slapd[209]: do_syncrep2: rid=001 (4) Size limit exceeded
A hibajelenség akkor léphet fel, ha egy Open Directory-kiszolgáló hosszabb időre leállt, vagy ha akkor hoz létre egy replikát, amikor több mint 11 000 objektum található az LDAP-adattárban. Alapértelmezés szerint legfeljebb 11 000 objektum jeleníthető meg a keresések során.
Engedélyezze az _ldap_replicator felhasználó számára a határérték túllépését. Ezt úgy hajthatja végre, hogy módosítja az LDAP-kiszolgáló konfigurációját mindegyik Open Directory-kiszolgálón. Adja meg a címtár-rendszergazdai hitelesítő adatokat, és futtassa az LDAP-módosításokhoz szükséges parancsokat a Terminalban. Az LDAP-kiszolgáló keresési bázisát – más néven névhasználati környezetét – is tudnia kell.
Az alábbiak szerint hajthatja végre a műveletet.
Az LDAP-kiszolgáló keresési bázisának megkeresése
Keresse meg az LDAP-kiszolgáló keresési bázisát. Ez általában a kiszolgáló teljesen minősített tartományneve, és az egyes címkék elé be kell írni a dc= karaktersort, valamint a pontokat vesszőkre kell cserélni.
Például a server.example.com állomásnevű kiszolgáló alapértelmezett keresési bázisa a következő: „dc=server,dc=example,dc=com”. Az LDAP-kiszolgáló lekérdezésével is ellenőrizhető a keresési bázis. Ehhez írja be a következő Terminal-parancsot:
ldapsearch -x -LLL -b “” -s base namingContexts
Keresse meg a namingContexts kifejezést tartalmazó sort – a keresési bázis a kettőspont utáni rész, ahogy az az alábbi példában is látható.
dn: namingContexts: dc=server,dc=example,dc=com
A címtárrendszergazda Kerberos hitelesítő adatainak beszerzése
Ennek a felhasználónak az alapértelmezett neve a diradmin, viszont előfordulhat, hogy a név módosult az Open Directory-főkiszolgáló létrehozásakor. Ez a kinit paranccsal hajtható végre a Terminalban. Futtassa a következő parancsot, és szükség esetén a diradmin nevet cserélje le a címtárrendszergazda aktuális nevére, majd amikor felszólítást kap erre, adja meg a jelszót. A Terminal nem ír ki semmit.
kinit diradmin
Ezután a Terminalban az ldapmodify segítségével hajtsa végre a módosításokat interaktív módban. Egyszerűen írja be a következőt a Terminalban:
ldapmodify
Megjegyzés: Ekkor megjelenik néhány SASL-üzenet, és a rendszer adatbevitelre vár. Sikeres eljárás esetén az alábbihoz hasonló SASL-üzenetek jelennek meg:
SASL/GSSAPI authentication started SASL username: diradmin@REALM SASL SSF: 56 SASL data security layer installed.
A konfiguráció módosítása
Végül módosítsa a konfigurációt. Ehhez adja meg az alábbi szöveget a Terminal ablakában az ldapmodify parancs bemeneteként. A [search base] helyére írja be a keresési bázist. A zárójelekre sincs szükség.
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
Most nyomja le a Control-D billentyűkombinációt.
Ha az összes eljárás sikeres, az alábbiakhoz hasonló üzenetek jelennek meg.
modifying entry "olcDatabase={1}bdb,cn=config" modifying entry "olcDatabase={2}bdb,cn=config"
További információk
Alternatív eljárás héjparancsfájl segítségével
Az alábbiakban egy héjparancsfájl szövege látható, amellyel automatizálható az eljárás. A fentiekhez hasonlóan a kinit paranccsal kérje le a címtárrendszergazda adatait, majd futtassa a parancsfájlt. Ez a cikk segítséget nyújt a szövegszerkesztő kiválasztásához.
#!/bin/sh nc=`ldapsearch -x -LLL -b "" -s base namingContexts | awk '/namingContexts/ {print $2}'` ldapmodify <<EOF dn: olcDatabase={1}bdb,cn=config changetype: modify add: olcLimits olcLimits: dn.exact="uid=_ldap_replicator,cn=users,$nc" 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,$nc" time.soft=unlimited time.hard=unlimited size.soft=unlimited size.hard=unlimited EOF #end of script