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
kolab の一部と思われる 389-ds を Ubuntu 14.04 にインストールしようとしていました。同じ問題に遭遇しました。途中で呼び出される 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
そこで、これを回避するために、インストールにユーザーとグループを使用したところ、うまくいきました。