[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Unable to use OpenLDAP with BDB in Solaris.



Quanah Gibson-Mount wrote:



--On Wednesday, January 28, 2004 3:42 PM +0100 Anibal Caceres Hernando <anibal.caceres@ericsson.com> wrote:

    Hi,
    I'm using Solaris 8, and I've without problems BDB 4.2.52 and
OpenLDAP 2.1.25, but when I try to start the slapd process, I've the
following as response:

slapd startup: initiated.
bdb_db_open: o=company
bdb_db_open:
dbenv_open(/vobs/hes/hes_code/software/OpenLDAP/mms1-database)
bdb(o=company): mmap: Resource temporarily unavailable
bdb_db_open: dbenv_open failed: Resource temporarily unavailable (11)
backend_startup: bi_db_open(0) failed! (11)
slapd shutdown: initiated
====> bdb_cache_release_all
slapd shutdown: freeing system resources.
bdb(o=company): txn_checkpoint interface requires an environment
configured for the transaction subsystem
bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)
====> bdb_cache_release_all
slapd stopped.
connections_destroy: nothing to destroy.

    Apparently there's a problem opening the BDB database, but something
has been created in the database directory
(/vobs/hes/hes_code/software/OpenLDAP/mms1-database):

 >ls -l mms1-database/
total 16
-rw-------   1 eceacah  ERDSP001_ECC    8192 Jan 28 15:27 __db.001

    I've done the same in a Linux machine without problems. If anybody
can help me about this I'll be really grateful.
    Thank you very much.
    Kind regards,


Hello,

You need to create a database before starting slapd, usually done using the slapadd command on an ldif file.

--Quanah

Thank you for your answer, Quanah. I've tried to do what you suggest, but the result is the same:

>./proxy/sbin/slapadd -l mms1.ldif -f slapd1.conf -d 516
bdb_initialize: Sleepycat Software: Berkeley DB 4.2.52: (December 3, 2003)
bdb_db_init: Initializing BDB database
bdb_db_open: o=company
bdb(o=company): mmap: Resource temporarily unavailable
bdb_db_open: dbenv_open failed: Resource temporarily unavailable (11)
backend_startup: bi_db_open failed! (11)
bdb(o=company): txn_begin interface requires an environment configured for the transaction subsystem
=> bdb_tool_entry_put: txn_begin failed: Invalid argument (22)
slapadd: could not add entry dn="o=company" (line=5): txn_begin failed: Invalid argument (22)
bdb(o=company): txn_checkpoint interface requires an environment configured for the transaction subsystem
bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)


Again it seems to be a problem opening the database, but something has been created (by bdb_db_init, I suppose) in the database directory... I don't know what can be wrong... any more idea? I attach the configuration file I'm using.
Kind regards,


Aníbal.
# $OpenLDAP: pkg/ldap/servers/slapd/slapd.conf,v 1.8.8.7 2001/09/27 20:00:31 kurt Exp $
#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include         /vobs/hes/hes_code/software/OpenLDAP/proxy/etc/openldap/schema/core.schema
include         /vobs/hes/hes_code/software/OpenLDAP/proxy/etc/openldap/schema/cosine.schema
include         /vobs/hes/hes_code/software/OpenLDAP/proxy/etc/openldap/schema/inetorgperson.schema
include         /vobs/hes/hes_code/software/OpenLDAP/proxy/etc/openldap/schema/nis.schema
include         /vobs/hes/hes_code/software/OpenLDAP/mms_schema/mms_openldap.schema

# Define global ACLs to disable default read access.

# Do not enable referrals until AFTER you have a working directory
# service AND an understanding of referrals.
#referral	ldap://root.openldap.org

#pidfile	//var/run/slapd.pid
#argsfile	//var/run/slapd.args

# Create a replication log in /var/lib/ldap for use by slurpd.
#replogfile	/var/lib/ldap/master-slapd.replog

# Load dynamic backend modules:
# modulepath	/usr/sbin/openldap
# moduleload	back_ldap.la
# moduleload	back_ldbm.la
# moduleload	back_passwd.la
# moduleload	back_shell.la

#
# The next three lines allow use of TLS for connections using a dummy test
# certificate, but you should generate a proper certificate by changing to
# /usr/share/ssl/certs, running "make slapd.pem", and fixing permissions on
# slapd.pem so that the ldap user or group can read it.
# TLSCertificateFile /usr/share/ssl/certs/slapd.pem
# TLSCertificateKeyFile /usr/share/ssl/certs/slapd.pem
# TLSCACertificateFile /usr/share/ssl/certs/ca-bundle.crt
#
# Sample Access Control
#	Allow read access of root DSE
#	Allow self write access
#	Allow authenticated users read access
#	Allow anonymous users to authenticate
#
#access to dn="" by * read
#access to *
#	by self write
#	by users read
#	by anonymous auth
#
# if no access controls are present, the default is:
#	Allow read by all
#
# rootdn can always write!

#######################################################################
# ldbm database definitions
#######################################################################

database	bdb
suffix		"o=company"
#suffix		"o=My Organization Name,c=US"
rootdn		"cn=Manager,o=company"
#rootdn		"cn=Manager,o=My Organization Name,c=US"
# Cleartext passwords, especially for the rootdn, should
# be avoided.  See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw		secret
# rootpw		{crypt}ijFYNcSNctBYg
# The database directory MUST exist prior to running slapd AND 
# should only be accessible by the slapd/tools. Mode 700 recommended.
directory	/vobs/hes/hes_code/software/OpenLDAP/mms1-database
# Indices to maintain
index	objectClass,uid,uidNumber,gidNumber,memberUid	eq
index	cn,mail,surname,givenname			eq,subinitial
index	searchon					eq
# Replicas to which we should propagate changes
#replica host=ldap-1.example.com:389 tls=yes
#	bindmethod=sasl saslmech=GSSAPI
#	authcId=host/ldap-master.example.com@EXAMPLE.COM