1.6 LDIF详解
1.6.1 LDIF用途
LDIF(LDAP Data Interchanged Format)的轻量级目录访问协议数据交换格式的简称,是存储LDAP配置信息及目录内容的标准文本文件格式,之所以使用文本文件来存储这些信息是为了方便读取和修改,这也是其他大多数服务配置文件所采取的格式。通常用来交换数据并在OpenLDAP服务器之间互相交换数据,并且可以通过LDIF实现数据文件的导入、导出以及数据文件的添加、修改、重命名等操作,这些信息需要按照LDAP中schema的规范进行操作,并会接受schema的检查,如果不符合OpenLDAP schema规范要求,则会提示相关语法错误。
1.6.2 LDIF文件特点
LDIF文件每行的结尾不允许有空格或者制表符。
LDIF文件允许相关属性可以重复赋值并使用。
LDIF文件以.ldif结尾命名。
LDIF文件中以#号开头的一行为注释,可以作为解释使用。
LDIF文件所有的赋值方式为:属性:[空格]属性值。
LDIF文件通过空行来定义一个条目,空格前为一个条目,空格后为另一个条目的开始。
注:
如果读者要手动定义LDIF文件添加修改条目,需要了解以上相关特点;否则,会提示各种各样的语法错误。而且OpenLDAP服务器中定义LDIF文件,每个条目必须包含一个objectclass属性,并且需要定义值,objectclass属性有顶级之分,在定义objectclass之前需要了解objectclass的相关依赖性,否则在添加或者修改时也会提示相关语法错误。
1.6.3 LDIF格式语法
LDIF文件存取OpenLDAP条目标准格式:
# 注释,用于对条目进行解释
dn:条目名称
objectClass(对象类): 属性值
objectClass(对象类): 属性值
……
LDIF格式样例如下:
dn: uid=Guodayong,ou=people,dc=gdy,dc=com //DN描述项,在整个目录树上为唯一的
objectClass: top
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
objectClass: inetOrgPerson
objectClass: hostObject
sn: Guo
cn: Guodayong
telephoneNumber:xxxxxxxxxxx
mail: dayong_guo@126.com
注:
冒号后面有一个空格,然后才是属性的值,schema规范定义要求很严格。(这点请读者切记!)