我已经“继承”了一个 openldap(CentOS 7)服务器,该服务器的配置是动态处理的(使用 slapd.d 目录和 ldif 文件树)。
我使用 ldapmodify 向其中一个后端添加了一个属性 (olcDbCheckpoint)。更改产生了预期结果,我可以通过查询看到它ldapsearch -D 'cn=config' ...
。
但/etc/openldap/slapd.d 中的任何文件均未更新,我在其中找不到对我的新属性的任何引用... 该slapcat -b "cn=config"
命令(似乎正在读取此目录)也没有显示该参数。 slapd 进程命令未引用位于其他位置的另一个目录。 我还检查了运行该服务的 ldap 用户是否是拥有所有 slapd.d 树的写权限的所有者。
我以为这个目录是由 openldap 服务维护的,并在服务启动时读取?现在我担心 olcDbCheckpoint 参数和其他可能在过去被修改过的参数在重新启动后会失效。
slapd.d 目录是否应该更新,有什么方法可以强制将内存配置转储到 slapd.d?
编辑:
- 我重启了 slapd 服务,值没有持久化。我再次修改了配置,再次重启服务,仍然没有持久化,slapd.d 仍然没有更新。
- 事实上,有 2 个镜像 OpenLDAP 服务器具有相同的行为。数据后端已正确同步,但配置后端未同步 - 尽管根据配置应该如此。在 slapd 重新启动时,初始配置同步失败,因为没有输入
entryUUID
(slapd.d/cn=config/cn=module{0}.ldif
在两个服务器上)。我开始认为某些配置文件是手动编辑的...