И фоны хорошо за исключением программ, которые возвращаются, требуя консольного взаимодействия позже (например, "способное обновление-y и", который в конечном счете вводит состояние ОСТАНОВКИ, так как оно желает предложить пользователю "действительно действительно сила?" вопрос намного позже...., когда никто не смотрит больше).
Чтобы заткнуть ту дыру и сообщить процессу, терминал никогда будет действительно никогда не становиться доступным ему, я добавляю <&-к некоторым моим командам, полностью отсоединяя их от активного терминала, говоря им, STDIN больше не возможен. Удостоверьтесь, что/bin/bash является Вашей оболочкой при использовании этого все же. Сценарий продолжит регистрировать любые ошибки, связанные ни с каким псевдотерминалом, являющимся доступным, на котором можно бросить любую подсказку.
Например:
`./runme.sh &> runme.log <&- & disown`
мой окончательный способ разъединить с текущим терминальным сеансом. И STDOUT и STDERR зарегистрированы к runme.log, не будет иметь значения, если Ваша консоль или окружит оконечный раньше или если Вы, logout/su в другую учетную запись (никакой терминальный мусор от runme), и благодаря отрицают даже родительско-дочерние отношения PID, удалены.
ОБНОВЛЕНИЕ: даже с этим я испытал затруднения из-за семафора, связывающего его с названием исходного родителя, поэтому теперь я рекомендую вместо этого:
at now <<< "(cmd1; cmd2; etc.) &> logfile.log"
Конечно, удалите и>, если Вы хотите быть отправленными по электронной почте вывод от КРОНА или перенаправить все это к/dev/null вместо файла.
Если Вы ps -ef | grep {hostname}
из соединения Вы можете затем kill -9
процесс и это сбросят соединение.
Вы хотите -O exit
опция к ssh.
krall@localhost $ ssh -o ControlPersist=yes otherbox
Password:
krall@otherbox $ exit
Shared connection to otherbox closed
krall@localhost $ ssh otherbox -O exit
Другая опция -O stop
, который устанавливает ведущую остановку управления принять связи, или близко если ничто в настоящее время не соединяется.
ControlPersist
работы только путем хранения процессов ssh, работающих в фоновом режиме? – Ali 29.11.2012, 18:41