我嘗試使用提供的 LDIF 檔案將 schac 架構新增到我的 OpenLDAP 安裝中,但這失敗並出現「意外令牌」錯誤:
root [2533] /etc/ldap/schema# ldapadd -Y EXTERNAL -H ldapi:/// -f schac-schema-1.5.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=schac,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
additional info: olcAttributeTypes: Unexpected token before DESC 'RFC 3066 code for prefered language of communication'EQUALITY caseExactMatchSINGLE-VALUESYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
這是 LDIF 檔案的頂部;錯誤發生在第一個 olcAttributeTypes 聲明上。
dn: cn=schac,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: schac
olcObjectIdentifier: TERENA 1.3.6.1.4.1.25178
olcObjectIdentifier: schac TERENA:1
olcObjectIdentifier: schacExperimental schac:0
olcObjectIdentifier: schacObjectClass schac:1
olcObjectIdentifier: schacAttributeType schac:2
olcObjectIdentifier: schacExpObjClass schacExperimental:1
olcObjectIdentifier: schacExpAttr schacExperimental:2
olcAttributeTypes: ( schacAttributeType:1
NAME 'schacMotherTongue'
DESC 'RFC 3066 code for prefered language of communication'
EQUALITY caseExactMatch
SINGLE-VALUE
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( schacAttributeType:2
NAME 'schacGender'
DESC 'Representation of human sex (see ISO 5218)'
EQUALITY integerMatch
SINGLE-VALUE
SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
.... etc...
由於這個模式有一個很好的使用者基礎,我會驚訝它的格式錯誤,所以我猜測 schac 模式和其他一些預先需要的模式之間可能存在一些依賴關係,但這是一個瘋狂的猜測。
我在 Debian buster 上的 OpenLDAP 2.4.47 安裝中已經有 7 個其他模式。
歡迎任何幫助。