If I copy the slapd.d directory from /etc/ldap (where Ubuntu stored it) into /usr/local/etc/ldap, my problem then is that (a) the configuration is still pointing at various Ubuntu locations but, worse, (b) trying to use slapadd reports this error:
lt_dlopenext failed: (back_hdb) file not found
All of the various bits of code seem to be in /usr/local/libexec/ldap so I suspect a path or something needs to be set/adjusted ...
Solved it ... back_hdb is being loaded by cn=module{0}.ldif:
dn: cn=module{0} objectClass: olcModuleList cn: module{0} olcModulePath: /usr/lib/ldap olcModuleLoad: {0}back_hdb
olcModulePath, if defined, is referenced INSTEAD OF any environment variables like PATH or LD_LIBRARY_PATH.
/usr/lib/ldap is the Ubuntu path. The new location is /usr/local/libexec/ldap. Since I can't edit the ldif file, I put in a symbolic link.
Regards
Philip
On 11 December 2013 14:35, Philip Colmer philip.colmer@linaro.org wrote:
This is what I've done so far on a test server that is a copy of our production server:
- slapcat -bcn=config -l config.ldif
- slapcat -l backup.ldif
- Uninstalled Ubuntu installation of OpenLDAP
- Built and installed new version of OpenLDAP using default locations
I'm now a bit stuck at getting the new installation of OpenLDAP to build the new databases. I've gone through the config.ldif built in step 1, changing the Ubuntu LDAP paths to what I believe are the default OpenLDAP locations. If I don't have a slapd.d directory in /usr/local/etc/ldap when I try to slapadd the config.ldif file in, it complains that I don't have a config.ldif file in /usr/local/etc/ldap.
If I copy the slapd.d directory from /etc/ldap (where Ubuntu stored it) into /usr/local/etc/ldap, my problem then is that (a) the configuration is still pointing at various Ubuntu locations but, worse, (b) trying to use slapadd reports this error:
lt_dlopenext failed: (back_hdb) file not found
All of the various bits of code seem to be in /usr/local/libexec/ldap so I suspect a path or something needs to be set/adjusted ...
Many thanks for any suggestions/corrections.
Philip
On 6 December 2013 14:06, espeake@oreillyauto.com wrote:
Phillip,
I have done the exact same thing. And you can control where data is at through your configuration files. As far as the other directories that change, you definitely want to use folders other than what the distro version uses. That way you do not overwrite files that other systems may need. Make sure you have a good backup of your config and your data. I did remove the existing version before I installed the current version.
This is also a good time to look at tuning your setup as far as your your replication if you are doing that. There are some great people on this list that were very helpful in getting me going, especially since I am (as I considor myself) a noob to openldap.
Eric Speake Web Systems Administrator O'Reilly Auto Parts
From: Philip Colmer philip.colmer@linaro.org To: openldap-technical@openldap.org Date: 12/06/2013 05:41 AM Subject: Upgrading from Ubuntu-packaged 2.4.28 to self-built 2.4.38 Sent by: openldap-technical-bounces@OpenLDAP.org
Our current implementation of OpenLDAP is Ubuntu 12.04 running version 2.4.28 which has been installed as a package.
To upgrade to 2.4.38, it looks like I need to remove that package and then install my own built binaries.
Has anyone gone through this process before and got any tips/notes to share? I'm particularly thinking that there will be some path changes to contend with. For example, my main HDB database seems to be in /var/lib/ldap but the migration steps suggest that everything is in /usr/local/var/openldap-data/.
Clearly I can work through this but if someone has already done it and can share lessons learnt, that would be much appreciated.
Philip
-- This message has been scanned for viruses and dangerous content, and is believed to be clean. Message id: 0B814601340.ACC54
This communication and any attachments are confidential, protected by Communications Privacy Act 18 USCS ยง 2510, solely for the use of the intended recipient, and may contain legally privileged material. If you are not the intended recipient, please return or destroy it immediately. Thank you.