Die Datei db.ldif (ab Ubuntu 11.04) ist kaputt:
...
dn: olcDatabase={1}hdb,cn=config
changeType: modify
delete: olcDbIndex
dn: olcDatabase={1}hdb,cn=config
changeType: modify
add: olcDbIndex
olcDbIndex: uid pres,eq
oldDbIndex wird (zum ersten mal) gelöscht und der Index für uid wird angelegt.
Es gibt also jetzt nur einen Index: uid
dn: olcDatabase={1}hdb,cn=config
changeType: modify
delete: olcDbIndex
dn: olcDatabase={1}hdb,cn=config
changeType: modify
add: olcDbIndex
olcDbIndex: cn,sn,mail pres,eq,approx,sub
oldDbIndex wird (zum zweiten mal) gelöscht und der Index für cn,sn,mail wird angelegt.
Es gibt also jetzt nur einen Index: cn,sn,mail
dn: olcDatabase={1}hdb,cn=config
changeType: modify
delete: olcDbIndex
dn: olcDatabase={1}hdb,cn=config
changeType: modify
add: olcDbIndex
olcDbIndex: objectClass eq
...
oldDbIndex wird (zum dritten mal) gelöscht und der Index für objectClass wird angelegt.
Es gibt also jetzt nur einen Index: objectClass
Der Index sieht nun so aus:
ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}hdb)' olcDbIndex
dn: olcDatabase={1}hdb,cn=config
olcDbIndex: objectClass eq
Das kann irgendwie nicht im Sinne des Erfinders sein...
Mein Vorschlag: die beiden letzten
dn: olcDatabase={1}hdb,cn=config
changeType: modify
delete: olcDbIndex
weglassen, dann sieht der Index nach abarbeiten von db.ldif so aus:
ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}hdb)' olcDbIndex
dn: olcDatabase={1}hdb,cn=config
olcDbIndex: uid pres,eq
olcDbIndex: cn,sn,mail pres,eq,approx,sub
olcDbIndex: objectClass eq
Das scheint mehr dem gewünschen Ergebnis zu entsprechen.
Hoffentlich war das irgendwie hilfreich,
Verfassungsfreund