LINUX.ORG.RU
ФорумAdmin

Научите запускать процессы в фоне

 , ,


1

2

Я почитал в гугле про nohup, screen, & и всякое-разное, но так и не понял, как делать правильно/кошерно. Суть задачи: подключаюсь по ssh, иду в одну папку, делаю npm run start, например, процесс запускается, консоль остаётся свободной, иду в другую папку, делаю что-то подобное, иду в третью, ну вы понели. Процессы на фоне шуршат, и к консоли не привязаны. Ну ещё бы здорово было бы, чтобы я потом мог эти процессы различить/прибить не только по pid. Как это делать?


Сам себе ответил или что?

anonymous ()

Если тебе руками, то &, если кошерно, то обратись к своему иниту (возможно он даже будет переподнимать, если кто-то упадёт).

В обоих случаях ты сможешь управлять джобами: в первом случае у тебя в распоряжении будет jobs и даже fg, во втором у тебя будет инструментарий, предоставляемый твоим инитом.

mord0d ★★★★★ ()

Процессы на фоне шуршат, и к консоли не привязаны

конечно привязаны. Стоит тебе отключиться и они все умрут.

чтобы я потом мог эти процессы различить/прибить не только по pid

какие предложения?

targitaj ★★★★★ ()

Чтоб запустить процесс в фоне достаточно в конце исполняемого файла указать амперсанд ping ya.ru&.

Можно активный процесс переместить в бекграунд, для этого в терминале нужно нажать ctrl-z (это отправит процессу сигнал SIGSTOP) и затем продолжить его исполнение в «бекграунде» введя bash команду bg. Чтоб опять позволить процессу захватить ввод вывод в терминал нужно набрать fg.

Чтоб убить такой процесс нужно использовать kill %n где n это номер процесса который можно узнать выполнив jobs

Но все это не имеют отношения к screen и nohup, запуск процесса через screen или nohup приводит к тому, что процесс не получит сигнал SIGHUP, который сигналит о потери соединения с терминалом, потому после выхода из терминала процесс не завершится.
SIGHUP еще используют линукс сервисы, обычно как сигнал перепрочитать конфиги.

Aber ★★★★★ ()
Последнее исправление: Aber (всего исправлений: 1 )

программа &>лог </dev/null &disown

anonymous ()

Ты прям как путин - сказочный...

anonymous ()

Возьмите для нодовских процессов такую штуку как - pm2

Запуск: pm2 start app.js

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.