Добавить пользователя
dn: uid=sampleuser,ou=people,dc=my-domain,dc=com
objectClass: top
objectClass: inetOrgPerson
cn: sample user
uid: sampleuser
Проблема
[root@host ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #1 invalid per syntax
Попытка решить проблему
Изменение inetOrgPerson
к uidObject
и снова создать пользователя:
[root@controller ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Object class violation (65)
additional info: no structural object class provided
Попытка 2 решить проблему
ObjectClass inetOrgPerson
не найден:
Попытка 3 решить проблему
Невозможно добавить inetOrgPerson
схема:
[root@controller ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=inetorgperson,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
additional info: olcObjectClasses: AttributeType not found: "audio"
Источники, которые уже были прочитаны и не содержат решения, решающего проблему
http://www.zytrax.com/books/ldap/ch3/
https://stackoverflow.com/questions/28938957/openldap-structural-objectclass-not-found
http://www.openldap.org/doc/admin24/schema.html
http://www.openldap.org/lists/openldap-software/200503/msg00640.html
http://www.openldap.org/lists/openldap-technical/201002/msg00147.html
http://www.openldap.org/lists/openldap-technical/201002/msg00139.html
inetOrgPerson
зависит от обоих core
и cosine
. Похоже, у вас уже есть ядро. Добавьте косинус, затем инеторгерсон. Косинус должен быть на /etc/openldap/schema/cosine.ldif
.