我有以下 ldif 文件,我正在嘗試將其加載到 openLDAP 中:
為 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"我一生都無法弄清楚出了什麼問題。我在 ubuntu 12.04 上使用 openldap 2.4.28
編輯:修復缺少“:”的語法錯誤後,我設法添加物件和屬性(或者我是這麼認為的),但當我執行搜尋時我看不到它們,我收到錯誤:
ldap_modify: Type or value exists (20)
additional info: modify/add: olcAttributeTypes: value #0 already exists
當我嘗試再次新增物件時,這表示它們位於資料庫中,但搜尋中沒有出現任何內容。
答案1
從我在 LDIF 中看到的情況來看,您在and關鍵字之後缺少冒號 ( :
) 。應該看起來像這樣:olcAttributeTypes
olcObjectClasses
olcAttributeTypes: ( 1.3.6.1.4.1.4203.666.1.90
NAME 'competence'
...