37

Я использую замазку для взаимодействия с сервером Linux. Я начал процесс, используя шпаклевку. Процесс запущен и займет 5-6 часов. Я хочу, чтобы этот процесс продолжался после закрытия сессии замазки. Как я могу сохранить этот процесс после закрытия сессии замазки? Я не хочу постоянно держать компьютер включенным. Есть какой-либо способ сделать это?.

9 ответов9

31

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

30
^Z
bg %1
disown -h %1

'-H' делает процесс невосприимчивым к SIGHUP после завершения сеанса.

18

Используйте команду nohup . Просто добавьте к вашей команде префикс, и он демонизирует их, чтобы они не останавливались, когда вы выходите из системы / завершаете сеанс оболочки. Стандартный вывод по умолчанию будет в файле с именем nohup.out. Проверьте страницу руководства для nohup(1) для получения дополнительной информации.

3

Начать процесс с nohup "processname" & . Вы также можете отсоединить его с помощью screen или tmux .

2

Вышеуказанные решения довольно хорошо описаны, однако ни одно из них не сработало для меня, пока я не отредактировал конфигурацию PuTTY так:

Включить поддержку активности TCP (опция SO_KEEPALIVE)

Я больше нигде не видел, а просто нашел методом проб и ошибок.

1

Ctrl+z Отправить текущий процесс в фоновом режиме.

Кроме того, вы можете добавить & в конце вашей команды для запуска в фоновом режиме

0

Как сохранить работу weblogic после закрытия окна замазки:

Простые шаги: после авторизации через putty выполните следующие шаги:

  1. Перейдите в каталог на сервере, где расположена команда startWebLogic.sh .
  2. Введите screen команд и нажмите Enter (откроется новый экран).
  3. На новом экране введите команду запуска ./startWebLogic.sh .
  4. Нажмите Ctrl+a, затем нажмите d (не удерживая Ctrl); Вы вернетесь к предыдущему экрану.
  5. Если вы хотите вернуться к экрану журнала вашего сервера, введите команду screen -r .
0

Если вы хотите, чтобы программа, которая содержится в процессе, всегда или часто выполнялась в фоновом режиме, вы можете кодировать ее, чтобы отделить от управляющего терминала (сделать такое поведение управляемым с помощью флага опции) и запускать в фоновом режиме.

Это долгосрочное решение, конечно, не для текущего процесса.

0

Вы можете использовать & после ссылки.

Пример:

[localhost ~ ]# wget http://www.link.com/download/download.zip &

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .