Каждый новичок в Linux, особенно молодые системные администраторы, задаются вопросом – как улучшить работу с удаленными серверами, а именно – как исключить некорректное завершение запущенной команды при обрыве соединения или закрытии SSH клиента?
Консольная утилита screen очень удобна для решения всевозможных задач в консоли на удаленных серверах. Работая в сессии screen на удаленном сервере, можно запускать различные утилиты, отсоединяться от сессии screen и отключаться от удаленных серверов, при этом утилиты будут продолжать работать. Например, зайдя в сессию screen и запустив Midnight Commander, а в нем – копирование, можно отсоединиться от сессии и сервера, а коприрование при этом не прервется.
Чтобы зайти в screen, запускаем его на удаленном сервере командой:
screen
Далее можно запускать любые консольные утилиты, например, копирование файлов.
Отсоединение от сессии screen (deattach) осуществляется сочетанием клавиш:
Ctrl-a + d
[detached]
Далее вы можете уже выходить с удаленного хоста, или запускать новые сессии screen.
Просмотр сессий screen:
screen -ls
There are screens on:
66775.pts-2.bkp (Dead ???)
62282.pts-0.bkp (Dead ???)
39551.pts-0.bkp (Detached)
Remove dead screens with ‘screen -wipe’.
Присоединение (reattach) к сессии screen:
screen -r 39551.pts-0.bkp
После чего вы попадаете в оставленную сессию screen, где продолжаются выполнятся запущенные вами утилиты
“Умершие” сессии утилиты screen можно убрать командой:
screen -wipe
Это лишь необходимый минимум возможных ключей и команд утилиты screen, достаточный для начала работы с ней. Более подробно об этой утилите смотрите help и man:
screen –help
man screen
Лучше использовать Tmux
Спасибо! Обязательно добавлю информацию и по этому консольному менеджеру.