1 (26-06-2012 16:57:14 отредактировано karandash)

Тема: CentOS+nodejs+forever(stopstart) проблема

Имеем:

CentOS 6.2
kernel 2.6.32-220.el6.x86_64
nodejs v0.6.19
npm v 1.1.24
forever

есть пользователь вот с таким окружением
от лица которого хотелось бы запуск скрипта

/etc/passwd
node:x:501:501::/usr/sbin/nologin:/bin/bash:/usr/local/bin/node:/usr/local/bin/forever:/usr/local/bin:/usr/local/lib/node_modules/forever/bin

Далее. Скрипт который хотим чтобы висел forever. Назовем его hello2.js

Добавлено: 26-06-2012 16:57:32

Далее. Скрипт который хотим чтобы висел forever. Назовем его hello2.js

==============
#!/bin/bash
echo "URRAAAA"
==============

Посмотрим как работает  forever

[max@localhost Desktop]$ forever start hello2.js
info: Forever processing file: hello2.js
[max@localhost Desktop]$ forever list
info: Forever processes running
data: uid command script forever pid logfile uptime
data: [0] n4EB node hello2.js 2675 2728 /home/max/.forever/n4EB.log 0:0:0:0.130

Работает, Отлично.

Далее создаем старт-стор скрипт. Назовем его node и вот с таким листингом.

===========================
#!/bin/bash

#proccessname: node

USER=node
PWD=node
node=node
forever=forever

start() {

         forever start -l forever.log -o out.log -e err.log /home/max/Desktop/hello2.js
         
            }


stop(){

      /usr/local/bin/forever stopall
     }

  restart() {
   stop
   start
    }
    status(){
    /usr/local/bin/forever list
    }
   
    #see how we were called
    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    restart)
    stop
    start
    ;;
    status)
    status
    ;;
    *)
    echo $ "usage $0 {start | stop | status | restart}"
    exit 1
    esac
    exit 0

=========================================
и потом сделаем его исполняемым.

Посмотрим как работает:


[max@localhost Desktop]$ ./node
$ usage ./node {start | stop | status | restart}

[max@localhost Desktop]$ ./node start
info: Forever processing file: /home/max/Desktop/hello2.js
[max@localhost Desktop]$ ./node status
info: No forever processes running

То есть он вроде как запустился, а в forever list нет.


При этом

[max@localhost Desktop]$ forever start hello2.js
info: Forever processing file: hello2.js
[max@localhost Desktop]$ forever list
info: Forever processes running
data: uid command script forever pid logfile uptime
data: [0] n4EB node hello2.js 2675 2728 /home/max/.forever/n4EB.log 0:0:0:0.130
[max@localhost Desktop]$

То есть  Работает.

Что не так с старт стоп скриптом или в чем еще? толкните а

Thumbs up Thumbs down