Автор Тема: Проблема с автозапуском скрипта для node.js с помощью forever  (Прочитано 3642 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sonic

Здравствуйте.
У меня имеется VPS на Debian 6 и приложение, работающее с node.js. Мне нужно, чтобы оно постоянно было запущено, для этого есть утилита forever. Из консоли достаточно запустить:

forever start /путь_до_скрипта/название_приложения.js
После этого приложение будет постоянно работать.
Я пытался сделать автозапуск приложения при загрузки с помощью крона:

@reboot forever start /путь_до_скрипта/название_приложения.js
Но после перезагрузки приложение не запустилось, поэтому я решил сделать стартовый скрипт по мануалу:
скрипт: ShowHide

Цитировать
#! /bin/sh

### BEGIN INIT INFO
# Provides:          node
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: node
# Description:       node
### END INIT INFO

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Starting node "
   forever start /путь_до_скрипта/название_приложения.js
    ;;
  stop)
    echo "Stopping node"
   forever stop /путь_до_скрипта/название_приложения.js
    ;;
  *)
    echo "Usage: /etc/init.d/node {start|stop}"
    exit 1
    ;;
esac

exit 0


Выставил ему права 755, проверил ручным запуском (из консоли отлично запускается и останавливается), добавил скрипт с помощью sudo update-rc.d node defaultsПосле выполнения команды выше никаких ошибок и предупреждений небыло, но после перезагрузки опять не стартует.

Уважаемые форумчане, подскажите, пожалуйста, как же мне добавить автоматический запуск приложения при загрузке?
« Последнее редактирование: 09 Июня 2014, 10:45:57 от Sonic »
 

Оффлайн sandaksatru

Уважаемые форумчане, подскажите, пожалуйста, как же мне добавить автоматический запуск приложения при загрузке?
Линки на скрипт в папки с уровнями запуска встали?
 

Оффлайн Sonic

Не могли бы вы подсказать как я могу проверить, встали ли линки?
 

Оффлайн sandaksatru

Не могли бы вы подсказать как я могу проверить, встали ли линки?
В стабильной версии Debian работает ещё классическая система инициализации. Все стартовые скрипты располагаются в директории /etc/init.d. На них создаются линки в папках, соответствующих уровням запуска, на которых нужно, чтобы эти сервисы работали. Это каталоги /etc/rcX.d, где X - уровень запуска. Параметр defaults команды update-rc.d создает линки в уровнях 2-5, которым соответствуют папки /etc/rc2.d, /etc/rc3.d, /etc/rc4.d, /etc/rc5.d. Посмотрите в одной из них, существует ли ссылка на ваш инит-скрипт?

Если не существует, то сервис можно установить ещё таким путём:
sudo insserv /etc/init.d/имя_скрипта
Вообще должны работать оба способа.
 

Оффлайн Sonic

Ссылки на скрипт существуют во всех папках (/etc/rc2.d, /etc/rc3.d, /etc/rc4.d, /etc/rc5.d).
 

Оффлайн endru

ну тогда давайте вывод команды:
whereis foreverи сам скрипт запуска init.d под спойлером

Оффлайн Sonic

whereis forever вернул:
/usr/local/bin/forever
Я попробовал прописать полный путь к forever в скрипт запуска, но не помогло.
скрипт: ShowHide

Цитировать
#! /bin/sh

### BEGIN INIT INFO
# Provides:          node
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: node
# Description:       node
### END INIT INFO

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Starting node "
   /usr/local/bin/forever start /путь_до_скрипта/название_приложения.js
    ;;
  stop)
    echo "Stopping node"
   /usr/local/bin/forever stop /путь_до_скрипта/название_приложения.js
    ;;
  *)
    echo "Usage: /etc/init.d/node {start|stop}"
    exit 1
    ;;
esac

exit 0


Вручную этот скрипт отлично работает как с параметром start, так и с параметром stop.
 

Теги:
     

    Проблема с Postfix. Одолели спамеры.

    Автор KPD

    Ответов: 2
    Просмотров: 1667
    Последний ответ 27 Апреля 2014, 20:57:41
    от starlayt
    Проблема авторизации roundcube в dovecot+postfix

    Автор kib25

    Ответов: 0
    Просмотров: 2173
    Последний ответ 06 Июля 2015, 09:37:05
    от kib25
    проблема с "новым пользователем" в ISPmanager

    Автор aviator

    Ответов: 0
    Просмотров: 1085
    Последний ответ 18 Июля 2016, 10:30:32
    от aviator
    Проблема с postfix

    Автор DarkLor

    Ответов: 1
    Просмотров: 2890
    Последний ответ 12 Января 2012, 17:35:55
    от dolphin8383
    Проблема с фтп

    Автор yx0

    Ответов: 2
    Просмотров: 1990
    Последний ответ 24 Сентября 2012, 00:11:00
    от yx0