openLDAP에 로드하려고 하는 다음 ldif 파일이 있습니다.
Monas 프로젝트를 위해 생성되는 사용자 정의 스키마
dn: cn=testSchemas,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: testSchemas
olcAttributeTypes ( 1.3.6.1.4.1.4203.666.1.90
NAME 'competence'
DESC 'The field an individual is qualified'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubStringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
olcAttributeTypes ( 1.3.6.1.4.1.4203.666.1.91
NAME 'spokenLanguage'
DESC 'The language spoken by a person.'
SUP preferredLanguage
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubStringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
olcObjectClasses ( 1.3.6.1.4.1.4203.666.2012.1
NAME 'inetOrgTestPerson'
DESC 'An extension of the inetOrgPerson objectClass to add some additional attributes'
SUP inetOrgPerson
STRUCTURAL
MUST competence
MAY spokenLanguage )
오류가 계속 발생합니다.ldapadd: 잘못된 형식(4행) 항목: cn=testSchemas,cn=schema,cn=config"그리고 나는 내 인생에서 무엇이 잘못되었는지 알아낼 수 없습니다. 나는 openldap 2.4.28과 함께 우분투 12.04를 사용하고 있습니다.
편집: 누락된 ':'의 구문 오류를 수정한 후 객체와 속성을 추가할 수 있었지만(또는 그렇게 생각했습니다) 검색을 실행할 때 볼 수 없습니다. 오류가 발생합니다.
ldap_modify: Type or value exists (20)
additional info: modify/add: olcAttributeTypes: value #0 already exists
개체를 다시 추가하려고 하면 개체가 db에 있지만 검색에 아무 것도 나타나지 않습니다.
답변1
LDIF에서 볼 수 있듯이 및 키워드 :
뒤에 콜론( ) 이 누락되어 있습니다 . 다음과 같아야 합니다:olcAttributeTypes
olcObjectClasses
olcAttributeTypes: ( 1.3.6.1.4.1.4203.666.1.90
NAME 'competence'
...