![从 ldif 文件恢复 openldap 配置?](https://linux22.com/image/564981/%E4%BB%8E%20ldif%20%E6%96%87%E4%BB%B6%E6%81%A2%E5%A4%8D%20openldap%20%E9%85%8D%E7%BD%AE%EF%BC%9F.png)
我正在尝试从发生严重错误之前我创建的 ldif 文件来恢复我的 OpenLDAP 服务器。
我发现的所有网站都谈到了使用slapadd
,但当我运行时slapadd -v -l ~ns01/openldap_config.ldif
它返回错误Could not stat config file "/etc/ldap/slapd.conf" : No such file or directory (2) slapadd: bad configuration file!
当我查看目录时,文件确实不存在,但这是因为 Ubuntu 11.10 在 RTC 模式下运行,我的 LDAP 服务器使用进行/etc/slapd.d/cn=config
配置。那么?我遗漏了什么?是不是slapadd
用错了工具?
正如我上面所说,我在 64 位 Ubuntu 11.10 服务器版本上运行。
答案1
查看文档看起来好像您可以使用标志-F
来slapadd
指定配置目录,而不是配置文件:
-F confdir
specify a config directory. If both -f and -F are specified,
the config file will be read and converted to config directory
format and written to the specified directory. If neither
option is specified, an attempt to read the default config
directory will be made before trying to use the default config
file. If a valid config directory exists then the default config
file is ignored. If dry-run mode is also specified, no conver‐
sion will occur.
如果这不起作用(例如,你缺少 cn=config 树的内容),可能此主题有一些建议。
答案2
尝试这个:
sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f yourfile.ldif
应该适用于 Ubuntu 11.10,尽管我仍在探索这个新cn=config
东西。
答案3
我用过这个:
ldapadd -c -x -H ldap://localhost:389 -D "dc=Manager,dc=example,dc=com" -w password -f /tmp/backup.ldif
修改自https://github.com/gschueler/vagrant-rundeck-ldap/blob/master/load-ldif.sh