My apologies if this is off-topic...
On a centos6.4 system I installed 389 server from EPEL. It seems to work well enough. However I'm trying to script things, rather than do it via the GUI. So, for example, I want to add a new suffix:
#!/bin/ksh -p
pswd=$(cat ~/passwd)
add() { echo "dn: cn=example,cn=ldbm database,cn=plugins,cn=config changetype: add objectclass: extensibleObject objectclass: nsBackendInstance nsslapd-suffix: dc=example,dc=com
dn: cn=dc=example,dc=com,cn=mapping tree,cn=config changetype: add objectclass: top objectclass: extensibleObject objectclass: nsMappingTree nsslapd-state: backend nsslapd-backend: example cn: dc=example,dc=com " | ldapmodify -a -D "cn=directory manager" -w $pswd -h $1 }
add my_server
This appears to work.
adding new entry "cn=example,cn=ldbm database,cn=plugins,cn=config"
adding new entry "cn=dc=example,dc=com,cn=mapping tree,cn=config"
However I then try and use this new root suffix:
#!/bin/ksh -p
pswd=$(cat ~/passwd)
add() { echo "dn: dc=stephen_test,dc=example,dc=com objectClass: top objectClass: domain dc: stephen_test
" | ldapmodify -a -D "cn=directory manager" -w $pswd -h $1 }
add my_server
And this fails adding new entry "dc=stephen_test,dc=example,dc=com" ldap_add: No such object (32)
Similarly: % ldapsearch -x -b 'dc=example,dc=com' # extended LDIF # # LDAPv3 # base <dc=example,dc=com> with scope subtree # filter: (objectclass=*) # requesting: ALL #
# search result search: 2 result: 32 No such object
# numResponses: 1
Clearly I'm missing something obvious... but I can't see what!