仕事でLDAPを使わなければならなくなりそうなのだが…、今まで使った経験がないので、いまいち不安がある。
ってなわけで、休日にもかかわらずLDAP調査。
[Lightweight Directory Access Protocol]の略称だというのは知ってるし、ツリー型データ構造だってのも了解。
で…、それってどうやって使うの?
っていうシステム屋的な部分が不明なのですよ。
「どうやって使うの?」は人から聞いても、実際の所わからないので自分で構築して触ってみることにした。
とはいっても、開発機でLDAPは動いていない。
動いていない = インストールされていない
だと思っていた自分は、一生懸命ソースからビルドしてインストールしようとしていたが…どうもオカシイ。
checking Cyrus SASL library version… no エラーが出るので、「Cyrus SASL」をインストール。
OpenLDAP自体のConfigureおよびBuildも完了。
なのに、「make test」を実行すると「slapd」が起動できない。
./tests/testrun/slapd.1.log
を確認したら、SASLのバージョンが一致しないんだとか。
OpenLDAPが認識しているSASLバージョンは2.1.12なのに実際は2.1.10…。
which で saslauthd の場所を確認したら /usr/sbin 、ソースからビルドしたものは /usr/local/sbin にインストールされたはずなので、これは元々 Cyrus SASL が入っていたらしい。
rpmコマンドで確認したら、入ってた…。というかOpenLDAPも入ってた。
ただ、OpenLDAPのサーバRPMが入っていないため実行はできないけど…。
なので openldap-servers-2.0.27-8.i386.rpm でサーバをインストール。
rpm -ivh openldap-servers-2.0.27-8.i386.rpm
でインストール実行したら…rpmコマンドが無反応。
どうやら度重なる rpm -qa でロックファイルが残ってしまったらしい。
cd /var/lib
cp -R rpm rpm20060408
cd rpm
rm ./__db*
rpm -vv –rebuilddb
でロックファイルの削除とRPMのDB修正。
その後で、再度インストールしたら無事成功。
無事、 /etc/init.d ディレクトリにも ldap が登録されました。
ないのでツリーとかを仕事しなかったの?