Screen - довольно-таки мощная и полезная утилита для системного администратора. У нее достаточно много ключей и параметров, которые человека нового, непосвященного могут вначале отпугнуть. В этой статье я напишу, как я использую эту утилиту.
Основное назначение screen, как для меня, - подключение к прерванному консольному сеансу. Т. е. вот вы, например, подключились к удаленному веб-серверу и запустили там какой-либо очень важный процесс, которым возможно нужно управлять. И вдруг у вас пропадает ssh-соединение - то ли проблемы с подключением через Интернет то ли еще по какой-то причине... И вы уже не сможете управлять процессом. Чтобы так не произошло - нужно запускать важные такие вещи в скрине.
Для начала установим его (как правило, в стандартную установку он не входит):
yum install screen (для RedHat/CentOS)
aptitude install screen (для Debian/Ubuntu)
Для других дистрибутивов нечто похожее.
Теперь войдите в скрин:
screen -r 12836.pts-3.WS102
Управляющие команды в скрине указываются с помощью нажатия Ctrl+A, а затем нужную команду. Все клавиши - в английской раскладке! Например:
export TERM=xterm
Основное назначение screen, как для меня, - подключение к прерванному консольному сеансу. Т. е. вот вы, например, подключились к удаленному веб-серверу и запустили там какой-либо очень важный процесс, которым возможно нужно управлять. И вдруг у вас пропадает ssh-соединение - то ли проблемы с подключением через Интернет то ли еще по какой-то причине... И вы уже не сможете управлять процессом. Чтобы так не произошло - нужно запускать важные такие вещи в скрине.
Для начала установим его (как правило, в стандартную установку он не входит):
yum install screen (для RedHat/CentOS)
aptitude install screen (для Debian/Ubuntu)
Для других дистрибутивов нечто похожее.
Теперь войдите в скрин:
screen
Или выполните команду "в скрине":
screen sudo nano /etc/sudoers
Теперь принудительно закройте терминал с nano (крестиком :) ) После подключитесь заново к этой машине и наберите команду:
screen ls
Вы должны увидеть что-то вроде такого:
There is a screen on:
12836.pts-3.WS102 (04/02/2012 02:58:09 PM) (Detached)
1 Socket in /var/run/screen/S-root.
Где будут указаны открытые скрины и их состояние (Detached значит, что соединение оборвалось или было закрыто). Для подключения к существующему скрину введите команду:
screen -r 12836.pts-3.WS102
Теперь вы увидите ваш открытый ранее nano (ну или что вы там запустили).
screen -r 12836.pts-3.WS102
Выполнение этой команды сделает вначале detach указанному скрину, затем подключит к нему вас (иногда бывает полезно).
screen -S <name>
Эта команда запустит новый скрин с заданным именем (которое отобразится по команде screen -ls)
screen -r 12836.pts-3.WS102
Выполнение этой команды сделает вначале detach указанному скрину, затем подключит к нему вас (иногда бывает полезно).
screen -S <name>
Эта команда запустит новый скрин с заданным именем (которое отобразится по команде screen -ls)
Управляющие команды в скрине указываются с помощью нажатия Ctrl+A, а затем нужную команду. Все клавиши - в английской раскладке! Например:
- Ctrl+A, D - сделать detach текущему скрину, т. е. выйти из него - потом можно будет подключиться к нему
- Ctrl+A, C - создать новое окно скрина. Полезно, если вам необходимо несколько одновременно терминалов на одной машине.
- Ctrl+A, " - показать меню с выбором окон скрина.
От такая полезная штука этот screen.
screen -T xterm
Стартуя скрин этой командой, мы меняем тип терминала и в mc можно будет использовать мышку, также можно после старта набирать:
export TERM=xterm