我已经安装了LDAP,并且能够启动它。当我试图修改olcDatabase={2}hdb.ldif文件时,我得到 "ldap_modify: No such object (32)" 错误。
修改的步骤如下
1) 创建了一个db.ldif文件,包含以下内容
dn: olcDatabase={2}hdb,cn=configchangetype: modifyreplace: olcSuffixolcSuffix: dc= ec2,dc=internal。
dn: olcDatabase={2}hdb,cn=configchangetype: modifyreplace: olcRootDNolcRootDN: cn=admin,dc=ec2,dc=internal。
dn: olcDatabase={2}hdb,cn=configchangeType: modifyadd: olcRootPWolcRootPW: {SSHA}6zHtA20qkTmdLrJSfxo+V3QLGS7m0CZ。
2) ldapmodify -Y EXTERNAL -H ldapi:/ -f db.ldif
SASLEXTERNAL验证开始SASL用户名:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0修改条目 "olcDatabase={2}hdb,cn=config "ldap_modify。没有这样的对象(32)
我使用的是 centos7 和 LDAP 版本 openldap-clients-2.4.44-21.el7_6.x86_64openldap-2.4.44-21.el7_6.x86_64openldap-servers-sql-2.4.44-21.el7_6. x86_64openldap-servers-2.4.44-21.el7_6.x86_64openldap-devel-2.4.44-21.el7_6.x86_64collectd-openldap-5.8.1-1.el7.x86_64compat-openldap-2.3.43-5.el7.x86_64。
请帮我解决这个问题!!
造成这个结果的原因有两个。
我建议你尝试搜索 cn=config
数据库,看看它到底包含了什么。
ldapsearch -H ldapi:/// -Y EXTERNAL -b 'cn=config'
如果结果是 No such object (32)
那么 gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
没有访问你系统上的配置数据库。
如果搜索确实返回了结果,请检查该条目的 olcDatabase={2}hdb,cn=config
实际上已经上市。