Sun Java System Directory Server Enterprise Edition 6.3 管理指南

为部分复制过滤 LDIF 文件

使用 DSCC 时,对配置了部分复制的副本进行初始化的过程是不可视的。在初始化期间只会将选定属性发送给使用方。

如果已经配置了部分复制,应该在将导出的 LDIF 文件复制到使用方服务器之前过滤出所有未使用的属性。为此,目录服务器提供了 fildif 工具。此工具将过滤给定的 LDIF 文件,以便只保留复制协议中定义的属性集所允许的属性。

此工具将读取服务器配置以确定属性集定义。要读取配置文件,必须以超级用户身份或拥有此过程和文件(由 nsslapd-localuser 属性指定)的用户身份运行 fildif 工具。例如,以下命令将过滤前面示例中从 dc=example,dc=com 后缀导出的文件:


$ fildif -i /local/ds1/ldif/example_master.ldif \
 -o /local/ds1/ldif/filtered.ldif -b "cn=host2.example.com:1389, \
 cn=replica,cn=\\"dc=example,dc=com\\",cn=mapping tree,cn=config" -p /local/ds1

有关 fildif 命令的位置,请参见命令位置

-i-o 选项分别是输入和输出文件。-b 选项是定义部分复制的复制协议的 DN。可使用以下命令查找此 DN:


$ ldapsearch -h host -p port -D cn=admin,cn=Administrators,cn=config -w - \
 -b "cn=config" "(&(objectclass=nsds5replicationagreement) (nsDS5ReplicaPort=replica-port) \
 (nsDS5ReplicaHost=replica-host))" dn

例如:


$ ldapsearch -h host2 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - \
 -b "cn=config" "(&(objectclass=nsds5replicationagreement) \
 (nsDS5ReplicaPort=2090)(nsDS5ReplicaHost=host2))" dn
Enter bind password:
version: 1
dn: cn=host2:1389,cn=replica,cn=dc\=example\,dc\=com,cn=mapping tree,cn=config

有关 fildif 工具的完整命令行语法,请参见 fildif(1) 手册页。

接下来,可以使用由 fildif 生成的 filtered.ldif 文件初始化此复制协议中的使用方。将此文件传送到使用方服务器并进行导入,如从 LDIF 文件导入数据所述。