Byobu vs. GNU Screen vs. tmux – полезность и переносимость навыков
До сих пор я использовал Konsole для управления несколькими сеансами оболочки, но я не пробовал Byobu , GNU Screen и tmux , которые предлагают лучшую поддержку для нескольких оболочек. Все они имеют одну основную функцию, которая позволяет отключить текущий сеанс и позже подключиться к этой старой сессии.
Чтобы помочь мне выбрать инструмент для изучения, я хотел бы знать: как они различаются в следующих отношениях?
- Особенности (очевидно)
- Срок погашения проекта. Я не хочу изучать инструмент, который слишком сильно меняется. Усовершенствования приветствуются, но мне не нравятся сюрпризы, такие как исчезающие функции.
- Кривая обучения
- Доступность на разных платформах. Если я изучу инструмент, я бы хотел использовать его на сервере FreeBSD, рабочем столе SuSE или Ubuntu.
- Совместимость с другими интерактивными программами оболочки. Могу ли я использовать
vim
иemacs -nw
(режим без окна или текстовый режим) так же, как я привык? Будут ли сочетания клавиш конфликтующими с другими инструментами?
Я просто попробовал все, и Byobu выглядит как своего рода интерфейс для GNU Screen и tmux. Тогда почему кто-то создал Byobu вместо того, чтобы вносить вклад в проект экрана GNU и добавлять новые функции? Почему Byobu не является каким-то расширенным интерфейсом в GNU Screen? Если я использую Byobu в качестве моего ежедневного инструмента с экраном GNU в качестве бэкэнд, могу ли я передать эти знания для использования экрана GNU без Byobu, если на определенной машине есть только экран GNU?
- Copy-paste не работает в MacVim при запуске в tmux
- Tmux и выбор текста с помощью мыши с помощью шпатлевки
- Как войти в режим копирования на прокрутке мыши в tmux?
- Отключить строку состояния в tmux?
- Включение мыши в tmux конфликтах с пастой в X
- Границы Tmux отображаются как xq вместо строк?
- Связывание ключа tmux с несколькими командами
- Как получить tmux для открытия набора панелей без ввода вручную?
- Tmux chain shortcuts или эквивалент для команды `bind -c` +` screen -c`
- Как я могу искать в выходном буфере оболочки tmux?
- Что означает «первый pid панели» в tmux?
- Tmux: Как связать окно как разделенное окно?
- Перемешивание ключей в vim при запуске внутри tmux
Для экрана Tmux vs GNU, прочитайте
- Tmux против экрана [SU]
- Tmux vs. GNU Screen [Unix.SX]
И несколько других воплощений сравнения, которые можно найти в блогах и т. Д.
Некоторые общие термины, которые часто повторяются:
- Tmux новее. Это означает, что это немного странно (простые вертикальные расщепления, красивые зеленые линии) и немного менее хорошо проверены, например, на совместимость (в незначительной степени в соответствии с ее сторонниками).
- Tmux более компактен для ресурсов.
- Экран GNU находится повсюду и, скорее всего, еще более используется.
Помимо этого, можно посмотреть конкретные функции для одной или другой альтернативы, и личное предпочтение будет доминировать в обсуждении. Я лично использовал экран GNU сильно – теперь я использую Tmux.
Я не нашел Byobu, чтобы иметь для меня какие-то «функции убийцы». Это обеспечивает абстракцию, где я считаю, что для моих случаев использования не требуется.
Другой способ взглянуть на это – отметить, что Byobu может использовать любой из GNU Screen или Tmux в качестве backend, что показывает, что отличия от пользовательского POV в основном поверхностны.
Отличный вопрос! Для чего это стоит, я автор и сопровождающий Быбу .
Byobu – это слой конфигурации, первоначально написанный для размещения поверх экрана GNU , но теперь он также работает поверх Tmux .
Я начал писать Byobu еще в декабре 2008 года , когда я встретился с кучей пользователей Screen и Ubuntu Server в Googleplex и обнаружил, что все мы поддерживаем нашу собственную кучу опрятных / забавных / полезных хаков в наших конфигурациях ~/.screenrc
, И нам пришлось вручную перемещать их между десятками или сотнями серверов, которые мы использовали. Мы начали торговать советами и трюками, и я начал собирать их в оригинальный проект GPLv3 под названием «screen-profiles». Примерно через 6 месяцев вокруг « экранных профилей » появилось целое сообщество, и проект стал намного больше, чем просто экранные хаки – у нас были утилиты настройки, плагины состояния и привязки клавиш. Таким образом, мы переименовали проект «Byobu», который является японским словом для этих элегантных складных «экранов» и имеет дополнительное преимущество в том, что он смог более успешно использовать Google для «Byobu $ FOO», чем «Screen $ FOO».
С Byobu теперь в большинстве дистрибутивов Linux ( Ubuntu , Debian , Fedora , Arch ) и работает на большинстве Mac / BSD и других UNIX, он дает одинаковые удобные сочетания клавиш, динамическую информацию о состоянии системы на любом терминале, который вы можете использовать Необходимо получить доступ.
Почему бы не внести свой вклад в проект GNU Screen? Несколько причин … Все, что Byobu работает так же хорошо, как и варианты конфигурации. Ни одно из них не должно быть включено в исходную базу экрана, чтобы быть функциональным. Некоторые вещи могут работать лучше или работать лучше, если экран включил их по умолчанию, но многие из этих изменений очень «упрямы», которые обычно трудно или невозможно внести в 25-летний проект вверх по течению. Кроме того, проект GNU Screen движется очень медленно, если вообще. Это 25 + лет, и с августа 2008 года не было официального релиза. В каждом дистрибутиве хранятся огромные стопки патчей, чтобы ваш / usr / bin / screen работал и защищался. Например, Ubuntu и Debian в настоящее время имеют 19K строк кода в ~ 48 патчей .
Я узнал о Tmux около 2 лет назад и действительно влюбился в исходный код, дизайн, интерфейс и активное сообщество! У меня было намного легче сделать исправления для восходящего Tmux и обсудить темы в списке рассылки. И как пользователь Byobu, который использует его повсюду, мне хотелось, чтобы мои сеансы Tmux были такими же, как и я, которые я получил в 4+ годах Byobu. Поэтому я портировал весь код Byobu, чтобы работать одинаково хорошо с Tmux в качестве бэкэнд, как Screen. Начиная с версии Byobu 5.0 , Tmux теперь является бэкэнд по умолчанию, а экран все еще поддерживается в унаследованном режиме. Byobu теперь использует многие из современных функций Tmux over Screen, включая значительно улучшенную поддержку 256 цветов, символы UTF8 и горизонтальное / вертикальное разбиение окон.
Если вас устраивают настройки по умолчанию на экране или Tmux или вы хотите писать свои собственные конфигурационные файлы с нуля, то, во всяком случае, Screen и Tmux являются фантастическими утилитами, которые добавили многолетнюю эффективность в нашу жизнь. Если вас интересует набор конфигураций, которые действительно растягивают и расширяют то, что Screen и Tmux делают из коробки, взгляните на Byobu!
Приветствия, Дастин