Как управлять фоновыми процессами в CentOS

Как управлять фоновыми процессами в CentOS

Я использую CentOS и не могу понять, как:

  1. Показать список текущих фоновых процессов/заданий (которые я запускаю).
  2. Как запустить процесс в фоновом режиме.
  3. Как остановить фоновый процесс.

Моя команда, которую я хочу запустить в фоновом режиме, выглядит так:

activator run

Пока я нашел только эту команду (которая запускает процесс в фоновом режиме).

nohup activator run &

решение1

Это зависит в основном от вашей оболочки, предположительно bash(1). Большинство других современных оболочек предлагают похожие (или даже идентичные) возможности управления заданиями.

  • Чтобы запустить команду в фоновом режиме, выполните command &или nohup command &(если вы хотите выйти из системы и оставить ее работающей)
  • Чтобы остановить запущенную команду C-z(ctrl-Z), чтобы перевести остановленную команду в фоновый режим, выполните bg. С помощью fgвы возвращаете ее на передний план, jobsсообщает вам, что остановлено или находится в фоновом режиме. kill %kkills job number k, fg %k(или plain %k) переносит ее на передний план. Вы можете запустить остановленную задачу kв фоновом режиме с помощью bg %k(или просто %k &).

Еще немного тишины.

Другой, довольно гибкий, способ - использовать screen(1), проверьте его страницу руководства. С его помощью вы можете запустить команду и отключиться, а затем подключиться с другого терминала (или другой машины через 'net).

решение2

Ваш подход должен сработать...

Начните работу сnohup activator run &

Проверьте, что работает сjobs -l

Остановите его с помощью kill PID(вы можете получить PID с помощью ps -ef | grep activator)


Я лично предпочитаю screen--http://linux.die.net/man/1/screen

Начните работу сscreen -d -m activator run

Проверьте сеансы экрана с помощьюscreen -ls

Остановите его, открыв окно экрана с screen -xпоследующим идентификатором сеанса экрана

Связанный контент