Итак, как восстановить базу LDAP из бекапа в LDIF файлах?
1. Копируем из бекапа файлы ldif конфига и базы:
cn=config.ldif, cn=bd-log.ldif, o=bd.ldif
В cn=config.ldif содержится вся конфигурация базы.
2. Создаем директории:
$ ls -la /var/lib/ldap/
drwxr-xr-x 2 ldap ldap 4096 Oct 4 10:20 cn=bd-log
drwxr-xr-x 2 ldap ldap 4096 Oct 4 10:20 o=bd
3. Копируем сертификаты cacert.pem, cert.pem, key.pem в /etc/ssl/, если у вас ldap работал по tls.
4. Правим /etc/sysconfig/slapd:
SLAPD_URLS="ldapi:/// ldap://0.0.0.0:389/ ldaps://0.0.0.0:636/"
5. Заливаем конфиг и базу:
Чистим slapd.d: rm -rf /etc/openldap/slapd.d/cn\=config*
slapadd -F /etc/openldap/slapd.d/ -n 0 -l /home/centos/cn\=config.ldif
slapadd -F /etc/openldap/slapd.d/ -b o=bd -c -l /home/centos/slapd/o\=bd.ldif
Ошибок при заливке быть не должно, если ошибки есть, то что-то пошло не так.
6. Меняем права:
chown -R ldap:ldap /var/lib/ldap/*
chown -R ldap:ldap /etc/openldap/slapd.d/*
Запускаем ldap: systemctl start slapd.service
systemctl enable slapd.service
Готово.