Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: автозапуск в дебиане
Форумы портала PHP.SU » Серверное администрирование » Администрирование *nix » автозапуск в дебиане

Страниц (1): [1]
 

1. DlTA - 21 Июня, 2013 - 21:47:03 - перейти к сообщению
есть у меня бинарник например /home/pi/rpi/sv
и нужно мне чтоб это дело запустилось при старте системы даже без залогирования
и благополучно там висело/работало

из гугла и наличия вроде понял что нужно в /etc/init.d/ положить запускаемый скрипт, а потом через chkconfig указать скрипту запуск по стандартным настройкам, то есть на состояние 2, 3, 4 (может и 5)

но вот чего не пойму, как правильно прописать/настроить этот самый скрипты для /etc/init.d/ чтоб она запускал мой бинарник?
2. EuGen - 21 Июня, 2013 - 21:53:46 - перейти к сообщению
0. Создать скрипт в /etc/init.d - например, пусть это будет custom-launch.sh
1. chmod 755 /etc/init.d/custom-launch.sh
2. Добавить в custom-launch.sh нужное Вам (то, что будет запускаться при старте системы)
3. update-rc.d custom-launch.sh defaults
3. DlTA - 21 Июня, 2013 - 21:55:40 - перейти к сообщению
EuGen пишет:
0. Создать скрипт в /etc/init.d - например, пусть это будет custom-launch.sh
мне вот этот вот пункт в деталях, с остальным я разобрался
4. EuGen - 21 Июня, 2013 - 21:58:08 - перейти к сообщению
DlTA пишет:
мне вот этот вот пункт в деталях, с остальным я разобрался

Создать файл и наполнить его тем содержимым, что Вам нужно. Подойдёт vim/nano и т.п. - любой редактор. Не очень понял, в чём тут сложность.
CODE (bash):
скопировать код в буфер обмена
  1. #!/bin/sh
  2. # /etc/init.d/custom-launch.sh
  3. #
  4.  
  5. # Some things that run always
  6. touch /var/lock/custom-launch
  7.  
  8. # Carry out specific functions when asked to by the system
  9. case "$1" in
  10.   start)
  11.     echo "Starting script custom-launch "
  12.     echo "Could do more here"
  13.     ;;
  14.   stop)
  15.     echo "Stopping script custom-launch"
  16.     echo "Could do more here"
  17.     ;;
  18.   *)
  19.     echo "Usage: /etc/init.d/custom-launch.sh {start|stop}"
  20.     exit 1
  21.     ;;
  22. esac
  23.  
  24. exit 0
5. DlTA - 21 Июня, 2013 - 22:01:26 - перейти к сообщению
сложность в том что демоном будет мой бинарник
6. EuGen - 21 Июня, 2013 - 22:03:23 - перейти к сообщению
И в чём сложность? Укажите в custom-launch.sh это, например:
CODE (bash):
скопировать код в буфер обмена
  1. /home/pi/rpi/sv > /dev/null &

(вывод можно не перенаправлять, конечно)
7. DlTA - 21 Июня, 2013 - 22:25:05 - перейти к сообщению
EuGen пишет:
start)
    echo "Starting script custom-launch "
    echo "Could do more here"
    /home/pi/rpi/sv > /dev/null &
    ;;

так?
8. EuGen - 21 Июня, 2013 - 22:27:14 - перейти к сообщению
echo можете убрать, это для примера.
9. DlTA - 21 Июня, 2013 - 22:29:33 - перейти к сообщению
то понятно, имею введу место указания запускаемого файла
(Добавление)
а в случае с остановкой демона, как скрипт узнает кого останавливать?
(Добавление)
и попутно,
мой скриптик постоянно что то выводит, пи прописывании я не указал кидать вывод в null

и зайти в первом терминале не возможно, и в остальных тоже, нет приглашения,
хотя в остальных возможно из за того что я попутно похерил /etc/init.d/ssh

что в теории теперь можно сделать?
(Добавление)
EuGen пишет:
# Some things that run always
touch /var/lock/custom-launch
а для чего это?
10. EuGen - 21 Июня, 2013 - 22:55:33 - перейти к сообщению
DlTA пишет:
а для чего это?

Аналог pid-файла (шелл-скрипт сам его не создаст за Вас). Не строго обязательно и служит, как правило, для определения того, что скрипт завершился аварийно (при штатном выходе pid-ы удаляются) - и для понимания, что существует запущенная копия. Можно и другие применения придумать.
DlTA пишет:
а в случае с остановкой демона, как скрипт узнает кого останавливать?

- не очень понятно. Задача обсуждаемого скрипта - запустить. Что дальше Вы будете делать с имеющимся процессом - решите сами.
DlTA пишет:
хотя в остальных возможно из за того что я попутно похерил /etc/init.d/ssh

Значит, openssh-сервер не стартует и Вы никак не соединитесь по ssh. Придётся вручную (если это продуктовый сервер - то, увы - ехать в ДЦ с клавиатурой)
11. DlTA - 21 Июня, 2013 - 22:58:19 - перейти к сообщению
EuGen пишет:
Значит, openssh-сервер не стартует и Вы никак не соединитесь по ssh. Придётся вручную (если это продуктовый сервер - то, увы - ехать в ДЦ с клавиатурой)

благо что это всего лишь виртуалка

 

Powered by ExBB FM 1.0 RC1