PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenLDAP-Problem: Internal (implementation specific) error (80)



blumblaum
01.04.03, 10:57
Ich hab da ein kleines Problem mit OpenLDAP2 v3 auf einem SuSE Linux 8.1 Rechner. Bisher klappte alles wunderbar, ich konnte Einträge der Datenbank hinzufügen, sie verändern und löschen. Nun wollte ich die Einträge löschen, um was neues auszuprobieren, das habe ich auch gemacht und danach zusätzlich noch den DN geändert (der alte war nur ein Test). Seit dem kann ich der bisher leeren Datenbank nichts mehr hinzufügen, weil ich nach Eingabe von ...

poky:~ # ldapadd -h 127.0.0.1 -w XXXXXXXX -x -D "cn=Manager,dc=domain,dc=com" -v -f ~/initial.ldif



... folgendes als Meldung erhalte ...

ldap_init( 127.0.0.1, 0 )
add objectClass:
dcObject
organization
add o:
domain.com
add dc:
com
adding new entry "dc=domain,dc=com"
ldapadd: update failed: dc=domain,dc=com
ldap_add: Internal (implementation specific) error (80)



Da es wahrscheinlich von Bedeutung ist, wie die Datei initial.ldif aussieht, folgt hier der Inhalt ...

dn: dc=domain,dc=com
objectClass: dcObject
objectClass: organization
o: domain.com
dc: de

dn: cn=Manager,dc=domain,dc=com
objectClass: person
cn: Manager
sn: Manager
description: "LDAP Manager"

dn: o=auth_user,dc=domain,dc=com
o: auth_user
objectClass: organization

dn: o=auth_group,dc=domain,dc=com
o: auth_group
objectClass: organization



Wenn ich den DN in den zuvor verwendeten ändere, dann bringt das auch gar nix, weil ich dann immer noch die gleiche Meldung, nur eben mit dem entsprechenden DN in der Ausgabe erhalte. Hat jemand eine Idee woran das liegt und wie man das Problem lösen kann? Ich habe schon auf www.openldap.org geschaut, aber ich finde dort leider nichts, was mich in irgend einer Weise weiterbringen würde. Die Einträge aus den Mailinglists sind teilweise ähnlich, aber doch ganz anders. ;) Hab schon gegoogelt, bis mir schlecht wurde. :ugly:

mamue
01.04.03, 11:18
Das ldif sieht gut aus, alle Einträge genügen ldapv3.
Kann es sein, dass die Datenbasis korumpiert ist, etwa durch einen Wechsel von ldbm nach bdb?
Funktioniert noch slapcat / slapadd? Denke daran, die richtige Version zu nehmen, falls Du mehrere Versionen von openldap parallel installiert hast.

Am ldif liegt es ziemnlich sicher nicht, meine ich.

mamue

blumblaum
01.04.03, 11:32
Ich hab ganz zu Anfang laut einem Beispiel aus dem Internet (von www.linux-tin.org) in /etc/openldap/slapd.conf den Eintrag von bdb auf ldbm umgeändert, danach lief auch alles noch.

slapadd und slapcat laufen so als Anwendung schon, allerdings weiß ich damit nicht so viel anzufangen, da ich mich damit in meiner Praktikumszeit erst seit etwa 4 Tagen beschäftige. :rolleyes: ich hab slapadd mit -f ~/initia.ldif aufgerufen, aber da meckert er mir etwas von No databases found in config file. Ich schätze mal ich mache da was falsch. :D


Denke daran, die richtige Version zu nehmen, falls Du mehrere Versionen von openldap parallel installiert hast.
Da sollte nur eine Version installiert sein, ich habe nur das ausgewählt, was bei der SuSE-Distribution dabei war.



EDIT: Wenn ich jetzt slapadd -l ~/initial.ldif aufrufe (Das scheint wohl die korrekte Syntax zu sein! :D), dann meldet er mir slapadd: could not add entry dn="dc=domain,dc=com" (line=6): ldbmp cache corrupted. Zumindest hab ich jetzt eine ungefähre Vorstellung davon, was mehr oder weniger los ist.

mamue
01.04.03, 18:49
die Datenbasis ist kaputt. bzw sie ist im ldbm format und in der config steht was von bdb.
wenn alle einträge mit slapcaat ausgelesen werden konnten, kannst Du wahrscheinlich einfach die ldap stoppen, die Datenbankdateien löschen (bei mit unter /var/lib/ldap, steht in der slapd- oder ldap.conf) und mit slapadd neu hinzufügen.

mamue

blumblaum
02.04.03, 09:14
Wenn du jung und weiblich bist, dann lauf weg, denn ich könnt dich vor Freude knutschen! :D DANKE!!!! :)

mamue
02.04.03, 17:02
Gerne geschehen.
Ich bin weder weiblich noch jung (verhätlnissmässig, wahscheinlich).

mamue