@leha78

Как заставить демона работать постоянно, а не только во время SSH сессии?

Есть демон, котор лежит на хостинге, когда запускаю его через шел, он работает, но только пока открыта сессия, когда я закрываю putty, он перестает. Как заставить его работать постоянно?
  • Вопрос задан
  • 194 просмотра
Решения вопроса 2
@mantyr
Пишу много Golang кода с удовольствием:)
user@server ~ $ nohup ./program

Так же можно использовать


Если задача запустить и потом лишь перезапускать то лучше supervisor, пример из adw0rd.com/2012/11/2/python-supervisor :
[program:<project>_uwsgi]
; Имя программы в supervisor, например будет выводится в supervisorctl
process_name=%(program_name)s
; Вы можете указать сколько таких процессов надо запустить, по умолчанию 1
numprocs=1
; Путь до проекта (chdir)
directory=/<project>
; Команда для запуска программы
command=/<project>/venv/bin/uwsgi /<project>/uwsgi/production.ini
; Из под какого пользователя запускать программу
user=<username>
; При загрузке самого supervisor запускать программу
autostart=true
; Если программа аварийно завершилась, то перезапускать её
autorestart=true
; Перенаправляет пришедший STDERR в ответ supervisor'у в STDOUT (эквивалент /the/program 2>&1)
redirect_stderr=true
; Таймаут в секундах, после которого supervisor пошлет SIGKILL процессу,
; которому до этого посылал SIGCHLD
stopwaitsecs=60
; Какой сигнал посылать для остановки программы
stopsignal=INT
; Путь до error-лога
stderr_logfile=/var/log/<project>/wsgi_err.log
; Путь до output-лога
stdout_logfile=/var/log/<project>/wsgi_out.log
; Максимальный размер файла output-лога, после чего будет "rotate"
stdout_logfile_maxbytes=100MB
; Количество файлов output-лога
stdout_logfile_backups=30
; Размер буфера для output-лога
stdout_capture_maxbytes=1MB
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы