SSH запуск процесса в фоновом режиме (в фоне)

15.04.2018
Чтобы запустить процесс на сервере в фоновом режиме лучше всего использовать
# nohup <any_command> > <log_file>
Для просмотра запущенных процессов используем
# ps -xw
Далее будет выведен список процессов, для завершения первого вводим
# kill %1
и всё, nohup самая простая команда, которая корректно работает с любыми командами.

Для запуска .js скрипта с помощью nodejs лучше установить "screen" и затем запустить команду
# nohup screen -d -m -S [name] node [way_to_script.js]
Для просмотра запущенных процессов
screen -ls
Как управлять screen описал здесь

Другой способ - это использовать "forever"
# forever start <команда>
этот сервис может даже перезапустить неожиданно упавшие процессы и позволяет легко управлять запущенными, но один большой недостаток - то, что этот процесс не позволяет использовать конкретную команду для запуска процесса.

Пример: нужно запустить node server.js, для этого можно использовать forever start server.js и всё круто работает, но...
если нужно запустить babel-node server.js, то forever уже не сработает и будет пытаться запустить скрипт от лица node и выдавать ошибки если скрипт написан на ES6 и рассчитан под запуск с помощью babel-node. В этой ситуации как раз лучше (и верно) использовать nohup.

Рейтинг: