Centos
OpenLDAP:嘗試添加 LDIF 時出現無效的語法錯誤
嘗試在 OpenLDAP (CentOS 7) 中創建使用者時,我不斷收到無效的語法錯誤。
這是用於測試目的的全新 OpenLDAP 安裝。
到目前為止,我已經成功創建了一個名為“Lab Staff”的組,現在我正在嘗試向其中添加一個使用者
這是 LDIF 文件:
dn: uid=lsuarez,ou=Lab Staff,dc=sftest,dc=net objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson cn: Luis Suarez sn: Suarez givenname: Luis uid: lsuarez ou: Lab Staff
然後我嘗試按如下方式添加它:
ldapadd -x -D "cn=Admin,dc=sftest,dc=net" -W -f /tmp/data.ldif Enter LDAP Password: adding new entry "uid=lsuarez,ou=Lab Staff,dc=sftest,dc=net"
我收到錯誤消息:
ldap_add: Invalid syntax (21) additional info: objectclass: value #3 invalid per syntax
在我看來,它不喜歡
inetOrgPerson
,但我不知道我做錯了什麼。
您需要將架構導入
inetOrgPerson
intoslapd
。我不知道在 CentOS 7 上安裝 OpenLDAP,但如果您有文件
/etc/ldap/schema/inetorgperson.ldif
和動態 slapd 配置 (/etc/ldap/slapd.d/
),它可能會接受以下命令(以 root 身份執行)。ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif
要解決此問題,請執行以下命令:
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif