My blog

Add intelligent tagline here

[pandorafms]pandora agentを一般ユーザで起動する

Pandora FMSのagentは普通のユーザでも起動できます。(zabbixは現状zabbixユーザ以外では起動できないみたいです) しかし、せっかくの起動スクリプトが su するようになっており、rootパスワードを聞かれてしまいます。

そのため、今のユーザとpandoraの起動ユーザが同じ場合はsuをしないように、軽く以下のパッチを当ててみました。

今は /etc/init.d に置いていますが、これを pandora のディレクトリ以下に置いておけばおーけーになりました。

--- pandora_agent_daemon        2012-03-08 12:36:42.886566593 +0900
+++ /etc/init.d/pandora_agent_daemon    2012-03-08 12:35:51.402566934 +0900
@@ -86,7 +86,12 @@
                        echo "Cannot launch again. Aborting."
                        exit 1
                fi
-               su $PANDORA_USER -c "PATH=$PATH nohup $DAEMON $PANDORA_PATH >/dev/null 2>$LOGFILE"

+               if [ $USER = $PANDORA_USER ]
+               then
+                       PATH=$PATH nohup $DAEMON $PANDORA_PATH >/dev/null 2>$LOGFILE &
+               else
+                       su $PANDORA_USER -c "PATH=$PATH nohup $DAEMON $PANDORA_PATH >/dev/null 2>"

+               fi
                sleep 2
                PANDORA_PID=`pidof_pandora`
                echo "Pandora FMS Agent is now running with PID $PANDORA_PID"
@@ -100,7 +105,12 @@
                        exit 1
                else
                        echo "Stopping Pandora Agent."
-                       su $PANDORA_USER -c "kill $PANDORA_PID >/dev/null 2>&1"
+                       if [ $USER = $PANDORA_USER ]
+                       then
+                               kill $PANDORA_PID >/dev/null 2>&1
+                       else
+                               su $PANDORA_USER -c "kill $PANDORA_PID >/dev/null 2>&1"
+                       fi
                fi
        ;;