2.6.18-xenU-ec2-v1.5でnscdを起動しようとすると、以下のエラーが発生。
shell> nscd -d 2011年11月24日 21時52分03秒 - 3629: Failed to drop capabilities nscd: cap_set_proc failed
「modprobe capability」で直るようだが、うまく動作しない。
以下のフォーラムで一応の解決策が書いてあった。
https://forums.aws.amazon.com/thread.jspa?threadID=40532
v1.2のモジュールを落としてきて展開。
wget http://s3.amazonaws.com/ec2-downloads/ec2-modules-2.6.18-xenU-ec2-v1.2-x86_64.tgz tar zxvf ec2-modules-2.6.18-xenU-ec2-v1.2-x86_64.tgz -C /
v1.2のモジュールをロード。
echo 'install commoncap /sbin/modprobe -i commoncap || /sbin/modprobe -i --set-version 2.6.18-xenU-ec2-v1.2 commoncap' >/etc/modprobe.d/commoncap-hack modprobe capability modprobe capability # 2回実行する
これでとりあえずはnscdが起動するようになる。
shell> /etc/init.d/nscd start nscd を起動中: [ OK ] shell> /etc/init.d/nscd status nscd (pid 2156) を実行中...
/etc/init.d/nscdに以下のパッチをあてておく。*1
---- /etc/init.d/nscd.orig 2011-07-22 23:59:09.000000000 +0900 +++ /etc/init.d/nscd 2011-11-24 22:41:53.000000000 +0900 @@ -38,6 +38,10 @@ start () { [ -d /var/run/nscd ] || mkdir /var/run/nscd [ -d /var/db/nscd ] || mkdir /var/db/nscd + + # see https://forums.aws.amazon.com/thread.jspa?threadID=40532 + /sbin/modprobe capability + secure="" # for table in passwd group hosts # do
*1:/etc/modprobe.confをいじってもうまくいかなかった