Как запустить скрипт через SSH, который не заканчивается, когда я закрываю соединение?

С cPanel Вы действительно не управляете сервером CentOS как таковым, Вы управляете cPanel сервером, работающим на основной основе CentOS. Это устанавливает и управляет своим собственным Apache, PHP и сборками MySQL.

Интерфейс cPanel для пользователя root имеет средство, чтобы обновить или понизить Apache и PHP между официально поддерживаемыми версиями. Сначала удостоверьтесь, что сам cPanel полностью актуален (большая часть обновления установки автоматически, но это стоит проверить), затем проверяют, чтобы видеть, находится ли версия, которую Вы хотите, уже в списках, таким образом, можно обновить до них тот путь.

Можно установить собственный Apache/PHP/what-ever, если ни один из Apache/PHP/what-ever в стандарте cPanel сборка, не является достаточно недавним для Вас, но это не рекомендуется, поскольку Вы потеряете любую официальную поддержку, которую Вы могли бы иметь от производителей cPanel, и Ваша пользовательская установка могла бы добраться в поврежденный следующий раз, когда существует значительное обновление cPanel.

править: Я забыл добавлять: интерфейс управления, упомянутый выше, веб-, обычно находите его в https://<server>:2087 или http://<server>:2086. Это некоторое время, так как я использовал cPanel или в качестве как пользователь или в качестве администратор, но назад то, когда я сделал официальный форум и части webhostingtalk.com, содержало много полезных обсуждений.

18
задан 21 October 2009 в 21:12
6 ответов

Можно выполнить команду с командой nohup перед ним. Можно также выполнить его на 'экране', который позволит Вам, повторно прикрепляют терминал.

Например:

ssh mySever 'nohup bash myscript.sh'

Или просто ssh в и выполненный команда nohup. Это должно продолжать бежать, даже когда Вы разъединяетесь. Это вызвано тем, что nohup прервет сигнал SIGHUP (зависание).

Экран немного более включен, но в течение этих 20 минут он мог бы взять Вас для изучения основ, это - один из самых полезных инструментов там. Вот учебное руководство.

24
ответ дан 2 December 2019 в 20:21

Я всегда просто использую nohup. Если я забочусь о выводе, я перенаправляю его к файлу журнала, иначе я отправляю его в/dev/null.

Пример:

nohup scp file.tar.gz root@someserver:/var/tmp > /dev/null 2>&1 &

Это помещает его в фоновом режиме с выводом, идущим в/dev/null, и это неуязвимо для Сигнала HUP, если Вы выходите из системы. Можно также "отрицать" задание с определенными оболочками (как удар) так, чтобы это не было подключено к сессии.

disown %1
7
ответ дан 2 December 2019 в 20:21
  • 1
    +1 для отрицают - очень полезный, когда Вы забываете выполнять использование nohup –  Mark 22 October 2009 в 00:10

Устанавливать экран: apt-get install screen

Затем запуск, использующий просто: screen

И man screen получить привязку клавиш.

5
ответ дан 2 December 2019 в 20:21

В то время как Вы зарегистрированы в сервер, можно запустить скрипт в отдельном режиме следующей командой:

nohup script >script.out 2>script.err &

Позже, когда Вы входите в систему снова, можно проверить script.out на любой вывод и script.err для любых сообщений об ошибках. Если Вы хотите выходные сигналы и сообщения об ошибках в том же файле, то сделайте:

nohup script >script.out 2>&1 &
2
ответ дан 2 December 2019 в 20:21

Если вы хотите что-то, что можно запускать из клиента в неинтерактивном режиме, попробуйте следующее:

ssh user@host 'command >out.log 2>err.log &'

Например:

$ ssh user@host '(while true; do date; sleep 1; done) >/tmp/dates &'
$ ssh user@host
...
user@host$ tail -f /tmp/dates
user@host$ ps -ef | grep dates

Обратите внимание, что если вы не перенаправляете вывод в файлы, вызов ssh не завершится пока команда не выполнит.

-1
ответ дан 27 February 2020 в 06:00

Общая информация: Имя команды nohup происходит от слова «повесить трубку», как если бы повесить трубку (конечно, «черный , дисковый набор "...) на вашем телетайпе со скоростью 110 бод после извлечения гарнитуры из мягкого держателя. Обычно, когда Unix обнаруживает, что вы «повесили трубку», он посылает процессу сигнал SIGHUP .

0
ответ дан 3 March 2020 в 15:10

Теги

Похожие вопросы