ldapadd:无效格式(第1行)条目:“”在包括CentOS6的系统上添加模式时

时间:2014-02-25 20:28:54

标签: ldap

我正在尝试将架构pwm.schema添加到ldap并低于错误。

命令:

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/pwm.schema

输出:

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
ldapadd: invalid format (line 1) entry: ""

文件内容如下:

attributetype ( 1.3.6.1.4.1.591242.2.2010.04.16.1 NAME 'pwmEventLog'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
attributetype ( 1.3.6.1.4.1.591242.2.2010.04.16.2 NAME 'pwmResponseSet'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
attributetype ( 1.3.6.1.4.1.591242.2.2010.04.16.3 NAME 'pwmLastPwdUpdate'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 )
attributetype ( 1.3.6.1.4.1.591242.2.2010.04.16.4 NAME 'pwmGUID'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )

objectclass ( 1.3.6.1.4.1.591242.1.2010.04.16.1 NAME 'pwmUser'
        AUXILIARY
        MAY ( dstPwdUpdate $ pwmEventLog $ pwmResponseSet $ pwmGUID
        ))

3 个答案:

答案 0 :(得分:9)

我遇到了这个问题,事实证明,在某些阶段,LDAP要么收紧了,要么改变了语法。

遗憾的是,错误消息具有误导性。

您需要在:

之后加上冒号(attributetype)字符

例如:

attributetype ( 1.3.6.1.4.1.591242.2.2010.04.16.1 NAME 'pwmEventLog'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )

需要成为:

attributetype: ( 1.3.6.1.4.1.591242.2.2010.04.16.1 NAME 'pwmEventLog'
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )

(等)

我刚刚在CentOS 6上测试了这个,我不得不更改一个在CentOS5上工作正常的文件。 我不知道哪些其他发行版升级可能会受到影响。

答案 1 :(得分:0)

= 替换为 : 例如:

cn=cn1,dc=example,dc=com
cn=cn2

在上面添加时,会给出错误信息

<块引用>

ldapadd:无效格式(第 1 行)条目:“”

然后像上面提到的那样替换它:

cn:cn1,dc:example,dc:com
cn:cn2

现在运行 ladpadd 命令

答案 2 :(得分:0)

很可能是边缘情况,但我在使用 PowerShell 生成的 ldif 文件中收到了相同的错误消息。经过数小时无果的搜索,我注意到该文件存储为 UTF-16。将其转换为 UTF-8 并且它起作用了。

$ldif | Out-File -FilePath $ldifFile -Encoding utf8