Линух, удаленное выполнение команд по SSH

Всем привет.

Господа линуксоиды, подскажите ответ на следующий вопрос.
Вот я подключаюсь к удаленному серваку по SSH.
Запускаю там некий скрипт, что будет долго работать.
Если я закрою терминал, то выполнение там остановиться.

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

👍НравитсяПонравилось0
В избранноеВ избранном0
LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

vi /lib/systemd/system/test.service
systemctl start test.service

tmux
Элементарная в использовании штука, + можно вместе с несколькими людьми к одному терминалу коннектиться, иногда очень в темую

screen, nohup
Я nohup использую, уже не помню почему. Исторически так сложилось

когда я следующий раз подключусь в консоли был отображен весь процесс выполнения
Так не выйдет, но можно вывод перенаправить в файл, и потом его просмотреть. Если процесс еще не закончил — то можно видеть онлайн через tail -F <путь_к_файлу>

Так выйдет, если использовать screen или tmux.

Я запускаю в screen.

screen. Если нужно выкидывать сигналы для процесса — самое оно.

Дополнительно, если долгий процесс уже запущен без screen или tmux, то можно использовать disown, или reptyr и после спокойно отваливаться от ssh.

stackoverflow.com/...nning-process-under-nohup
github.com/nelhage/reptyr

Тебе нужен screen или tmux. Вот, например, подробнее по tmux: www.digitalocean.com/...e-tmux-on-ubuntu-12-10—2

а не работает случайно ctrl+z и потом bg 2345 где 2345 номер процесса ?

я бы запускал в screen

Добрый день! Сергей, как можно с Вами связаться? Очень нужно профессионально посоветоваться.

вариантов много, но проще всего ./my_script > log_1 2>log_2 &

nohup ./my_script ....

или скрыпт сам должен отлавливать этот сигнал.

вот этот & в конце это ж и есть запустить в бекграунде ?

Да, но без отвязки от терминала (nohup)

Вот я подключаюсь к удаленному серваку по SSH.
Запускаю там некий скрипт, что будет долго работать.
Я тоже так воркаю, на сервере такая хреновина стоит:

wiki.archlinux.org/index.php/Tmux_(Русский
ru.wikipedia.org/wiki/Tmux
Там и дофига терминалов можно открыть....

Если удаленный сервак — то можно и TeamCity использовать. Там в вебе можно смотреть результат выполнения скрипта.

Я тоже хотела предложить подобное, точнее Jenkins, но потом подумала что это «зуб через задницу»)

Подписаться на комментарии