如何从 OpenLDAP 服务器中删除 DIT?

如何从 OpenLDAP 服务器中删除 DIT?

我需要从 OpenLDAP v2.4 安装中删除 DIT。

创建 DIT 的文档位于http://www.openldap.org/doc/admin24/dbtools.html,但是没有记录移除/删除 DIT。

我试图解决的核心问题是解决 Ubuntu v14.04 的行为,即系统根据主机名猜测 OpenLDAP 配置。我需要删除此配置并创建正确的配置。

该过程作为系统编排的一部分而自动化,因此交互机制无法实现。

我发现 2004 年的建议是使用 rm -rf 删除 /var/lib/ldap 树,这仍然是解决该问题的推荐解决方案吗?

或者,是否有一种非交互式机制可用于在 Ubuntu v14.04 系统中配置 OpenLDAP DIT?

答案1

无论如何,您已经替换了整个配置,因此只需继续执行rm -rf所有操作,然后复制/提取/解压缩/等。新配置就位。毕竟,除了自动生成的 DIT 之外,还有更多设置。

另外,有人告诉我,如果你提取自定义配置,Debian/Ubuntu 软件包将不会做任何猜测安装软件包。

官方方法似乎是通过 debconf 禁用它:

echo "slapd slapd/no_configuration boolean true" | debconf-set-selections

也就是说,要删除特定的 DIT,您需要:

  1. 将其从 slapd 配置中删除:

    使用静态时,slapd.conf您需要以某种方式删除“数据库”选项及其所有配置选项。

    有了动态cn=config,似乎非常近OpenLDAP 版本只允许您ldapdelete配置条目,但是旧版本仍然要求您停止 slapd 并手动从中删除文件/etc/ldap/slapd.d/cn=config/…

    但无论哪种方式,如果您已经安装了完整的自定义配置,最好完全删除旧配置。

  2. 将其从文件系统中删除,因为 slapd将不会自行删除数据:

    实际的数据库是一堆文件。如果要删除它们,请使用rm -rf

相关内容