サーバ起動時にnodeで自分が作った.jsを起動する

1./etc/init.d/nodeを作る

vi /etc/init.d/node

#!/bin/sh
#
# chkconfig: 35 99 99
# description: Node.js /MyDirectory/app.js
#

. /etc/rc.d/init.d/functions

user="root" # 実行するユーザー

nodejs="/root/.nvm/v0.6.12/bin/node" # Node.jsのパス
rootdir="/MyDirectory/" #app.jsがあるパス

server="$rootdir/app.js" # サーバへのパス

logfile="/var/log/node/app.log" # ログファイルのパス

lockfile="/var/lock/subsys/node" # ロックファイルへのパス

start()
{
    if [ ! -f $lockfile ] ; then
        echo -n $"Starting $server: "
        runuser -l "$user" -c "nohup $nodejs $server >> $logfile &" && echo_success || echo_failure
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch $lockfile
    else
        echo "$server is locked."
        RETVAL=1
    fi
}

stop()
{
    echo -n $"Stopping $server: "
    pid=`ps -aefw | grep "$nodejs $server" | grep -v " grep " | awk '{print $2}'`
    kill -9 $pid > /dev/null 2>&1 && echo_success || echo_failure

    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] && rm -f $lockfile
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        RETVAL=1
esac

exit $RETVAL

2.chkconfigに登録する

  1. chkconfig --add node
  2. chkconfig node on

rebootすると/etc/init.d/node startされていると思います。