请帮忙看看如下问题 ldap连接不上 ./slapd -d 256

seathink 2010-12-16 01:43:09
请帮忙看看如下问题

ldap连接不上

[root@localhost libexec]# ./slapd -d 256
@(#) $OpenLDAP: slapd 2.4.11 (Dec 16 2010 11:01:13) $
root@localhost.localdomain:/usr/local/openldap-2.4.11/servers/slapd
bdb_monitor_db_open: monitoring disabled; configure monitor database to enable
slapd starting

在make test 的时候也通不过
上网查看发现可能是数据BDB的存在不同版本
我倒/usr/lib中果然发现有其他版本,但是替换后仍然有问题

不知道如何解决了

...全文
614 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
steptodream 2010-12-16
  • 打赏
  • 举报
回复
看样子是启动之后 又关闭了 你看看日志啊!

另外你启动slapd之后 等一会再 ps -ef | grep slapd 看看还在不在。
seathink 2010-12-16
  • 打赏
  • 举报
回复
请看我的操作:

[root@localhost libexec]# ./slapd
[root@localhost libexec]# ps -ef | grep slapd
root 18836 1 0 17:02 ? 00:00:00 ./slapd
root 18842 9751 0 17:02 pts/6 00:00:00 grep slapd
说明我启动了进程slapd
然后执行:
[root@localhost libexec]# ldapadd -x -D 'cn=Manager,dc=my-domain,dc=com' -w secret -f /usr/local/openldap/bin/init.ldif
adding new entry "ou=People,dc=my-domain,dc=com"
ldap_result: Can't contact LDAP server (-1)

You have new mail in /var/spool/mail/root
得到如上结果,然后再执行你给的命令:却变成了这个样子:
[root@localhost libexec]# ps -ef | grep slapd
root 19031 9751 0 17:06 pts/6 00:00:00 grep slapd

steptodream 2010-12-16
  • 打赏
  • 举报
回复
说明你的slapd根本没有启动成功
你再ps -ef | grep slapd看看 如果有进程在的话
就说明slapd没有在默认端口389上监听 而你ldapsearch会去链接默认端口 当然连部上。

如果ps -ef | grep slapd也没进程 那么就彻底说明你的slapd没启动成功
你刚才说"查询slapd进程已经没有了,然后再启动的时候就一直停在那里了,是什么原因呢。" 你是不是按ctrl+c了 如果是 那当然slapd就停止了!
seathink 2010-12-16
  • 打赏
  • 举报
回复
使用netstat
[root@localhost libexec]# netstat -an | grep 389
unix 3 [ ] STREAM CONNECTED 46874389
You have new mail in /var/spool/mail/root
使用lsof
[root@localhost libexec]# lsof -i :389
[root@localhost libexec]#


steptodream 2010-12-16
  • 打赏
  • 举报
回复
你lsof -i:389 看看端口是不是在监听 slapd到底启动成功没有。
seathink 2010-12-16
  • 打赏
  • 举报
回复
但是,当我运行如下命令时
却会出现如下错误:
[root@localhost libexec]# ldapsearch -xb "dc=my-domain,dc=com"
# extended LDIF
#
# LDAPv3
# base <dc=my-domain,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

ldap_result: Can't contact LDAP server (-1)
You have new mail in /var/spool/mail/root
[root@localhost libexec]# cd ..
[root@localhost openldap]# cd bin
[root@localhost bin]# ls
ldapadd ldapdelete ldapmodify ldappasswd ldapwhoami
ldapcompare ldapexop ldapmodrdn ldapsearch
[root@localhost bin]# ./ldapsearch -xb "dc=my-domain,dc=com"
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)

这个问题我已经搞了几天了,都没有解决啊,我自我认为是berkeleyDB的版本问题
steptodream 2010-12-16
  • 打赏
  • 举报
回复
查询slapd进程已经没有了,然后再启动的时候就一直停在那里了,是什么原因呢。
---------------
你不是加了-d参数吗 这是debug模式启动 会在屏幕上输出debug信息! 如果你不知道-d参数 你干嘛要加上!
seathink 2010-12-16
  • 打赏
  • 举报
回复
[root@localhost libexec]# ps -ef | grep slapd
root 10608 9751 0 14:38 pts/6 00:00:00 grep slapd
[root@localhost libexec]# ./slapd -d 256
@(#) $OpenLDAP: slapd 2.4.11 (Dec 16 2010 11:01:13) $
root@localhost.localdomain:/usr/local/openldap-2.4.11/servers/slapd
slapd starting

查询slapd进程已经没有了,然后再启动的时候就一直停在那里了,是什么原因呢。
steptodream 2010-12-16
  • 打赏
  • 举报
回复
daemon: bind(7) failed errno=98 (Address already in use)
daemon: bind(7) failed errno=98 (Address already in use)
--------
说明你已经有slapd启动了 除了错误仔细看看嘛。

ps -ef | grep slapd
seathink 2010-12-16
  • 打赏
  • 举报
回复
修改后再运行
出现如下错误:
[root@localhost libexec]# ./slapd -d 256
@(#) $OpenLDAP: slapd 2.4.11 (Dec 16 2010 11:01:13) $
root@localhost.localdomain:/usr/local/openldap-2.4.11/servers/slapd
daemon: bind(7) failed errno=98 (Address already in use)
daemon: bind(7) failed errno=98 (Address already in use)
slapd stopped.
connections_destroy: nothing to destroy.
seathink 2010-12-16
  • 打赏
  • 举报
回复
好的,我试试,谢谢
steptodream 2010-12-16
  • 打赏
  • 举报
回复
你是源码安装的openldap?
在slapd.conf里追加一句
database monitor
再试试

18,829

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧