Как сделать screen экрана входа в систему в ubuntu

Как использовать Screen Linux-администратору

Есть такая замечательная утилита screen, о которой я раньше вообще не знал! Теперь же стараюсь постоянно использовать. И, надеюсь, после прочтения этой статьи, будете использовать её и вы.

Итак, для чего она нужна?

Уж сколько раз была ситуация, когда, работая в терминале по SSH получал дисконнект и все наработки (открытый конфиг или процесс копирования) терялись. Screen позволяет запускать в своём окружении сеансы пользователя и получать к ним доступ, имея как бы разные виртуальные консоли.

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

Можно иметь несколько разных сеансов и подключаться к ним произвольно!

Посмотрим, как это работает:

Утилита у меня была уже установлена, о чём радостно сообщила мне команда:

# dpkg info | grep screen

Ну вот и всё! Теперь можно начинать работу.

Работа с сессиями Screen

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

Посмотреть все сессии screen-а можно так:

# screen -ls

Если сессии открыты, то подключиться к ним можно так:

# screen -x Имя

либо без имени, если сессия одна.

Создать сессию с определенным именем можно так:

# screen -S «name»

Кроме того, можно сразу запускать программы в Screen-сессию, набирая их:

# screen<\p>

Поработали мы со скрином, теперь можем либо убить сессию (выйдя из оболочки), либо отключиться от неё (Ctrl+D). При этом всё, что было в сессии продолжит выполняться и дальше.

Кроме того в одном окне screen можно использовать несколько консолей.

Убить сессию можно командой [Ctrl+a] и затем k.

Управление Screen-ом

У screen-а весьма специфичное управление. Программе, запущенной внутри него передаются все нажатия клавиш, кроме тех, что предваряются сочетанием Ctrl+a (по умолчанию). Т.е. чтобы управлять screen-ом – нужно сперва нажать эту комбинацию, а затем набрать управляющую клавишу.

Итак, создаём новое окно внутри сессии screen:

# [Ctrl+a] c

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

# [Ctrl+a] A

Переименовать окно

Набрали текст, жмём Enter.

Просмотреть все окна можно так:

# [Ctrl+a] “

Выведет нам интерактивный список окон с номерами и именами, можно переключиться на любое.

Список окон

Есть варианты выбрать не интерактивный список [Ctrl+a] w, а так же переключаться на следующее [Ctrl+a] n или на предыдущее окно [Ctrl+a] p. Либо сразу на заранее известный номер окна [Ctrl+a] 2. Обратите внимание, что нумерация ведется с нуля.

Это может быть очень удобно вот для чего: допустим, нам нужно в реально времени мониторить какой-либо процесс. Предположим, нужно слушать log-файл постоянно. Для этого нам нужна команда

# tail -f /path/to/log

которая будет в реальном времени забирать 10 последних записей и выводить их на экран. Создадим новую консоль screen так:

# screen -d -m -S tail-log tail -f /var/log/nginx/error.log

– это создаст новую сессию screen-а, т.е. когда скрины пока не запущены вообще. При наборе этой команды, на первый взгляд, ничего не происходит. На самом деле так и есть. Создаётся (-m) новый сеанс по имени “tail-log“, в котором выполняется команда “tail -f /var/log/nginx/error.log” (выводящая 10 последних записей лог-файла в реальном времени), и этот сеанс запускается уже свёрнутым (-d).

Если же скрин у вас уже запущен, то можно создать новое окно:

# [Ctrl+a] c

Переименовать его в tail-log

# [Ctrl+a] A

И запустить там нужную нам команду:

# tail -f /var/log/nginx/error.log

А в другом окне, аналогичным образом, открыть редактор правил файрволла и добавлять в DENY тех, кто нам явно нежелателенНу или иное другое подобное применение, когда нужно быстро переключаться из окна в окно.

Мониторинг изменений окна

Но и это ещё не всё. Удобства ещё только начинаются. Есть ситуации, когда вывод какого-либо окна долго  остается неизменным. Например ждать, пока в логи попадёт какая-либо информация может быть очень долго. И screen кое-что имеет на этот счёт!

Запустили мы два окна LOG в котором прослушивается лог-файл, и USER в котором наша консоль. Ждём пока в консоли. Реагировать будем тогда, когда в прослушиваемый LOG что-то придёт. Но не переключаться же постоянно туда-сюда, с целью уловить изменения?

Нажимаем сочетание:

# [Ctrl+a] M

и включаем мониторинг активности окна. Теперь если текст окна изменится, то в списке окон возле его имени будет отображен символ “@”, а внизу окна на несколько секунд появится надпись “Активность в окне №…”!

Активность

Так же есть обратная возможность мониторить “тишину”, для этого используется команда: [Ctrl+a] _.

Два окна сразу

А можно ли открыть два консольных окна сразу? Конечно можно! Screen позволяет разделить окно. Вот как мы это сделаем.

Разделяем окно на части:

# [Ctrl+a] S

При этом текущее окно пойдёт в верхнюю часть.

Переключение на нижестоящий регион (на первый, если уже на самом нижнем) осуществляется так:

# [Ctrl+a] Tab

Открываем там другую консоль:

# [Ctrl+a] “

и выбираем её по имени. Имена окон подсвечиваются (0 LOG, 1 USER) чтобы мы не заплутали между ними.

2 окна сразу? Легко

Перемещая фокус ввода по Tab-у, как описано выше, мы, наконец, наигрались. Закрываем окна.

# [Ctrl+a] X – закрывает текущий регион, [Ctrl+a] Q закрывает все другие, кроме текущего. Смотря что вам нужно.

Копирование текста между окнами

Есть ещё одна интересная возможность – копирование текста между окнами через особый буфер.

Для этого есть команда

# [Ctrl+a] [ , при этом можно перемещаться по окну курсорными клавишами, для определения начала текстового фрагмента жмём пробел. Двигая стрелочками курсор, отмечаем конец выделения и снова жмём пробел. Всё, фрагмент скопирован. Вставляется он в это же или другое окно нажатием [Ctrl+a] ]. Всё просто!

Ведение лога и принт-скрин

Так же можно вести трассировку всего текста, выдаваемого в окно в особый файл screenlog. где N – номер окна.

# [Ctrl+a] H

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

Так же команда для снятия текущего окна

# [Ctrl+a] h

передает в файл hardcopy. только содержимое текущего окна, а не мониторит ввод-вывод постоянно. Аналог принт-скрина.

Конфигурирование

Для себя можно сконфигурировать Screen весьма гибко. После запуска выполняются команды в конфигах /etc/screenrc и персональные .screenrc в каталоге пользователя.

У каждой клавиатурной команды есть и текстовый вариант для конфига, который можно посмотреть в справке.

Но для примера вот такой конфиг, в котором отключаем приветствие, создаем заголовок и строку статуса, создаем два окна USER и LOG, в которых открываем соответствующие каталоги, делаем активным первое окно USER.
startup_message off caption always «%{= 45}%{+b w}Screen: %n | %h %=%t %c» hardstatus alwayslastline «%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%

Источник: https://litl-admin.ru/linux/kak-ispolzovat-screen-linux-administratoru.html

Как сделать экран блокировки похожим на экран входа? Ubuntu Linux

Есть ли способ сделать экран входа в заблокированный сеанс (либо с помощью Ctrl + Alt + L, либо с таймаутом экрана), как экран входа в систему, когда вы начинаете новый сеанс? Я ненавижу, что все на экране блокировки, кроме ввода пароля, черное.

Вы не можете сделать экран блокировки похожим на экран входа в систему.

Тем не менее, вы можете использовать тему для экрана блокировки. На gnome-look.org доступно немало книг . Вот пример .

Ответ может быть немного запоздалым, но помимо настройки темы фактического диалога разблокировки вы также можете установить фон (т. Е. Черное пространство вокруг диалога) на любое понравившееся изображение. Просто запустите следующую команду в терминале:

sudo gconftool-2 —direct —config-source xml:readwrite:/etc/gconf/gconf.xml.defaults —set /desktop/gnome/background/picture_filename —type string /usr/share/backgrounds/Holes_by_FireCobold.jpg

Замените последний путь в команде на путь к изображению, которое вы хотите использовать. Не забудьте перезапустить сеанс рабочего стола (или попытаться перезапустить gconfd-2 , убив его, по крайней мере).

EDIT: если вы не настроили фон экрана входа (например, через Ubuntu Tweak), вышеуказанная команда также изменит его.

Это было запланировано 12.04 – есть отчет об ошибке . Однако он не сделал окончательного релиза.

  • Как подписаться на ошибку?

Если вы немного разбираетесь в C и немного GTK, возможно, экран блокировки выглядит (но не будет!) Экраном входа – так как ваша главная забота, похоже, является уродством блокировки?

Вы сделаете это, изменив источники пакета gnome-screensaver , который предоставляет экран блокировки.

Для получения советов см. Раздел « Как вы это поняли? в конце этого ответа . Первоначальный вопрос состоял в том, чтобы переставить блокировочный ящик в нижний левый угол вместо центра. Для чего вы хотите переместить его влево, сделать серый фон прозрачным и соответствующим образом изменить размеры имени пользователя и «Пароль:».

Из моего опыта, код, который вам нужно изменить, скорее всего, только в двух файлах: gs-lock-plug.c и gs-windows-x11.c .

Если вы попробуете это и имеете какие-либо вопросы, пожалуйста, спросите в комментарии, и я постараюсь изо всех сил указать вам в правильном направлении.

Эта настройка работает, заменяя вызов на виртуальную клавиатуру OnScreen с помощью LightDM . Лучшая настройка будет заключаться в замене вызова на Gnome ScreenSaver Lockscreen (по умолчанию LockScreen от Ubuntu до Ubuntu 13.10) с одним до Unity Greeter (экран входа в систему по умолчанию Ubuntu), но я не мог найти способ сделать это.

Метод:

Откройте редактор Dconf , выберите схему org.gnome.desktop.screensaver , отредактируйте переменную embedded-keyboard-command и замените ее содержимое на

dbus-launch gdmflexiserver -xnest

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

Команды ярлыка: для любителей терминалов и ленивых, вы можете сделать вышеуказанные настройки всего двумя командами:

gsettings set org.gnome.desktop.screensaver embedded-keyboard-command «dbus-launch gdmflexiserver -xnest» gsettings set org.gnome.desktop.screensaver embedded-keyboard-enabled true

С этого момента экран входа в Ubuntu ( Unity Greeter ) появляется каждый раз, когда система просыпается либо из Заставки ( Lock Screen ), либо из Suspend .

Этот метод был предоставлен alina в потоке дискурса Ubuntu Wake от скринсейвера непосредственно к экрану входа в систему . Я использую Ubuntu 12.04 LTS, и этот метод работает нормально. Может работать и 12.10, 13.04 и 13.10.

Ограничение с помощью этого метода заключается в том, что вы увидите Gnome Screensaver LockScreen на секунду, прежде чем увидеть Unity Greeter.

Кроме того, поскольку Unity Greeter не предназначен для блокировки экрана, он не такой быстрый и жидкий, как экран блокировки по умолчанию. Ubuntu 14.

04 LTS найдет решение этих проблем, используя Light Locker вместо Gnome Screensaver LockScreen .

Источник: http://ubuntu.fliplinux.com/29050.html

Как пользоваться утилитой Screen в Linux

Сегодня я расскажу об основных возможностях утилиты GNU Screen. Многие администраторы активно пользуются скрином при использовании ssh. Также он хорош для любого, кто активно пользуется терминалом для повседневных задач.

Screen позволяет управлять несколькими сессиями из одной консоли или окна терминала. Утилита незаменима, когда к одному сеансу надо подключиться из двух мест одновременно или взаимодействовать с несколькими сессиями.

Читайте также:  Лучшие поисковые лаунчеры для ubuntu/linux mint

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

В ряде Linux дистрибутивов (и не только Linux, Mac OS тоже тут) Screen присутствует по умолчанию. В случае с Debian и форками его требуется поставить отдельно. Сделать это можно, выполнив команду:

sudo apt-get install screen

Сразу после установки Screen готов к работе.

Для начала работы запустим Screen без параметров, создав новый скрин:

Сразу после запуска появится окно с информацией о создателях и лицензии и будет ожидаться нажатие пробела или Enter.

Команды Screen выполняются по горячим клавишам Ctrl-a. После однократного нажатия Screen ждет команду.

Запросим у Screen список всех команд:

Если не получилось, попробуйте еще раз. Нажмите Ctrl+a, отпустите, введите “?”.

Выйдем из хелпа и попрактикуемся в использовании.

Для начала в текущем скрине (в списке он нулевой) запустим:

Теперь введем

Этой командой мы создали новый скрин и теперь они работают одновременно.

Запустим в нем:

Для переключения между скринами можно либо указать номер скрина, либо выбрать скрин из списка:

Ctrl+a -> 0 переведет нас на 0 скрин.Ctrl+a -> “ выдаст меню для выбора скринаCtrl+a ->n переключит на следующий скринCtrl+a ->p переключит на предыдущий скрин

Теперь свернем Screen с нашими пингами. Для этого воспользуемся хоткеем

После выполнения команды Screen свернется и мы попадем в наш терминал. Для того, чтобы вернуться, запустим утилиту с ключом -r:

Иногда случается неприятность с потерянными скринами, для того, чтобы подключиться к ним, нужно выполнить команду:

после чего найти в выводе номер потерянного скрина и вернуть его командой:

где n — тот самый номер.

Вернуться в сессию можно и после разрыва соединения ssh при удаленном использовании Screen, что делает его незаменимым при выполнении множества работ.

Можно быстро создать новый скрин с запущенной программой, например wget большого файла.

screen wget http://mirror.yandex.ru/debian-cd/7.8.0/amd64/iso-dvd/debian-update-7.8.0-amd64-DVD-1.iso

С помощью ключа -S при запуске Screen можно указать имя скрина.

screen -S download wget http://mirror.yandex.ru/debian-cd/7.8.0/amd64/iso-dvd/debian-update-7.8.0-amd64-DVD-1.iso

Всегда есть возможность переименовать скрин хоткеем

Посмотреть все активные скрины можно командой:

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

Скрины можно закрыть от посторонних хоткеем

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

Это делается хоткеем

Переключаться между регионами можно хоткеем

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

Закрываются регионы хоткеями

Ctrl+a ->Q Закрыть все регионы кроме текущегоCtrl+a ->X Закрыть текущий регион

После начала активного использования Screen, очень быстро надоедает приветственное окно. Убрать его можно добавив в файл ~/.screenrc строку

Сделать это быстро можно, выполнив команду:

echo startup_message off >> ~/.screenrc

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

Источник: https://admins.su/kak-polzovatsya-utilitoj-screen-v-linux/

Screen — несколько экранов в одной SSH сессии

Screen — очень удобная программа, если вы часто работаете в консоли, подключившись к серверу по SSH. В таком случае screen позволяет держать в одной консоли несколько разных экранов, удобно переключаясь между ними.

Screen позволяет отключиться от SSH, сохранив выполеняющиеся на удаленном сервере задания.

Установка screen

Для установки на Ubuntu нужно выполнить команду

$ sudo apt-get install screen

После этого нужно запустить screen:

$ screen

После запуска вы увидите либо приглашение командной строки, либо «экран приветствия», нажав SPACE или ENTER в котором, вы так же попадете в shell. При этом все команды будут запущены уже «внутри» screen’а.

Для того, чтобы выйти из screen’а (выйти, а не отсоединиться) достаточно выйти из всех открытых в нем оболочек, либо же, нажать комбинацию клавиш Ctl-a , и ответить «y» на вопрос «действительно ли вы хотите выйти».

Отсоединиться от текущего скрина, не закрывая и не завершая сессии, можно комбинацией Ctrl-a d.

Подключение к screen

Если на машине уже есть запущенная screen-сессия, и вы хотите подсоединиться к ней, то

  1. если сессия одна, достаточно просто команды:$ screen –x
  2. если сессий несколько, то: посмотреть список запущенных screen’ов можно командой screen -ls: $ screen -ls There are screens on: 2762.pts-0.debian (Detached) 2743.pts-0.debian (Detached) 2 Sockets in /var/run/screen/S-diesel.

    Выбираем нужный нам screen, и присоединяемся к нему:

    screen -x 2762.pts-0.debian

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

    $ screen -S «job1»

    где job1 — это название нашей «именнованной» сессии. Теперь в -ls мы увидим гораздо более понятное:

    $ screen -ls There are screens on: 2762.pts-0.debian (Detached) 2795.job1 (Detached) 2743.pts-0.debian (Detached) 3 Sockets in /var/run/screen/S-diesel.

    и сможем подсоединиться к сессии job1, просто указав ее имя:

    $ screen -x job1

Переключение между окнами screen

Как вы уже поняли, сессии сохраняются даже в то время, когда вы отключны от сервера, и все что в них запущено, продолжает выполняться. Впрочем, на этом возможности screen’а не исчерпываются.

Иногда, при работе по ssh, очень хочется, чтобы было открыто сразу несколько терминалов, при этом коннектиться несколько раз облом — особенно если коннектиться нужно через несколько серверов. В этом тоже может помочь screen. Просто нажмите Ctrl — a c, и откроется еще один шелл.

Перемещаться между открытыми шеллами можно либо через Ctrl — a , где — номер открытого шелла, начиная с нуля, либо Ctrl — a n/Ctrl — a p — вперед назад.

Получить список открытых «окон» – консолей (и переключиться на нужную), можно комбинацией клавиш Ctrl — a «; чтобы задать нормальное имя (а не просто скучный «bash») для какого-нить окна, перейдите в него и нажмите Ctrl — a A (регистр имеет значение), затем в появившемся приглашении введите имя.

Мониторинг выполнения команды

Если открыто несколько окон, полезной может быть возможность следить за активностью в каком-то из них. Например, если вы запустили «долгоиграющую» команду и интересно узнать, когда она завершится.

Переходим в окно с этой командой, жмем Ctrl — a m, видим надпись типа такой: «Window 0 (bash) is now being monitored for all activity».

Когда что-то в окне изменится, screen подаст звуковой сигнал, а в списке окон после номера появится символ «@».

Прокрутка экрана в screen

Для просмотра вывода команды, который ушел выше границ окна, нужно нажать Ctrl-a [

Это переключит screen в Copy mode. Для выхода из этого режима просто нажмите Esc.

Конфигурация screen

Конфигурируется screen с помощью файла ~/.screenrc, в вашем домашнем каталоге. Например, можно написать туда:

caption always «%{= 45}%{+b w}Screen: %n | %h %=%t %c» hardstatus alwayslastline «%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%

Источник: http://itman.in/ssh-screen/

Как работать с Linux Screen

Linux Screen позволяет вам:

  • Создавать множественные окна в терминале SSH;
  • Сохранять сессию активной даже при сетевых отключениях;
  • Отключаться и переподключаться к сессии из разных мест;
  • Выполнять длительный процесс, не поддерживая активную сессию.

Установка Screen с Yum

Наверняка, у вас уже есть Linux Screen в вашей системе. В большинстве дистрибутивов Red Hat и CentOS вы можете найти Screen Linux в /usr/bin/ screen . Чтобы увидеть, находится ли там Screen , вы можете использовать следующую команду:

[root@office ~]# which screen
/usr/bin/screen

Если у вас нет Screen, то можете установить его из RPM или файла пакета для вашей системы. Например, на CentOS можно установить Screen с yum:

[root@office ~]# yum install screen…

Complete!

Поскольку вы, скорее всего, уже имеете Screen или можете использовать RPM, я не буду описывать установку Screen из ресурса. А расскажу, как использовать screen.

Запуск Screen Linux

Screen запускается с командной строки точно так же, как любая другая команда :

root@office ~]# screen

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

Команда управления

Команда : «Ctrl-a»
Screen использует команду «Ctrl-a» , это — клавиша «CTRL» и нижний регистр «a» работает как сигнал отправить команды Screen’у вместо оболочки. Например, «Ctrl-a» потом «?». У Вас должна появится страница справки Screen.

Привязка клавиш — это команды , которые принимает Screen после того, как нажаты “Ctrl-a”. Вы можете переназначить эти ключи по своему усмотрению, используя .screenrc файл, но я использую значения по умолчанию. 

Создание окон

Команда: «Ctrl-a» «c». Чтобы создать новое окно используйте «Ctrl-a» «c».

Такая комбинация, с настройками по умолчанию создаст новое окно. Ваше старое окно будет все еще активно.
Например, я могу выполнить top и затем открыть новое окно, чтобы заняться чем-то другим. Top остается рабочей! Чтобы попробовать, запустите screen, а затем выполните top. (Примечание: некоторые скрины у меня урезаны, чтобы оставить свободное место.)

Запустите…

top — 09:10:33 up 35 days, 17:26, 1 user, load averagTasks: 131 total, 1 running, 130 sleeping, 0 stoppeCpu(s): 0.4%us, 0.2%sy, 0.0%ni, 99.4%id, 0.0%wa, 0Mem: 12302040k total, 6363652k used, 5938388k free,

Swap: 1052248k total, 12k used, 1052236k free,

Теперь откройте новое окно с: «Ctrl-a» «c»

Ваше главное окно все еще запущено. При необходимости, вы можете переключиться на него.

Переключение между окнами

Команда : «Ctrl-a» «n»

Screen позволяет перемещаться вперед и назад. Вы можете использовать «Ctrl-a» «n», чтобы вернуться обратно. Эта команда переключает на следующее окно.

Работает как карусель — циклично выполнится назад по кругу к Вашему первому окну. Вы можете создать несколько окон и переключателя по ним «Ctrl-a» «n» для следующего окна или «Ctrl-a» «p» для предыдущего окна. Каждый процесс продолжит работать, пока вы не закроете окно. 

Отсоединение от Screen

Команда: «Ctrl-a» «d»

Экран позволяет отсоединяться от окна и вернуться к нему позже. Если сетевая связь прервется, то Screen автоматически отсоединит сеанс!

Можете отсоединиться, используя «Ctrl-a» «d».

Все окна Screen все еще там, и вы можете повторно присоединиться к ним. Это удобно при использовании rsync для миграции сервера.

Повторное присоединение к Screen

Если Ваше соединение оборвалось или Вы отсоединились от Screen’а, Вы можете повторно подключиться, просто запуская:

[jeffh@office ~]$ screen -r

Произойдёт повторное подключение к Вашему Screen. Однако, если у Вас есть несколько Screen’ов,то может получится это:

[jeffh@office ~]$ screen -rThere are several suitable screens on:31917.pts-5.office (Detached)31844.pts-0.office (Detached)

Type «screen [-d] -r [pid.]tty.host» to resume one of them.

Если так, просто определите Screen, который хотите.

[jeffh@office ~]$ screen -r 31844.pts-0.office

Регистрация действий Screen

Я считаю важным фиксировать то, что я делаю на чьем-либо сервере. К счастью, Screen это упрощает.
Используя «Ctrl-a» «H», запускается регистрация сеанса.

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

Если что-то пойдёт не так, всегда будет возможность найти ошибку.

Получение уведомлений

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

Если Вы ожидаете ответа от «долгой» программы, можете использовать «Ctrl-a» «M», чтобы отследить активность.

Screen высветит предупреждение внизу страницы, когда отклик будет зарегистрирован на том экране.
Я использую это при выполнении команды, которая занимает много времени.

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

Если загружаете большой файл или компилируете программу, по завершению придёт уведомление. Это – будет сигналом того, что задание выполнено. Чтобы контролировать такие моменты без вывода экрана я используют «Ctrl-A» «_».

Блокировка сеанса Screen

Если Вам необходимо отойти от Вашего компьютера на несколько минут, Вы можете заблокировать свой сеанс, используя «Ctrl-a» «x». Для доступа к сеансу снова потребуется пароль.

Screen used by root .
Password:

Остановка Screen

Когда вы закончили работу, я бы порекомендовал закончить сеанс вместо того, чтобы оставить его на потом. Чтобы остановить Screen, можете, как обычно, просто ввести «Exit» из своей оболочки. Это закроет Screen. Чтобы завершить сеанс вы должны закрыть все окна.

Как только вы закрываете все окна выводится сообщение о том, что Screen начал завершение.

[screen is terminating]

Альтернативно, Вы можете использовать «Ctrl-a» «k».

Источник: https://larga.ru/article/linux-screen

Запуск приложения в фоне с помощью screen в Linux

  1. Вам нужно выполнить sql-запрос, результат которого нужно ждать несколько часов или дней? 
  2. Вам нужно запустить приложение в фоне?
  3. Вам нужно выполнять программу в фоне и иметь возможность к ней вернуться?
  4. Вы используете линукс-консоль и работаете с ssh?

Тогда вам в обязательном порядке нужно знать о screen.

Основы screen

Screen в linux — это как «окна в Windows», которые можно свернуть/развернуть. Вы можете что то делать в одном окне, например смотреть фотографии. Но, если вам нужно кроме просмотра фотографий слушать музыку, то вы откроете новое окно (проводник), зайдёте в каталог с музыкой и отроете песню в аудио-программе.

Когда речь идёт о консоли линукс (особенно при работе по ssh), то нам будет крайне не удобно в одной консоли выполнять различные приложения.

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

Второй момент заключается в том, что в случае какого-либо сбоя с вашей стороны (со стороны клиента) — текущая операция прервётся. Пара примеров, когда при работе с ssh может понадобиться screen:

  • если вы копируете или перемещаете большой объём файлов с одного каталога в другой
  • если вы выполняете тяжёлый sql-запрос
  • если нужно запустить приложение, которое «захватывает» консоль

Наверное, вам было бы очень грустно, когда из-за случайно-закрытого терминала или скачка напряжения прервался бы sql-запрос, который уже выполнялся более 10 часов.

В случае же с screen, screen работает на сервере, инициатором запроса будет объект screen и запрос уже не оборвётся не при каких проблемах клиента.

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

Работа со screen

Для создания screen и начала работы с ним напечатайте в командной строке:

screen -S test1

где test1 — произвольное имя для объекта screen, вы можете назвать его для удобства как вам нравится.

При этом будет создан screen под именем test1. Теперь вы можете запускать любые долгие операции. Например выполнять sql-запрос:

mysql -u …
select * from …
update …

Уже на этом этапе, если у вас пропадёт интернет, вы случайно закроете вкладку терминала, перезагрузится комьютер — вы не потеряете никаких данных и sql-запрос не прервётся.

Чтобы выйти из screen, нажмите следующие клавиши:

  + &  — выйти из screen`а. Запрос продолжит свою работу. Все процессы, запущенные в скринах, продолжают выполняться.

Чтобы вернуться в ваш screen либо в любое другое окно screen, можно просмотреть все доступные screen:

screen -r либо screen -ls — просмотреть список доступных screen`ов.

screen -r  — выбрать и активировать один из screen.

Когда сессия screen вам больше не нужна, чтобы полностью завершить сессию скрин, активируйте screen с помощью screen -r и нажмите внутри него + либо напечатайте exit.

Источник: https://jeka.by/post/1028/screen/

Настройка утилиты screen в Linux

Создатели Screen называют утилиту менеджером (псевдо)терминалов. Идея в том, чтобы вместо нескольких терминалов, открытых для одновременной работы с разными пользовательскими программами например по ssh, обеспечить доступ к этим терминалам из одного единственного терминала, как если бы мы работали в «настоящем» TTY и переключались из одного в другой клавишами Alt-Fn.

На самом деле, Screen умеет гораздо больше. Перечислю два её основных достоинства.

  1. Сессия Screen запускается независимо от login shell (Рис.1), благодаря чему после выхода и повторного входа в командный интерпретатор, например, по ssh мы можем снова «подключиться» к этой сессии со всеми запущенными в ней ранее программами и возможностью вмешаться в ход их выполнения (в отличие от запуска программ в фоновом режиме, когда на их работу обычно уже невозможно влиять). Это очень выручает при нестабильном удалённом подключении по ssh, так как сбой в соединении может привести к аварийному прекращению выполняющейся программы, являющейся дочерним процессом login shell и возникновению системного сбоя. При запуске же внутри Screen программа просто «не заметит» разрыва ssh-сессии и закрытия терминала.
     Рис. 1 Сессия Screen с запущенными в ней tail и htop не зависит от текущей сессии bash (PID=13054), поскольку не является её потомком.
  2. В одной сессии Screen на экране можно расположить несколько терминалов одновременно и легко переключаться между ними, чего не позволяет обычный TTY (Рис.2).

Рис. 2. Оба псевдотерминала в одном окне Screen (вверху) вместо двух отдельно открытых окон (внизу).

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

1. Термины и определения

Окно (window) — псевдотерминал со своим bash (nonlogin). Окна нумеруются от 0 до 9 (номера окон можно переопределить). Им можно (и желательно) присваивать имена.

Область (region) — прямоугольная область экрана, в которой отображается одно из окон. Экран можно разбить на области как вертикально, так и горизонтально.

Разметка экрана (layout). Это набор областей, на которые разбит экран терминала. Каждой разметке можно присвоить имя и внести в конфигурационный файл, чтобы иметь возможность быстро выбирать их внутри сессии Screen с помощью группы команд layout (см. ниже).

2. Описание команд

Управляющие сочетания клавиш. Для перехода в режим ввода управляющих команд в screen по умолчанию используется Ctrl-a.

После нажатия этой комбинации вводится собственно управляющий символ или сочетание, например ? (справка по командам) или Ctrl-I (переход в следующую область).

Для упрощения изложения в дальнейшем будут упоминаться только сами управляющие сочетания без переключателя Ctrl-a.

Работа с окнами (псевдотерминалами, PTS)
с Создать окно с запущенным в нём bash.
K Закрыть окно
А Переименовать окно
r Включение / Выключение переноса строк в терминале
« Вывести список окон
Работа с областями экрана (regions)
s Разбить область на две по горизонтали
I (pipe) Разбить область на две по вертикали
Tab Переключиться в следующую область экрана
Q Закрыть все остальные области и оставить текущую (в которой находится фокус)
Работа с сессиями Screen
d Перевести сессию в фоновый режим и вернуться в системную консоль

/* Here you can add custom CSS for the current table */ /* Lean more about CSS: https://en.wikipedia.org/wiki/Cascading_Style_Sheets */ /* To prevent the use of styles to other tables use «#supsystic-table-1» as a base selector for example: #supsystic-table-1 { … } #supsystic-table-1 tbody { … } #supsystic-table-1 tbody tr { … } */

Внутренние команды Screen. Доступны после ввода управляющего символа : (двоеточие).

mousetrack on Включить поддержку мыши для переключения между областями. При этом блокируется возможность копирования / вставки по правому щелчку мыши в окне ssh-клиента Putty. Эта функция почему-то пропадает после «открепления» сессии Screen и возвращения в неё.
layout show Просмотреть список разметок экрана, заданных в конфигурационном файле
layout select [n|title] Выбрать заданную в конфигурационном файле именованную разметку экрана либо по номеру (n) либо по названию (title).
layout save XXX Эту команду нужно выполнить для сохранения текущего layout-а с именем XXX перед откреплением сессии Screen, если в конфигурационном файле не прописано ни одной именованной разметки (например, вы только установили screen). Только в этом случае последняя разметка восстанавливается при повторном входе в сессию Screen из системной консоли.
layout autosave on Команда автосохранения разметки обычно записывается в конфигурационном файле. Она запоминает тот именованный layout, который был на экране на момент «открепления» сессии Screen. Команда действует только на разметки, явно указанные в конфигурационном файле. В противном случае текущий layout нужно сохранить командой layout save XXX (см. выше).
quit Закрыть все окна и завершить сессию

/* Here you can add custom CSS for the current table */ /* Lean more about CSS: https://en.wikipedia.org/wiki/Cascading_Style_Sheets */ /* To prevent the use of styles to other tables use «#supsystic-table-1» as a base selector for example: #supsystic-table-1 { … } #supsystic-table-1 tbody { … } #supsystic-table-1 tbody tr { … } */

Глобальный файл конфигурации screen находится по адресу /etc/screenrc, но для удобства работы лучше написать пользовательский файл, который должен располагаться в домашнем каталоге пользователя ~/.screenrc. Обратите внимание, что в начале имени локального файла присутствует точка.

За основу я взял файл с Github (.screenrc by joaopizani) и подправил под свои нужды:

  1. Оставлена нижняя статусная строка, в которой отображаются все рабочие окна под своими номерами и именами. Нумерация окон для удобства сделана с 1 по 10-е.
  2. Предопределено несколько самых распространённых разметок экрана, которые интуитивно легко выбрать по порядковому номеру: 0 — one (одна область) 1 — two-v (две вертикальные области) 2 — two-h (две горизонтальные области) 3 — three (три области — две вверху, одна внизу) 4 — four (четыре области)
  3. По умолчанию открывается разметка с двумя вертикальными областями (two-v)
  4. Оставлено одно активное окно и убран нерабочий код функциональных клавиш

Таким образом, при запуске Screen мы получим экран в стиле Total Commander, который в любое время можно изменить, выбрав другую разметку. После возврата в сессию Screen из системной консоли разметка будет такой же, как на момент «открепления» благодаря функции автосохранения.

  • Файл конфигурации .screenrc

Источник: http://linux.bolden.ru/screen/

Всё об Ubuntu —

Опубликовано 30.11.1999 00:00

Ubuntu как и любая другая достойная операционная система, имеет внутренние средства для снятия скриншотов. Причем, Ubuntu предлагает для этого сразу несколько возможностей. Давайте немного о них поговорим.

Способ №1 Самый простой способ получить скриншот на Ubuntu мало чем отличается от такового на Windows. Достаточно нажать клавишу «Prt Sc» (Print Screen) и перед вами появиться окно сохранения сделанного снимка:

Главный недостаток данного способа — вы можете сделать только снимок целого экрана (и то без каких-либо опций).

Но, все равно отметим, что аналогичная утилита на Windows XP не выдерживает сравнения, потому что нажатие «Prt Sc» (Print Screen) приводит к сохранению скриншота в папку по умолчанию, в то время как на Ubuntu мы может хотя бы определить папку в процессе.

Способ №2 Другой способ получить скриншот в Ubuntu стандартными средствами системы — воспользоваться одноименной утилитой. Для этого заходим «Приложения» — «Стандартные» — «Снимок экрана» (Applications -> Accessories -> Take screenshot).

В отличие от первого способа, данная утилита предоставляет нам куда большие возможности. Во-первых имеется 3 режима снятия скриншота — «Захватить весь рабочий стол», «Захватить текущее окно», «Выбрать область захвата». Обычно этих трех режимов достаточно чтобы удобно сделать «снимок» любой необходимой области экрана.

Во-вторых, у вас есть возможность выставить «задержку». То есть время, после которого будет осуществлен захват. Опция сверхполезная, особенно в том случае когда вам нужно захватить какое-то «всплывающее» окно или «всплывающую» подсказку.

В-третьих, мы можем включить или исключить из снимка указатель мыши, что так же очень полезно. После того как нужный режим и опции отмечены, и скриншот сделан, вы попадаете на окно сохранения скриншота, которое идентично тому что мы имеем в способе №1.

Способ №3 Если вам нужно быстро сделать скриншот всего экрана без особых опций, можно воспользоваться способом №1, если вам нужно выделить какую-то область, установить задержку или убрать указатель мыши, придется воспользоваться способом №2, если вас по тем или иным причинам не устраивает то и другое и хочется большего, остается выбрать одну из популярных утилит сторонних разработчиков. На мой взгляд самая известная и распространенная утилита для снятия скриншотов Ubuntu — Shutter.

Если разобраться, большинство жизненно важных функций обеспечивает родная утилита «Снимок экрана» (Take Screenshot). Shutter более удобный, комфортный, и добавляет несколько (я бы даже сказал немало) приятных мелочей. Базовые функции в Shutter те же что в утилите «Снимок экрана» (Take Screenshot), поэтому давайте поговорим о «пряниках» и бонусах.

Во-первых, Shutter позволяет выбрать формат сохраняемого скриншота (jmp, png, gif) и уровень сжатия (если такой может иметь место). Во-вторых в Shutter есть интересный режим — получения снимка веб-сайта. Это очень важная штука потому что сайт может выходить (и чаще всего выходит) за рамки одно экрана.

Поэтому, даже выбрав опцию «Захватить весь рабочий стол» вы вряд-ли получите снимок всего сайта, дай бог, только его верхушки. Стоит отметить так же что для этого режима можно определить ширину виртуального браузера. В-третьих, утилита поддерживает комбинации клавиш, что так же очень удобно.

В-четвертых, в Shutter предусмотрена гибкая настройка поведения. Это касается параметров окна (скрывать главное окно во время съемки, сворачивать в область уведомлений при закрытии главного окна, задержка перерисовки), уведомлений (показывать всплывающие уведомления после съемки, показывать всплывающие сообщения если включена задержка и так далее).

В-пятых, Shutter может в автоматическом режиме закачивать сделанные снимки на файловый хостинг (например, ubuntu-pics.de, imagebanana.com, imageshack.us и так далее). Передача осуществляется по протоколу FTP в активном или пассивном режиме соединения.

В-шестых, Shutter поддерживает плагины, которые способны очень существенно расширить его функционал. Вот только некоторые из них: «Сепия», «Водяной знак», «Оттенки серого», «Негатив», «Мягкие углы», «Рваная бумага».

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

Если вам не требуется чего-то особого, можно вполне обойтись внутренними средствами, ну, а если вам нужен полный контроль и богатейшие возможности — устанавливайте Shutter, ему все по плечу! P.S. Проще всего установить Shutter если найти его в «Центре приложений Ubuntu». Альтернативный путь для Ubuntu 9.10 (Karmic Koala) и более старших версий: sudo add-apt-repository ppa:shutter/ppa sudo apt-get update sudo apt-get install shutter

Источник: http://MyUbuntu.ru/rukovodstvo/delaem-skrinshoty-v-ubuntu

Установка ScreenCloud в Ubuntu 14.04 — 12.04

В данной статье расскажу о замечательной программе ScreenCloud, которая позволяет сделать скриншот рабочего стола, который загрузится в персональное облако сервиса screencloud.net. Создастся ссылка на изображение, которая будет добавлена в буфер обмена.
Остаётся только поделиться ссылкой, просто вставив её из буфера обмена.

О программе ScreenCloud.

Запустив ScreenCloud, программа добавится в трей — системную панель.

Из данного значка можно выбрать все необходимые действия:

1. Capture Full Screen — Сделать скриншот всего экрана.
2. Capture Selection — Выделить область экрана рабочего стола.
3. Capture Window — Сделать скриншот выделенного окна приложения.

Лучше зарегистрироваться на официальном сайте, создав аккаунт:

http://screencloud.net/ 

Либо во время первого запуска программы:

После регистрации у Вас будет доступна загрузка скриншотов в облако ScreenCloud:

И ввойдя в аккаунт:

можно в любое время зайти и в веб интерфейс — open online dashboard:

Таким образом, из ярлыка в трее или с помощью горячих клавиш делаем скриншот, после чего видим диалог:

выбрав «save to» сохранять на сервис screencloud, у вас сделанный скриншот тут же зальется на данный веб сервис и об этом будет просигнализировано в нотификации:

После чего ссылка на изображение будет скопирована в буфер обмена и ее можно будет послать кому-нибудь.

Ссылка представляет собой:

Очень удобное делать изображения вашего рабочего стола, работы программ и прочего — прочего, и моментально отправить нужному человеку, не выполняя лишних движений.

Не сложна в настройках.
К примеру можно изменить горячие клавиши:

Позволяет загружать также на другие веб сервисы, ну и конечно же локально:

Еще очень важное замечание.
После того как выделили область — Capture Selection, то, чтобы сделать скриншот, нужно нажать клавишу Enter.


Установка Screencloud в Ubuntu 14.04 — 12.04

Перейдем к установке, а это не так уж и просто, как оказалось.
На официальном сайте:

Можно скачать deb пакет для Ubuntu. Но программа устанавливаться отказалась, так как есть неразрешенные зависимости, которые устранить не получилось.

Нормально программа ScreenCloud устанавливается из репозитория.
Воспользуйтесь одной из инструкций ниже, в соответствии с версией вашей операционной системы Ubuntu.


Установка ScreenCloud для Ubuntu 14.04

Добавляем ключ репозитория ScreenCloud в систему, выполнив данную команду в терминале (это одна команда, её нужно скопировать полностью):
wget -q -O- http://download.opensuse.org/repositories/home:olav-st/xUbuntu_14.04/Release.key | sudo apt-key add —

Затем подключаем репозиторий ScreenCloud (это одна команда, её нужно скопировать полностью):

sudo add-apt-repository 'deb http://download.opensuse.org/repositories/home:/olav-st/xUbuntu_14.04/ /'

обновляем информацию о пакетах в репозиториях и устанавливаем программу из добавленного репозитория:

sudo apt-get update

sudo apt-get install screencloud


Установка ScreenCloud для Ubuntu 12.04

Добавляем ключ репозитория ScreenCloud в систему, выполнив данную команду в терминале (это одна команда, её нужно скопировать полностью):
wget -q -O- http://download.opensuse.org/repositories/home:olav-st/xUbuntu_12.04/Release.key | sudo apt-key add —

Затем подключаем репозиторий ScreenCloud (это одна команда, её нужно скопировать полностью):

sudo add-apt-repository 'deb http://download.opensuse.org/repositories/home:/olav-st/xUbuntu_12.04/ /'

обновляем информацию о пакетах в репозиториях и устанавливаем программу из добавленного репозитория:

sudo apt-get update

sudo apt-get install screencloud


Установка ScreenCloud для Ubuntu 12.10

Добавляем ключ репозитория ScreenCloud в систему, выполнив данную команду в терминале (это одна команда, её нужно скопировать полностью):
wget -q -O- http://download.opensuse.org/repositories/home:olav-st/xUbuntu_12.10/Release.key | sudo apt-key add —

Затем подключаем репозиторий ScreenCloud (это одна команда, её нужно скопировать полностью):

sudo add-apt-repository 'deb http://download.opensuse.org/repositories/home:/olav-st/xUbuntu_12.10/ /'

обновляем информацию о пакетах в репозиториях и устанавливаем программу из добавленного репозитория:

sudo apt-get update

sudo apt-get install screencloud


Установка ScreenCloud для Ubuntu 13.04

Добавляем ключ репозитория ScreenCloud в систему, выполнив данную команду в терминале (это одна команда, её нужно скопировать полностью):
wget -q -O- http://download.opensuse.org/repositories/home:olav-st/xUbuntu_13.04/Release.key | sudo apt-key add —

Затем подключаем репозиторий ScreenCloud (это одна команда, её нужно скопировать полностью):

sudo add-apt-repository 'deb http://download.opensuse.org/repositories/home:/olav-st/xUbuntu_13.04/ /'

обновляем информацию о пакетах в репозиториях и устанавливаем программу из добавленного репозитория:

sudo apt-get update

sudo apt-get install screencloud


Установка ScreenCloud для Ubuntu 13.10

Добавляем ключ репозитория ScreenCloud в систему, выполнив данную команду в терминале (это одна команда, её нужно скопировать полностью):
wget -q -O- http://download.opensuse.org/repositories/home:olav-st/xUbuntu_13.10/Release.key | sudo apt-key add —

Затем подключаем репозиторий ScreenCloud (это одна команда, её нужно скопировать полностью):

sudo add-apt-repository 'deb http://download.opensuse.org/repositories/home:/olav-st/xUbuntu_13.10/ /'

обновляем информацию о пакетах в репозиториях и устанавливаем программу из добавленного репозитория:

sudo apt-get update

sudo apt-get install screencloud

После установки Вы найдете данную программу в Главном меню Dash.

Источник: http://www.linuxrussia.com/screencloud-ubuntu.html

Shutter: Делаем скриншоты быстро и удобно в Ubuntu

Когда я использовал Windows, я активно пользовался инструментом Ножницы. Затем я перешел на Ubuntu и мне понадобилась подобная программа.  После непродолжительных переборов, я выбрал Shutter. Как оказалось, я нашел гораздо более эффективный комбайн, чем хотел. Сегодня я познакомлю вас с этой замечательной программой.

Функции

Что же умеет делать Шаттер:

  1. Скриншоты выбранной части экрана
  2. Скриншоты всего экрана
  3. Скриншоты сайтов, даже если они не помещаются на экране.
  4. Редактирование изображений
  5. Отправка изображений на фотохостинги

Установка программы

Программа доступна через Ubuntu Software Center. Но, к сожалению, там доступна не самая последняя версия. На данный момент последняя 0.90.1, а в USC есть только 0.89. Последнюю версию программы можно скачать, например, с оф.сайта.

Настройка программы

Для комфортной работы с программой, стоит настроить ее сразу же под себя. Для этого переходим в Edit → Preferences, а там во вкладках выставляем нужные вам параметры.

Например, я выставил формат изображений png (оптимально для web), автоматическое сохранение и расширение в 1366 для снятия скриншотов сайта.

Если вас не устраивает английский язык программы, можно ее русифицировать (Help → Translate this Application).

Интерфейс программы

  1. Скриншот выделенной области экрана
  2. Скриншот всего экрана
  3. Скриншот одного из экранов или всех сразу (если вы используете несколько экранов/рабочих столов в Ubuntu)
  4. Скриншот окна (выбор нужного окна после нажатия)
  5. Скриншот выбранного окна (из списка)
  6. Скриншот только части окна
  7. Скриншот части меню какой-либо программы
  8. Захват подсказки меню/программы
  9. Скриншот вебсайтов
  10. Выбор максимального времени выполнения скриншота сайтов
  11. Редактирование вашего скриншота
  12. Отправка на фотохостинги или на фтп-сервер

Возможности редактирования фото

  • Скрытие секретной информации
  • Подсветка нужных элементов
  • Добавление текста, стрелочек, прямоугольников и т.д.
  • Обрезка изображения
  • Добавление нумерованных указателей (как на моем скриншоте)

Заключение

Я описал далеко не все возможности этого многофункционального комбайна. С каждой новой версией разработчики добавляют новые функции и исправляют старые ошибки. Буду рад вашим замечаниям и дополнениям. Удачной вам работы с программой. Enjoy it!

Источник: https://lifehacker.ru/shutter-delaem-skrinshoty-bystro-i-udobno-v-ubuntu/

Ссылка на основную публикацию