在solaris上运行脚本启动

时间:2015-11-19 12:04:51

标签: node.js solaris startup reboot

当我解雇svcs -a时,我得到了 legacy_run 11:47:21 lrc:/etc/rc3_d/S99hrms_init_sh 但是当重启区域没有执行脚本时。 但它使用/etc/init.d/hrms_init.sh start正常运行。 我使用ln -s /etc/init.d/hrms_init.sh /etc/rc3.d/S99hrms_init.sh rc3.d中设置了它。 编辑:添加了脚本文件。

脚本

#!/bin/sh

SERVER="/root/hrms/app.js"

do_stop()
{
    echo -n $"Stopping $SERVER: "
    pid=`ps -ef | grep "node $SERVER" | grep -v " grep " | awk '{print $2}'`
    kill -9 (ps -ef | grep "node $SERVER" | grep -v " grep " | awk '{print $2}') > /dev/null 2>&1
    RETVAL=$?
}

case "$1" in
    start)
            node /root/hrms/app.js
            RETVAL=$?
            ;;
    stop)
            do_stop
            ;;
    restart)
            do_stop
            do_start
            ;;
    *)
            echo "Usage: $0 {start|stop|restart}"
            RETVAL=1
esac

exit $RETVAL

还尝试了清单link。 但是那个清单显示在线*但没有运行。

1 个答案:

答案 0 :(得分:1)

脚本在引导时执行,但如果node命令不在默认PATH中,则会失败。如果是这种情况,则需要在启动脚本中设置预期的PATH。

顺便说一下,

echo -n $"Stopping $SERVER: "

是假的,应该是:

printf "Stopping $SERVER: "