Byobu — небольшая обёртка над tmux или GNU screen, которая добавляет статусную строку, удобные функциональные клавиши и готовые настройки. Название переводится с японского как «ширма»: программа действительно прячет детали мультиплексора, оставляя привычные F-клавиши. Для администратора это способ держать долгие задачи, SSH-сессии и панели в одном окне без запоминания десятков команд. Отдельная выгода — предсказуемое поведение при обрыве связи: сессия остаётся на сервере, а после переподключения вы возвращаетесь в то же окно. Ниже — установка, горячие клавиши, настройка статуса, работа с сессиями и разбор типичных проблем.
Зачем нужна обёртка над tmux
- Статусная строка с загрузкой, памятью, диском, сетью и временем включена сразу.
- F-клавиши выполняют частые действия без префикса.
- Единый набор настроек для tmux и screen.
- Автозапуск при входе по SSH настраивается в пару команд.
- Конфигурация хранится в ~/.byobu и не конфликтует с ~/.tmux.conf.
При этом Byobu не заменяет tmux: внутри работают те же сессии, панели и буферы, а конфигурацию можно расширять обычными директивами.
Установка и выбор бэкенда
В Debian и Ubuntu пакет есть в основном репозитории. После установки выберите бэкенд: tmux современнее и поддерживает больше возможностей, screen оставляют для совместимости со старыми сценариями.
sudo apt update
sudo apt install byobu
byobu-select-backend
tmux -V
Выбор сохраняется в ~/.byobu/backend. Проверить активный бэкенд можно переменной BYOBU_BACKEND внутри сессии. Если tmux не установлен, Byobu предложит его поставить или переключится на screen.
Горячие клавиши
Основные действия собраны на функциональных клавишах. Их можно нажимать без префикса, что и делает Byobu удобным для новичков.
- F2 — новое окно.
- F3 / F4 — предыдущее и следующее окно.
- F5 — перечитать конфигурацию.
- F6 — отключиться от сессии, оставив её работать.
- F7 — войти в режим прокрутки, выход — q.
- F8 — переименовать окно.
- F9 — меню настроек.
- Shift-F2 / Ctrl-F2 — разделить экран по горизонтали и вертикали.
Внутри панели работают обычные команды tmux, но префикс по умолчанию другой. Посмотреть действующие привязки можно через byobu-tmux list-keys.
Автозапуск при входе
Чтобы сессия поднималась автоматически при подключении по SSH, используют byobu-enable. Она прописывает запуск в профиль оболочки. Обратная операция — byobu-disable.
byobu-enable
byobu-launcher-install
byobu-disable
byobu-launcher-uninstall
byobu-launcher-install добавляет вызов в ~/.profile для входа в систему, а byobu-enable — в конфигурацию интерактивной оболочки. Не включайте оба механизма сразу: получите вложенные сессии, в которых легко запутаться.
Статусная строка
Состав строки задаётся в ~/.byobu/status. Единица включает элемент, ноль выключает. После правки достаточно нажать F5.
status_uptime="1"
status_load_average_5="1"
status_mem_used="1"
status_disk="1"
status_network="1"
status_date="1"
Цвета и тема настраиваются через ~/.byobu/color.tmux, а быстрый доступ к переключателям даёт меню по F9. Не включайте всё подряд на узком терминале: строка начнёт обрезаться, и часть индикаторов пропадёт.
Окна, панели и сессии
Byobu запускает обычные сессии tmux, поэтому к ним применимы штатные команды. Удобно заводить отдельные сессии под проекты и подключаться к ним с разных машин.
byobu-tmux new-session -s work
byobu-tmux list-sessions
byobu-tmux attach -t work
byobu-tmux kill-session -t work
Отключение по F6 не завершает процессы: они продолжают работать, пока существует сессия. Это ключевое отличие от простого закрытия терминала, где дочерние процессы получают сигнал и завершаются. Панели внутри окна создаются через Shift-F2 и Ctrl-F2, переключение идёт по кругу, а закрытие выполняет команда kill-pane.
Копирование, вставка и прокрутка
В tmux-бэкенде Byobu использует системный буфер обмена, если он доступен. Для этого в profile.tmux включают set-clipboard, а в терминале разрешают OSC 52. На серверах без графической сессии надёжнее копировать через режим прокрутки: F7, затем перемещение стрелками или PageUp, выделение пробелом и сохранение в буфер tmux.
set -g set-clipboard on
После выделения текст вставляется в другую панель стандартным префиксом tmux. Если вставка дублируется или обрезается, проверьте TERM и настройки эмулятора: чаще всего проблема в несовпадении возможностей терминала, а не в самом Byobu.
Настройка tmux через Byobu
Собственные директивы tmux кладут в ~/.byobu/profile.tmux: файл подхватывается при старте и не перезаписывается обновлениями пакета. Привязки клавиш удобно держать в ~/.byobu/keybindings.tmux.
set -g history-limit 100000
set -g mouse on
setw -g mode-keys vi
set -g base-index 1
История на 100 тысяч строк стоит памяти, но для разбора инцидентов экономит время. Включённая мышь упрощает копирование, однако в некоторых терминалах перехватывает выделение — тогда используйте Shift при выделении.
Диагностика
Если статусная строка пустая или сессия не создаётся, начните с проверки бэкенда и версии tmux. Плагины статуса — это отдельные скрипты в /usr/lib/byobu/, каждый можно запустить вручную.
byobu-select-backend
byobu-status uptime
ls /usr/lib/byobu/
byobu-reconnect-sockets
- «Not a terminal» — команда запущена из cron или скрипта без TTY; используйте
scriptили запускайте вручную. - Непонятные символы в статусе — проверьте локаль:
localeдолжна содержать UTF-8. - Вложенные сессии — отключите один из автозапусков.
- Мусорные сокеты —
byobu-reconnect-socketsпересоздаёт ссылки на сокеты после сбоя. - Не работают F-клавиши — терминал перехватывает их; настройте эмулятор или используйте префикс tmux.
Чек-лист
- Выбран и зафиксирован бэкенд tmux.
- Автозапуск настроен только одним способом.
- Статусная строка не перегружена и читается на узком экране.
- История и мышь настроены в profile.tmux, а не в системных файлах.
- Проверено восстановление сессии после обрыва SSH.
- Локаль UTF-8 и корректный TERM на всех серверах.
- Буфер обмена проверен в целевом терминале.
Итог
Byobu снижает порог входа в tmux: статусная строка, F-клавиши и готовые настройки появляются сразу после установки, а под капотом остаётся полноценный мультиплексор. Для повседневной работы достаточно F2, F3, F4, F6 и F7, для порядка — отдельных сессий под проекты. Настройки храните в ~/.byobu, не трогайте системные файлы, и обновления пакета не снесут ваши привязки. Если возможностей обёртки не хватает, всегда можно перейти на чистый tmux, сохранив те же сессии.