Мне нужно создать сервер разработки, чтобы отразить установку LDAP клиента. Заказчик дал мне файл db.ldif, начинающийся с
cn: cn=Subschema
ldapSyntaxes: ( 1.3.6.1.1.16.1 DESC 'UUID' )
ldapSyntaxes: ( 1.3.6.1.1.1.0.1 DESC 'RFC2307 Boot Parameter' )
ldapSyntaxes: ( 1.3.6.1.1.1.0.0 DESC 'RFC2307 NIS Netgroup Triple' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.52 DESC 'Telex Number' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.50 DESC 'Telephone Number' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.49 DESC 'Supported Algorithm' X-BINAR
Y-TRANSFER-REQUIRED 'TRUE' X-NOT-HUMAN-READABLE 'TRUE' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.45 DESC 'SubtreeSpecification' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.11 DESC 'Country String' )
ldapSyntaxes: ( 1.3.6.1.4.1.1466.115.121.1.44 DESC 'Printable String' )
and so on
Но не могу найти, как его загрузить:
ldapadd -Y EXTERNAL -H ldapi:// -f /ldap/db.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=Subschema"
ldap_add: Already exists (68)
additional info: subschema subentry already exists
slapadd -l /ldap/db.ldif
57aca988 str2entry: attributeType ldapSyntaxes #0: no validator for syntax 1.3.6.1.4.1.1466.115.121.1.54
slapadd: could not parse entry (line=1)
_#################### 100.00% eta none elapsed none fast!
Closing DB..
Моя установка:
slapd -V
@(#) $OpenLDAP: slapd (Ubuntu) (Jun 24 2016 15:39:52) $
buildd@lgw01-24:/build/openldap-MhQj18/openldap-2.4.31/debian/build/servers/slapd
Я пытаюсь заменить EOL на linux и другие файловые структуры. Как я могу работать?
Похоже, что файл LDIF (по крайней мере частично) содержит дамп корневого DSE с сервера LDAP, полученный с использованием базы "cn=Subschema"
с чем-то вроде:
ldapsearch -Y EXTERNAL -H ldapi:/// -s base -b 'cn=Subschema' +
Итак, чтобы ответить на ваш вопрос, вы не можете ldapadd
это потому что cn=Subschema
уже существует, как указано в ошибке. Это один из этих специальных объектов, поддерживаемых самим сервером; вы, вероятно, не хотите или не нуждаетесь в свалке этого.
Вы действительно хотите сбросить некоторые / все cn=config
база данных; по крайней мере, используемые схемы, а затем дамп самой основной базы данных. Имея более полный дамп cn=config
база данных не может повредить, поскольку в ней будут такие вещи, как определения ACL, наложения и т. д., которые могут быть важны.