我正在尝试在我的 Ubuntu 14.04 服务器上安装 kolab 协作软件。我按照说明进行操作这里。
我在“setup-kolab”期间遇到错误:
Could not import LDIF file '/tmp/ldifsAgNzA.ldif'. Error: 65280. Output: ./ldif2db: 85: [: 0: unexpected operator
importing data ...
[04/Jul/2015:19:28:52 -0500] - mkdir_p /var/lib/dirsrv/slapd-core: error -5966 (Access Denied.)
[04/Jul/2015:19:28:52 -0500] - Can't start because the database directory "/var/lib/dirsrv/slapd-core/db" either doesn't exist, or is not accessible
[04/Jul/2015:19:28:52 -0500] - ERROR: Failed to init database (error -1: BDB0092 Unknown error: -1)
Error: Could not create directory server instance 'core'.
Exiting . . .
Log file is '/tmp/setupOrcgdf.log'
我创建了一个新的用户和组(称为 kolab-srv 和 kolab-srv-grp),然后运行 setup-kolab。我收到上述错误。无论我以 root 身份登录、使用 sudo 命令运行此命令或将 kolab-srv 用户添加到框上的管理员组,似乎都无关紧要……我每次都收到相同的消息。
每次收到消息时,我都会删除目录/var/lib/dirsrv/slapd-core
,进行更改,然后重新开始设置,但只会得到相同的结果。
答案1
我试图在 Ubuntu 14.04 上安装 389-ds,它似乎是 kolab 的一部分。我遇到了同样的问题。它似乎是在安装过程中调用的 ldif2db 脚本中的一个“错误”。通过常规软件包安装的该脚本版本具有:
#!/bin/sh
在第 85 行失败:
if [ $? == 1 ]
这对于 /bin/sh 无效。我可以通过更改 /usr/sbin/ldif2db 脚本来解决这个问题:
#!/bin/bash
非常不安全并且必然会在其他地方引起问题,但是......
答案2
当我尝试运行 Dogtag 时,我在 Debian Testing(strech)上遇到了同样的错误。
我已经创建了从/bin/sh
到的符号链接/bin/bash
,但仍然出现相同的错误。
然后我检查了分配给的用户和组/var/lib/dirsrv
# ls -lha /var/lib/dirsrv/<br>
total 8.0K<br>
drwxr-x--- 2 dirsrv dirsrv 4.0K Mar 9 2015 .<br>
drwxr-xr-x 29 root root 4.0K Apr 8 17:00 ..<br>
为了解决这个问题,我dirsrv
以用户和组的身份进行安装,然后它就起作用了。