4

I am trying to restore my OpenLDAP server from an ldif file I made before it went horribly wrong.

All of the websites I found talk about using slapadd but when I run slapadd -v -l ~ns01/openldap_config.ldif it returns the error Could not stat config file "/etc/ldap/slapd.conf" : No such file or directory (2) slapadd: bad configuration file!

When I look in the directory indeed the file does not exist, but this is because Ubuntu 11.10 is running in RTC mode, my LDAP server uses the /etc/slapd.d/cn=config for the configuration. So? What am I missing? Is slapadd the wrong tool to use?

As I said above I running on Ubuntu 11.10 server edition 64-bit.

3 Answers 3

3

Looking through the documentation it looks as if you may be able to use the -F flag to slapadd to specify a configuration directory, rather than a configuration file:

   -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.

If this doesn't work (e.g., you're missing the contents of your cn=config tree), possibly this thread has some suggestions.

4
  • Thanks for the help, this is the best lead I have had so far. Oct 20, 2011 at 6:16
  • Well I reinstalled slapd after I got my server back online. I could just use the default config as base correct? Oct 20, 2011 at 6:23
  • That sounds reasonable. I've (intentionally) avoided the cn=config stuff so far, so I'm mostly offering conjecture.
    – larsks
    Oct 20, 2011 at 13:18
  • Good enough for me, if it is not restorable it is not that huge of a problem. It was just a database with me as the only user, it was my learning LDAP server. It would just still suck to have redo everything. LDAP is tedious. Oct 21, 2011 at 4:59
0

Try this:

sudo ldapadd -Q -Y EXTERNAL -H ldapi:/// -f yourfile.ldif

Should work for Ubuntu 11.10, although I'm still exploring this new cn=config stuff.

1
  • I don't run with SASL (...yet) so -Q would not help me. Oct 26, 2011 at 4:18
0

I've used this:

ldapadd -c -x -H ldap://localhost:389 -D "dc=Manager,dc=example,dc=com" -w password -f /tmp/backup.ldif

Modified from https://github.com/gschueler/vagrant-rundeck-ldap/blob/master/load-ldif.sh

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .