ГлавнаяМатериалы по FreeBSDОконный менеджер Screen

Оконный менеджер Screen

(1 Проголосовало)

screen  Screen - полоноценный оконный менеджер для терминала, позволяет запускать несколько виртуальных терминалов в одном физическом и переключаться между ними, выполняя в каждом из них определенную задачу.

Со Screen'ом я познакомился достаточно недавно, а сподвигло меня на это вот какое событие. При обновлении портов на сервере FreeBSD внезапно прервалась связь, и я уставился в сообщение "Network is down!". Как закончилась процедура обновления, оставалось только догадываться.

Дабы не наступать на одни и те же грабли, занялся поиском решения. И нашел его в использовании Screen'а.

Установим из портов:

# cd /usr/ports/sysutils/screen
# make install clean

Конфигурационный файл /usr/local/etc/screenrc я оставил практически без изменений.

Запускаем Screen простой командой:

# screen

Теперь можно запускать в нескольких терминалах различные операции (обновление портов, компиляцию ядра и т.д.), редактировать конфиги, просматривать логи, не опасаясь за успешное их завершение (или сохранение) в случае обрыва связи.

Управление оконным менеджером осуществляется сочетаниями клавишами, почти всегда через нажатие Ctrl-a. Чаще всего использую такие комбинации:

Ctrl-a, c или Ctrl-a, Ctrl-с - запустить новый терминал;

Ctrl-a-a или  Ctrl-a, Ctrl-a - переключение между терминалами;

Ctrl-a, 0...9 - переключение между терминалами 0...9;

Ctrl-a, d - выйти из screen (сам screen продолжает висеть в фоне, выполняя задачи);  

Ctrl-a, k - убить текущее окно  screen (требуется подтверждение - жмем "y");

Ctrl-a, \ - закрыть  screen, убив все терминалы (требуется подтверждение);

Запустить можно сколько угодно экземпляров screen. Вывести список запущенных экземпляров можно командой:

# screen -ls

Видим следующее:

screenls

Присоединяемся к нужному нам экземпляру командой:

# screen -rd 77716

Обычно нет необходимости запускать несколько экземпляров screen, поэтому для быстрого входа можно использовать команду:

# screen -x

Если сервер перезагрузился, а screen в этот момент был запущен, то все его экземпляры "отмирают", и по команде screen -ls получим примерно следующее:

# screen -ls
There are screens on:
77716.ttyp0.hostname (Dead ???)
Remove dead screens with 'screen -wipe'.

Нужно избавиться от этого мертвого экземпляра, набрав команду:

# screen -wipe 77716

Очень удобный и архиполезный инструмент администрирования. Ставить всем непременно!

 

См.также:

Screen - полноценный оконный менеджер для терминала

Screen – оставляем процессы в фоне и идем спать

Обновлено 08.11.2010 08:15

Ваше мнение

Вы с пользой провели время на сайте?
 

Кто сейчас на сайте

Сейчас на сайте:
  • 1 гость

wolf3Волк - символ свободы и самостоятельности среди животных.

wolf1Волк - это символ бесстрашия. В любой схватке волк борется до победы или до смерти.

wolfsВолк живет семьей, ухаживает только за своей волчицей-женой и воспитывает своих детей-волчат.

Наверх