OpenLDAP复制问题

我在CentOS-5.4上安装了一个LDAP主服务器,并且我在另一台机器上安装了LDAP,我希望它被configuration为LDAP从服务器,但是当我导入LDIF文件或尝试在从LDAP中创build任何新对象时,以下错误:

LDIF文本导入无法添加对象dc = transcomus,dc = com LDAP表示:服务器不愿意执行错误号:0x35(LDAP_UNWILLING_TO_PERFORM)描述:LDAP服务器拒绝执行该操作。

在/ var / lib / ldap上没有检查到权限问题

任何帮助非常感激..

谢谢Ramesh

这听起来像你试图通过ldapaddslapcat将数据库转储导入正在运行的slave。 在从属模式下configuration复制机制的正在运行的slapd实例将拒绝所有写入尝试并返回您提供的消息。

如果我的基于slurpd的slapd服务器变得不一致,我执行了一个非常简单的恢复过程:

  1. 把主人进入只读模式。
  2. 从主服务器进行全新转储,并将其复制到任何不一致的从服务器(或从备份中复制)。
  3. 完全停止你想恢复的奴隶slapd。
  4. 清除数据目录/var/lib/ldap (如果参数未在slapd.conf中定义,则可能需要保存DB_CONFIG文件)
  5. 使用slapadd重build从站上的目录(如有必要,请移回DB_CONFIG
  6. 正常启动从站。
  7. 将主设备切换回读写模式。

    是的,我正在使用slurpd复制方法。 它运行良好,但不知何故它崩溃了,直到那时它不工作

您可能正在运行OpenLDAP 2.3.43,因为这是CentOS 5.4中打包的内容。 不幸的是,由于这个原因,除非你能升级到更新的OpenLDAP(2.4)服务器,否则你将来可能再次遇到复制问题。

slurpd是非常有缺陷的,请查看OpenLDAP 2.4文档以获得完整的解释。 较新的OpenLDAP版本提供了一个名为syncrepl的新复制机制,它更加健壮,几乎不会出现故障。

将来如果您有兴趣获得帮助,请将其迁移到较新的OpenLDAP服务器,我也可以提供相关指导。