openLDAP ldap_modify:尝试删除自定义模式时,服务器不愿意执行(53)

我已经创build了这个自定义和非常基本的模式:

objectclass ( 2.25.2.2.1 NAME 'myObjectClass' DESC 'myObjectClass objectclass' STRUCTURAL MUST ( cn ) ) 

我已经添加了这个myObjectClass.ldif文件没有问题:

 dn: cn=myObjectClass,cn=schema,cn=config objectClass: olcSchemaConfig cn: myObjectClass olcObjectClasses: {0}( 2.25.2.2.1 NAME 'myObjectClass' DESC 'myObjectClass objectclass' STRUCTURAL MUST cn ) 

使用ldapmodify:

 sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f myObjectClass.ldif 

现在我试图用delete.ldif删除它:

 dn: cn=schema,cn=config changetype: modify delete: objectClass objectClass: 2.25.2.2.1 

使用ldapmodify总是得到ldap_modify:服务器不愿意执行(53):

 sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f delete.ldif SASL/EXTERNAL authentication started SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth SASL SSF: 0 modifying entry "cn=schema,cn=config" ldap_modify: Server is unwilling to perform (53) 

我使用OpenLDAP 2.4.31运行Ubuntu 14.04服务器

我在官方文档中search了这个:

A.2.2。 更好的cn =模式function

在2.3中,您只能添加新的模式元素,而不能删除或修改现有的元素。 在2.4中,您可以随意修改模式。 (当然,除了硬编码的系统模式。)

有人可以分享任何线索吗?

提前致谢!

在OpenLDAP服务器的2.4版本中修改模式configuration的方法是:

  • 删除使用此模式的所有条目

然后

使用slapcat停止slapd将dynamicconfiguration导出到LDIF修改LDIF导出以删除有问题的架构删除(或重命名)旧的dynamicconfig目录slapadd更新的LDIF启动slapd

据此在官方网站上的谈话 。