Рубрики
Uncategorized

Как поддерживать процесс, работающий даже после закрытия соединения SSH?

Есть много причин, по которым вы хотели бы сохранить процесс, даже если вы закрываете свой SSH … Tagged с Linux, Bash, Ubuntu, DevOps.

Есть много причин, по которым вы хотели бы сохранить процесс, даже если вы закрываете сеанс SSH.

Вот несколько примеров:

  • Ваш рабочий день скоро закончится, и вы запускаете огромный импорт базы данных, который требует много времени, вы не захотите оставаться и ждать, пока импорт выполнит, а просто передайте задачу следующему человеку в смене
  • Вы загружаете огромный файл, и это займет несколько часов, вы не захотите оставлять свой терминал открытым и ждать, или, что еще хуже, вы не хотите начинать все сначала, если ваше интернет -подключение падает

Я обычно делаю в таких случаях, чтобы использовать экран командовать и запустить процессы в экран сессия Таким образом, я мог отделиться от экран Сессия и закройте мое соединение SSH, и процесс все равно будет работать, позволяя мне или другим людям прикрепить к сеансу позже и следить за процессом.

Вот быстрое представление о том, как использовать экран !

Согласно официальной документации экран является полноэкранным управляющим окон, который мультиплексирует физический терминал между несколькими процессами, обычно интерактивными оболочками. Когда экран называется, он создает одно окно с оболочкой, где вы можете запускать команды как обычно.

Я заметил, что в большинстве случаев экран установлен по умолчанию, поэтому, чтобы проверить, установлен ли у вас экран, вы можете запустить следующее:

screen --version

Если вы получите команда не найдена , тогда вы можете установить экран Бег:

  • Для Ubuntu и Debian:
sudo apt update -y
sudo apt install screen
  • На Centos:
yum update -y
sudo yum install screen

Как только у вас появится экран Установлено, чтобы начать новый экран Запуск сеанса:

screen -S SOME_NAME_HERE

Это развернет новый экран И вы будете прикреплены к нему автоматически, внутри сеанса экрана запустите свой скрипт.

После этого отречься от сеанса экрана нажмите Ctrl+A+D Анкет

Если вам нужно прикрепить к запуска сеанса экрана и проверить свой процесс, просто запустите:

screen -R SOME_NAME_HERE

Если вы забыли имя своего экран сеанс или, если вы не установили имя, вы можете перечислить все доступные экран Сессии за бег:

screen -ls

Это просто действительно краткое представление о том, как использовать экран , Я бы порекомендовал проверить официальную документацию:

https://www.gnu.org/software/screen/manual/screen.html

Надеюсь, это поможет!

Оригинал: «https://dev.to/bobbyiliev/how-to-keep-a-process-running-even-after-closing-ssh-connection-3cek»