Закрывает ли замазку работающую команду? - PullRequest
7 голосов
/ 16 мая 2011

Я использовал rsync для копирования 15 ГБ файлов между серверами, используя замазку. Я хочу знать, что если я закрываю терминал замазки, это также терминирует rync или нет, потому что файл не копируется должным образом.

Я пробовал это делать, когда я делаю резервные копии, тогда, даже если я закрываю замазку, скрипт продолжает работать в фоновом режиме

Ответы [ 5 ]

14 голосов
/ 16 мая 2011

Предполагая, что ваша цель - продолжить выполнение команды rsync, самое простое - потерять работу. Есть два способа сделать это:

(rsync foo bar &)

Выше будет создано задание, отсоединенное от вашего терминала в начале, поэтому закрытие терминала не остановит его.

rsync foo bar & # or without &, then Ctrl-Z to stop, then "bg" to background
disown

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

Наконец, вы можете использовать программу screen(1) или аналогичную, чтобы сохранить сеанс терминала живым и невредимым (и его можно возобновить) даже после завершения сеанса Putty.

2 голосов
/ 16 мая 2011

Обычно большинство команд завершается, если консоль закрыта.Если вы хотите, чтобы они продолжали работать, посмотрите на команду NOHUP (Nohup - это процесс без зависания, зависание со времен модемов и «зависание» телефона)

0 голосов
/ 19 февраля 2019

Причина:

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

Два решения:

1. / Nohup, что означает отсутствие зависания, которое можно выполнить, как показано ниже.

Синтаксис nohup:

# nohup command-with-options &

2. /

(command-with-options &)
0 голосов
/ 16 мая 2011

Я бы рекомендовал выполнять длинные операции, такие как rsync 15 ГБ по сети (или, что более важно, для StackOverflow и программирования, выполняя большую сборку на удаленном хосте) в рамках сеанса GNU Screen .

Затем вы можете отключиться от сеанса (закрыв PuTTY, если хотите) и подключиться позже, чтобы посмотреть, как продвигается ваша работа.


Обновить через некоторое время ...

В эти дни я использую и рекомендую over .

0 голосов
/ 16 мая 2011

Предполагая, что вы выполняете rsync на каком-то клиенте, нормальное поведение процесса - завершать работу, если он терял свой tty управления, что имеет место при закрытии putty.Однако вы можете запускать задания с помощью nohup (NOHUP (1)), и я полагаю, именно это и делают ваши скрипты резервного копирования (если не было задействовано никаких других «хитростей»).Вывод вашего rsync commadn будет затем добавлен в файл nohup.out в текущем или домашнем каталоге в зависимости от ваших разрешений на компьютере, на котором выполняется процесс nohup.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...