Solaris | Monday, May 28, 2012

Solaris11 で Openldap


Solaris11 に入っている openldap を使うための手順を簡単に紹介します。


とりあえず、何もしないで起動してみます。

#svcs svc:/network/ldap/server:openldap_24
STATE STIME FMRI
disabled 10:23:35 svc:/network/ldap/server:openldap_24
#svcadm -v enable svc:/network/ldap/server:openldap_24
svc:/network/ldap/server:openldap_24 enabled.
#svcs svc:/network/ldap/server:openldap_24
STATE STIME FMRI
maintenance 2:06:57 svc:/network/ldap/server:openldap_24

と失敗していますので、ログをチェックします。
#cat /var/svc/log/network-ldap-server:openldap_24.log
[ May 28 02:06:57 Enabled. ]
[ May 28 02:06:57 Executing start method ("/lib/svc/method/ldap-olslapd start")
. ]
/lib/svc/method/ldap-olslapd[30]: exec: /usr/lib/slapd: cannot execute
[Permission denied]
[ May 28 02:06:57 Method "start" exited with status 126. ]

slapd の実行パーミッションがないというエラーです。実際見てみると、確かに実行できません。
#ls -l /usr/lib/slapd
-r--r--r-- 1 root bin 2555316 Oct 20 2011 /usr/lib/slapd

パーミッションを変更して、サービスを起動しなおしますがまた起動失敗となります。
#svcs svc:/network/ldap/server:openldap_24
STATE STIME FMRI
maintenance 2:11:06 svc:/network/ldap/server:openldap_24
#cat /var/svc/log/network-ldap-server:openldap_24.log
[ May 28 02:10:55 Leaving maintenance because disable requested. ]
[ May 28 02:10:55 Disabled. ]
[ May 28 02:11:05 Enabled. ]
[ May 28 02:11:05 Executing start method ("/lib/svc/method/ldap-olslapd start").
]
[ May 28 02:11:06 Method "start" exited with status 1. ]

これだけだと分かりにくいのですが、status 1 ということで起動できていません。

そこで /lib/svc/method/ldap-olsapd と
/etc/openldap/slapd.conf の下の方をみてみると、、(下は一部抜粋です)
[ldap-olsapd]
:
typeset -r LDAPUSR=openldap
typeset -r LDAPGRP=openldap
:
typeset -r SLAPD="/usr/lib/slapd -u ${LDAPUSR} -g {LDAPGRP} -f ${CONF_FILE}"
:
[slapd.conf]
:
# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory /var/openldap/openldap-data
:

とあり、database directory の /var/openldap/openldap-data にユーザーopenldap、グループopenldapで書き込み
できるようになっている必要があります。ここを見てみると、
ls -la /var/openldap             
total 14
drwxr-xr-x 4 root bin 4 Oct 20 2011 .
drwxr-xr-x 42 root sys 43 Nov 3 2011 ..
drwxr-xr-x 2 root bin 3 Nov 3 2011 openldap-data
drwxr-xr-x 2 root bin 2 Oct 20 2011 run

このようにディレクトリが openldap ユーザで書き込みできないようになっています。

このディレクトリの Owner/Group を変更して再度サービスを起動します。
# chown -R openldap:openldap openldap
# svcs svc:/network/ldap/server:openldap_24
STATE STIME FMRI
online 4:56:54 svc:/network/ldap/server:openldap_24

以上、無事起動することができました!

Join the discussion

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha
 

Visit the Oracle Blog

 

Contact Us

Oracle

Integrated Cloud Applications & Platform Services