Comments 42
Только сейчас понял анекдот про чукчу объясняющему другому чукче, что такое трамвай. «Яблоко знашь? Совсем не похож!»

Сумбурно все написанно. Причем тут IE?

А мне не понятно зачем надо было писать ещё одну статью про screen, если в потом будет ещё одна статья про tmux.

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

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


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

Добрый день. Спасибо за вопрос. IE здесь приводится в пример. Если бы у вас не было вкладок. Точно так же, без screen'а у вас недоступна возможность работы с вкладками в терминале.

без screen'а у вас недоступна возможность работы с вкладками в терминале

Может глупость спрошу, но "открыть новую вкладку" в окне стандартного терминала, например, в Ubuntu — это не работа с вкладками? Или тут "вкладка" в терминале — это нечто большее чем просто вкладка в окне терминала? Ну, например, сохранение сессий, восстановление вкладок и т. д.?

Добрый день.
Ждал этого вопроса =). Да, согласен, что вкладками никого не удивишь. Тут именно вся соль в том, что screen умеет сохранять сессии, процессы, восстанавливать вкладки, разделять layout на несколько независимых регионов и много других полезных мелочей. В статье про tmux кроме всего прочего будет показано, как настроить сохранение сессий для ssh. Если оборвалась сессия, то он все сохраняет и не требует повторного ввода пароля. Как это может быть со стандартным терминалом.

Какого ещё пароля? Вы ещё ssh ключами не пользуетесь что ли? 2017 год уже на носу.

Добрый день.
Да, нужно было уточнить. Опять же, при работе через putty. Если происходит обрыв связи, даже, при соединении по ssh. При следующем подключении к сессии, неважно, screen, tmux или еще что-то там, то без дополнительной магии терминал, вас вежливо попросит ввести пароль. И нужно будет перезапустить сессию заново.

Вы не поняли вопрос. Паролями при соединении по SSH сейчас никто не пользуется. Точнее никто не должен пользоваться кроме очень редких случаев (например первый коннект к чистому серверу).

Следующее действие, что нужно сделать — установить ключ ssh и запретить коннект по паролю.

А по теме статьи: нет смысла рассматривать screen, если есть в планах рассматривать tmux.

P.S. А еще есть byobu

Добрый день.
Спасибо за совет. Пробовал, довольно интересно. Интерактивная надстройка над screen'ом. Если и начинать им пользоваться, то уже после того, как достаточно долгое время используешь screen. А то будет слишком много магии =)

UFO landed and left these words here

Добрый вечер.
Спасибо за вопрос. Все просто — в 99% когда вы садитесь за компьютер, который работает на *nix подобных OS, оболочка по умолчанию, которая обрабатывает команды пользователя будет bash. Конечно, есть еще такая оболочка как zsh, но это уже совсем другая история.

UFO landed and left these words here
Для тех, кто работает под linux — есть terminator.
Совершенно внезапно он умеет обходится без кучи putty окон, а разбиение окон очень быстро делается в процессе работы.
Из минусов — в моём случае потребовалось изменить прямо в исходнике применение клавиш мышки (говорят, что в свежей версии у автора есть требуемая галочка в меню) и клавиши для перемещения между окнами(мне удобней ctrl+стрелка) и вставку из клипборда на ctrl+v.

Ну и, правильно заметили выше — вместо screen — лучше tmux — ctrl+a я использую часто, а вот ctrl+b — не используем и хорошо подходит для контрольной последовательности.

Добрый вечер.
Спасибо за совет. Довольно интересная утилита. Наверное, в скором будущем буду ее пробовать. Серьезный претендент, чтобы заменить tmux.

Для тех, кто работает под linux — есть terminator.

Который работает только в иксах. Как и упоминавшийся оратором выше способ создания вкладок в иксовом же эмуляторе.

Упоминая screen и tmux автору надо было акцентировать внимание на том, что означенные инструменты пригодны для использования и в «голой» консоли, без иксов.
Ну для macOS много хороших вариантов есть. Мой фаворит TotalTermial, киллер фича ввиде выпадающей панельки в любой момент очень нравится!

Вместо <C-a> можно использовать что‐то ещё в screen, как и вместо <C-b> в tmux. Это настраивается. А вот тот же statusline в tmux менее ограничен, а настройки более понятны (кроме того, часто можно заменить малопонятное сокращение на что‐то более читаемое: к примеру, #D на более понятное #{pane_id}). И проблема с сохранением layout: использую tmux, здесь такого нет. Даже не знал, что в screen есть.

UFO landed and left these words here
Даже если есть необходимость в putty, то под Windows есть ConEmu, в котором есть вкладки, сохранение сессий и многое другое.

Добрый день.
Если вы внимательно читали статью, то в ней есть упоминание ConEmu. И ConEmu не есть полноценная замена putty. ConEmu — это уже больше для использования в своих целях, на своей машине. А вот если вы работаете в офисе, где вам отрезаны права на использование usb, установка софта и прочие ограничения, то putty (опять же windows) самая крутая штука, что может быть, для подключения к удаленному серверу.
Если вы на Windows 10, то там есть возможность использовать команды *nix OS, только нужно включить Developer Mode и дождаться, когда все закачается. Пруффы: раз, два

UFO landed and left these words here
причем разработчик использует windows, но ему зачем-то при этом нужно логиниться на nix…


Ну надо заметить не такая уж и редкая ситуация. Если честно, и сам так работаю IDE на windows хосте, а код на удаленных VPS под linux.
UFO landed and left these words here
Ну а какая мне разница под какой ОС работает у меня PhpStorm и браузер. Все равно ведь, весь код и среда исполнения у меня на удаленных серверах. Ну да немного напрягает в Windows отсутствие ssh из коробки, но плюсом для меня идет ms office и терабайт места в облаке.

Какие плюсы мне как веб разработчику дает linux или допустим macos на рабочей машине? Мне абсолютно все равно, что у меня установлено linux, либо же windows. Например на работе на десктопе и ноутбуке у меня ubuntu с xfce, дома на десктопе и ноутбуке windows10, и если честно, то для работы особой разницы не вижу. Все равно и там и там 90% времени открыт PhpStorm и браузер.
UFO landed and left these words here
Вы правильно заметили, XX век закончился. Настало время облачных платформ и сервисов облачных вычислений, а также VPS по 3 евро штука и безлимитного высокоскоростного интернета. Если я вас правильно понимаю, то вы все еще тестируете свои проекты у себя на локалхосте, разворачивая там все рабочее окружение, а затем размещаете на shared хостинге? С моей точки зрения это как минимум странно, если это так. Я не пытаюсь вам навязывать свою точку зрения, но все таки попробуйте облака, это действительно удобно и возможно вам понравиться.
UFO landed and left these words here
Мне известно, что ConEmu не есть замена putty и про подсистему linux в windows 10, тоже знаю. Я просто ответил на комментарий о куче окон при использовании putty.
> вместо screen — лучше tmux — ctrl+a я использую часто, а вот ctrl+b — не используем и хорошо подходит для контрольной последовательности.

Всё почти наоборот. screen'у элементарно заменить переключающую последовательность — опции типа -e ^ba (для Ctrl+B) и так далее; есть и умолчание для screenrc. Я не пользуюсь Ctrl+A, у меня в зависимости от места Ctrl+F, B, N, местами ещё более редкие.

tmux'у с некоторых пор это тоже делается, но сильно более громоздко — например, для новой сессии надо сказать

tmux new-session \; set-option prefix ^n


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

Ещё из специфичного, что нужно мне — при общем utf-8, есть контексты, в которых надо запускать терминалы под koi8. Screen умеет перекодировки в обе стороны (и я ему ещё и koi8-u добавлял), tmux — нет.
UFO landed and left these words here

Добрый день.


Не, ну серьезно, можно же предложение «screen лучше, чем putty — чем лучше?

Вот тут не понятно. screen не есть замена putty. Он не лучше и не хуже putty. Это немного два разных инструмента.


Единственное ценное, что есть в статье — объяснение настройки screen. Oh, wait… Объяснения почему-то нет, а есть магия «скопируйте вот это вот туда»..

Сначала хотел описать за что какой конфиг отвечает. Но потом понял, что я просто перепишу мануал на русский. Если что-то непонятно, то man screen поможет на счет раз.
Что означают непонятные символы в этой строке hardstatus string "%-w%{= BW}%50>%n %t%{-}%+w%<" можно почитать тут

Автор забыл упомянуть шикарную фишку screen — возможность «расшарить» экран на двух и более пользователей (screen -x). Это полезно для обучения опытным пользователем новичка (а только именно так и возможно эффективно изучать Linux)

tmux тоже это умеет.


Кстати, некоторые сейчас рассматривают Neovim как замену screen и tmux: возможности :terminal буферов вместе с остальными возможностями *Vim, в принципе, это позволяют.

Автор забыл упомянуть шикарную фишку screen — возможность «расшарить» экран на двух и более пользователей (screen -x). Это полезно для обучения опытным пользователем новичка (а только именно так и возможно эффективно изучать Linux)

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

Добрый день.
Спасибо за ссылку. Добавлю ее в полезные ссылки для следующей статьи.

Only those users with full accounts are able to leave comments. Log in, please.