linux – Slapd服务无法启动,无法打开pid文件

我正在尝试为一些开发人员设置测试LDAP服务器,但我遇到了一些麻烦.
service slapd start

错误,所以我跑

/usr/sbin/slapd -d 1

这最终给了我以下错误

unable to open pid file “/var/run/ldap/slapd.pid”: 13 (Permission denied)

slapd destroy: freeing system resources.

slapd stopped.

/ var / run / ldap的权限如下:

root@pec:/var/run/ldap# ls -ld
drwxr-xr-x 2 openldap openldap 60 2012-07-04 20:45

所以我不明白为什么仍有权利被拒绝.
运行slapd时,Syslog提供以下内容

Jul  4 21:00:27 pec slapd[13758]: @(#) $OpenLDAP: slapd 2.4.21 (Dec 19 2011 15:40:04) $#012#011buildd@allspice:/build/buildd/openldap-2.4.21/debian/build/servers/slapd
Jul  4 21:00:27 pec kernel: [8147247.203100] type=1503 audit(1341428427.953:64):  operation="truncate" pid=13758 parent=20433 profile="/usr/sbin/slapd" requested_mask="::w" denied_mask="::w" fsuid=0 ouid=119 name="/var/run/ldap/slapd.pid"

谁能指出我正确的方向?

解决方法

你在运行什么发行版,你是如何安装OpenLDAP的?

你得到的错误来自AppArmor并告诉你它阻止了slapd创建它的pid文件.

对于Ubuntu:您的/etc/apparmor.d/usr.bin.slapd文件中应该包含以下内容

/{,var/}run/ldap/* w,

允许这个.

通常,这应该设置为无需进一步配置即可工作.

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...