如果我只是slapd
以 root 身份运行而不带任何参数,它就会启动并正常工作。但是当我尝试使用启动它时/etc/init.d/slapd start
,它立即死机。
我从 init 脚本中看到有一个配置文件/etc/sysconfig/ldap
,但我找不到有效的设置组合。有人知道我需要做什么吗?
我回到默认的初始化脚本并尝试运行调试,但没有看到任何有用的信息。主要细节如下:
daemon --pidfile=/var/run/slapd.pid --check=slapd /usr/sbin/slapd -h '" ldap:///"' -u ldap
/bin/bash -c 'ulimit -S -c 0 >/dev/null 2>&1 ; /usr/sbin/slapd -h " ldap:///" -u ldap'`.
答案1
尝试手动启动/usr/sbin/slapd -u ldap
并发现它不起作用后,我最终想到尝试关闭 selinux ( setenforce 0
;我已经另一个问题关于如何使其在启用 selinux 的情况下工作)允许它以用户身份运行ldap
(从而允许标准 init 脚本工作)。
手册页说,-h
未指定时默认 URL 为ldap:///
(默认端口上所有接口上的 TCP)。因此,要获得与不带参数运行 slapd 相同的行为,您需要设置
SLAPD_LDAP=yes
SLAPD_LDAPI=no
SLAPD_LDAPS=no
在/etc/sysconfig/ldap
。