Openldap
openldap 2.4.11 - bdb_dn2id:獲取失敗:DB_NOTFOUND:未找到匹配的密鑰/數據對 (-30989)
我現在掙扎了很長一段時間,用Google搜尋了很多,但我還沒有弄清楚這個 - 希望是 - 簡單的問題。我是 ldap 的初學者,所以我可能會遺漏一些非常明顯的東西……我有一個非常簡單的 slapd.conf:
include /private/etc/openldap/schema/core.schema pidfile /private/var/db/openldap/run/slapd.pid argsfile /private/var/db/openldap/run/slapd.args database bdb suffix "dc=ronr,dc=nl" rootdn "cn=manager,dc=ronr,dc=nl" rootpw zz directory /private/var/db/openldap/openldap-data index objectClass eq
和一個 ldap.conf:
URI ldap://localhost
並開始打耳光。嘗試使用連接到 rootdn 時
ldapadd -x -D "cn=manager,dc=ronr,dc=nl" -w zz -f add_base.ldif -h localhost -d255
我得到:ldap_bind:憑據無效 (49)
在 slapd 的調試級別 250 跟踪中,我得到:
slapd startup: initiated. backend_startup_one: starting "cn=config" config_back_db_open config_build_entry: "cn=config" config_build_entry: "cn=schema" config_build_entry: "cn={0}core" config_build_entry: "olcDatabase={-1}frontend" config_build_entry: "olcDatabase={0}config" config_build_entry: "olcDatabase={1}bdb" backend_startup_one: starting "dc=ronr,dc=nl" bdb_db_open: database "dc=ronr,dc=nl": dbenv_open(/private/var/db/openldap/openldap-data). bdb_monitor_db_open: monitoring disabled; configure monitor database to enable slapd starting slap_listener_activate(7): >>> slap_listener(ldap:///) connection_get(13): got connid=0 connection_read(13): checking for input on id=0 ber_get_next ber_get_next: tag 0x30 len 38 contents: ber_get_next conn=0 op=0 do_bind ber_scanf fmt ({imt) ber: ber_scanf fmt (m}) ber: >>> dnPrettyNormal: <cn=manager,dc=ronr,dc=nl> <<< dnPrettyNormal: <cn=manager,dc=ronr,dc=nl>, <cn=manager,dc=ronr,dc=nl> do_bind: version=3 dn="cn=manager,dc=ronr,dc=nl" method=128 bdb_dn2entry("cn=manager,dc=ronr,dc=nl") => bdb_dn2id("dc=ronr,dc=nl") **<= bdb_dn2id: get failed: DB_NOTFOUND: No matching key/data pair found (-30989)** send_ldap_result: conn=0 op=0 p=3 send_ldap_response: msgid=1 tag=97 err=49 ber_flush2: 14 bytes to sd 13 connection_get(13): got connid=0 connection_read(13): checking for input on id=0 ber_get_next ber_get_next on fd 13 failed errno=0 (Undefined error: 0) connection_closing: readying conn=0 sd=13 for close connection_close: conn=0 sd=13
我懷疑這條線
<= bdb_dn2id: get failed: DB_NOTFOUND: No matching key/data pair found (-30989)
試圖告訴我真正的問題。關鍵是我不知道這裡缺少什麼。我怎樣才能解決這個問題?除了像我所做的那樣將其放入 slapd.conf 之外,我是否應該做一些額外的事情來管理密碼,如果是,我應該怎麼做?FWIW:我在 MacOSX (10.6.6) 上執行它
非常感謝任何有用的提示/建議。羅納德。
我在 Linux 上進行了測試,它工作正常,顯然配置相同。所以我決定使用 ./config –prefix=/usr/local 從 ftp.nl.uu.net/pub/unix/db/openldap/openldap-release/… 安裝 openldap 這導致錯誤版本伯克利數據庫。所以我下載了 download.oracle.com/berkeley-db/db-4.8.30.tar.gz 執行 configure –prefix=/usr/local,安裝它並再次執行 configure for openldap,運氣更好。安裝後它立即工作,從那以後沒有任何問題。並不是說我可以說我知道問題出在哪裡,但對我來說已經足夠了。