Openldap "no global superior knowledge"



当我:

ldapadd -f pop01.ldif -x -D "cn=Manager,dc=ldap,dc=beonegroup,dc=be" -w 1234

我得到:

adding new entry "dc=ldap,dc=beonegroup,dc=org"
ldapadd: Server is unwilling to perform (53)
        additional info: no global superior knowledge

这是我的 slapd.conf:

database    bdb
suffix      "dc=ldap,dc=beonegroup,dc=be"
rootdn      "cn=Manager,dc=ldap,dc=beonegroup,dc=be"
rootpw          1234
directory   /var/lib/ldap/beoneDirectory
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

我的文件曾经填充:

[root@local beoneDirectory]# pwd
/var/lib/ldap/beoneDirectory
[root@local beoneDirectory]# cat pop01.ldif
dn: dc=ldap,dc=beone,dc=org
objectClass: top
objectClass: dcObject
objectClass: organization
dc: beone
o: beone
description: ldap.beone.be
dn: o=beone
objectClass: top
objectClass: organization
o: beone
description: Beone
dn: cn=Manager,o=beone
objectClass: organizationalRole
cn: Manager
description: LDAP Directory Administrator
dn: ou=Employes,o=beone
ou: Employes
objectClass: top
objectClass: organizationalUnit
description: Employes beone
dn: ou=Clients,o=beone
ou: Clients
objectClass: top
objectClass: organizationalUnit
description: Clients beone
#1ere entrée
dn: cn=Benoit Le,ou=Employes,o=beonegroup
cn: Benoit Le
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
mail: benoit@beone.be
givenname: Benoit
sn: Lecomte
ou: Employes
street: 29 rue de cp
l: jumet
postalCode: 6040
telephoneNumber: 04942311
mobile: 01234345
#2eme employé
dn: cn=Matteo Di,ou=Employes,o=beonegroup
cn: Matteo Di
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
mail: mat@beone.be

我知道这是一个与 slapd.conf 相关的问题,openldap 不知道在哪里插入我的条目,但我真的不知道如何指定它

您的数据库已命名(具有后缀):

dc=ldap,dc=beonegroup,dc=be

你在 ldif 试图添加东西

dn: dc=ldap,dc=beone,dc=org

这有点等价于创建一个名为 /something 的目录,然后尝试创建文件/some/file。它不起作用,因为目录/some不存在。

请记住,LDAP数据以分层结构组织,即像目录和文件一样的树的形式。"高级"一词是指上级(更接近上层),类似于文件系统示例中的父目录(更接近根目录)。

在文件系统中,您将收到错误消息/some/file: No such file or directory

LDAP错误的措辞可能更好,但要解决此问题,您必须更改slapd.conf中的后缀或更改要添加的内容。他们必须匹配。

(感谢lilalinux在评论中也指定了如何修复)

域组件结构 您定义的"dc=ldap,dc=beonegroup,dc=be"与 pop01.ldif 第一行中的输入条目不匹配。

尝试将 pop01.ldif 中的第一行从 dc=org 更改为 dc=be,然后重试。

最新更新