Если вы часто работаете в терминале Linux, вы наверняка сталкивались с ситуацией, когда нужно держать открытыми несколько окон одновременно или запустить долгий процесс, который не должен прерваться при закрытии терминала. Решение этих и многих других задач — терминальные мультиплексоры. Два самых популярных инструмента в этой области — tmux и screen. В этом руководстве мы разберём, зачем они нужны, чем отличаются и как начать с ними работать.
Что такое терминальный мультиплексор?
Терминальный мультиплексор — это программа, которая позволяет создавать, управлять и переключаться между несколькими виртуальными терминалами внутри одного окна терминала. По сути, вы получаете оконный менеджер для командной строки.
Основные возможности:
-
Разделение окна на панели: работа в нескольких сессиях одновременно.
-
Отсоединение и повторное подключение: можно запустить процесс, закрыть терминал, а позже вернуться к нему в том же состоянии .
-
Управление сессиями: несколько независимых рабочих пространств.
-
Совместная работа: подключение нескольких пользователей к одной сессии.
Зачем это нужно?
Представьте типичные сценарии:
-
Вы запустили обновление системы, которое займёт час, и хотите закрыть ноутбук, но не прерывать процесс.
-
Вы работаете на сервере по SSH, и соединение может разорваться — мультиплексор сохранит ваше состояние.
-
Вам нужно одновременно смотреть логи, редактировать конфиг и выполнять команды — разделите окно на панели.
-
Вы хотите держать несколько проектов открытыми в разных «рабочих столах» терминала.
И tmux, и screen решают эти задачи. Давайте разберём их по отдельности.
Screen: классический инструмент
GNU Screen — старейший мультиплексор, существующий с 1987 года. Он есть практически в любой системе Linux по умолчанию и отлично подходит для базовых задач.
Установка Screen
Screen обычно предустановлен. Если нет:
Основные команды Screen
Все команды в Screen начинаются с префикса Ctrl+A.
| Действие | Команда |
|---|---|
| Создать новую сессию | screen |
| Создать сессию с именем | screen -S имя_сессии |
| Отсоединиться от сессии | Ctrl+A затем d |
| Показать список сессий | screen -ls |
| Подключиться к сессии | screen -r или screen -r имя_сессии |
| Создать новое окно | Ctrl+A затем c |
| Переключиться между окнами | Ctrl+A затем n (следующее) или p (предыдущее) |
| Разделить окно горизонтально | Ctrl+A затем S |
| Переключиться между панелями | Ctrl+A затем Tab |
| Удалить текущую панель | Ctrl+A затем X |
| Завершить сессию | Ctrl+A затем k (подтвердить) |
Пример рабочего процесса:

Tmux: современная альтернатива
tmux (terminal multiplexer) — более современный мультиплексор, который пришёл на смену screen. Он предлагает более удобное управление, лучшее разделение панелей и богатые возможности настройки.
Установка tmux
Основные команды tmux
По умолчанию префикс в tmux — Ctrl+B.
| Действие | Команда |
|---|---|
| Создать новую сессию | tmux new -s имя_сессии |
| Отсоединиться от сессии | Ctrl+B затем d |
| Показать список сессий | tmux ls |
| Подключиться к сессии | tmux attach -t имя_сессии |
| Создать новое окно | Ctrl+B затем c |
| Переключить окна | Ctrl+B затем n (следующее) или p (предыдущее), или 0-9 по номеру |
| Разделить окно вертикально | Ctrl+B затем % |
| Разделить окно горизонтально | Ctrl+B затем « |
| Переключиться между панелями | Ctrl+B затем стрелка (←↑↓→) |
| Закрыть панель | exit или Ctrl+B затем x (подтвердить) |
| Войти в режим копирования | Ctrl+B затем [ (прокрутка, поиск) |
| Переименовать окно | Ctrl+B затем, |
| Переименовать сессию | Ctrl+B затем $ |
Пример рабочего процесса:

Сравнение tmux и screen
| Критерий | GNU Screen | tmux |
|---|---|---|
| Возраст | 1987 (классика) | 2007 (современный) |
| Разделение панелей | Только горизонтальное | Горизонтальное и вертикальное |
| Управление | Ctrl+A (можно переопределить) | Ctrl+B (удобнее по умолчанию) |
| Скриптинг | Слабое | Мощные возможности через конфиги |
| Совместимость | Есть везде | Требует установки |
| Поддержка мыши | Ограниченная | Отличная (в новых версиях) |
| Цвета и статусная строка | Базовые | Полностью настраиваемая |
Что выбрать?
-
Если вам нужен инструмент, который гарантированно есть на любом сервере, и вы не хотите ничего устанавливать — выбирайте screen.
-
Если вы цените удобство, гибкость и современные возможности (вертикальное разделение, красивая статусная строка) — выбирайте tmux.
Настройка tmux под себя
Tmux очень гибок в настройке. Конфигурационный файл — ~/.tmux.conf. Вот пример базовой настройки:
После создания конфига перезагрузите tmux или выполните tmux source-file ~/.tmux.conf.
Продвинутые возможности
Скриптинг и автоматизация
Можно создавать скрипты, которые запускают готовую конфигурацию tmux с нужными окнами. Например:
Совместная работа
Несколько пользователей могут подключаться к одной tmux-сессии:
Копирование и прокрутка
В tmux нажмите Ctrl+B затем [ — войдёте в режим копирования. Стрелками прокручивайте, Space для начала выделения, Enter для копирования. Вставка — Ctrl+B затем ].
FAQ — Часто задаваемые вопросы
Что лучше: screen или tmux?
Для серверов, где нужна минимальная установка, screen надёжнее. Для личного использования на десктопе tmux удобнее благодаря разделению панелей и гибкой настройке.
Можно ли использовать мышь в tmux?
Да, добавьте set -g mouse on в ~/.tmux.conf. Тогда можно переключать панели, изменять их размер и прокручивать мышью.
Как сохранить сессию после перезагрузки?
По умолчанию сессии не сохраняются. Для автоматического восстановления используйте плагины (например, tmux-continuum) или скрипты, которые запускают сессии при старте системы.
Можно ли в screen разделить окно вертикально?
В классическом screen — только горизонтально. Вертикальное разделение есть в некоторых версиях, но оно работает хуже, чем в tmux.
Как сменить префикс (Ctrl+B) на что-то другое?
Добавьте в ~/.tmux.conf строки:
Что делать, если случайно отсоединился?
Просто подключитесь обратно: tmux attach или screen -r.
Можно ли запускать GUI-приложения в tmux/screen?
Нет, это инструменты для терминала. Для GUI-приложений используйте обычные оконные менеджеры.
Заключение
Терминальные мультиплексоры — это незаменимый инструмент для системных администраторов, разработчиков и всех, кто проводит много времени в командной строке. Они превращают терминал из простого окна в мощную среду для одновременной работы с несколькими задачами, обеспечивают надёжное сохранение состояния и значительно повышают эффективность.
Начните с простого: установите tmux, запомните базовые команды (Ctrl+B c для нового окна, Ctrl+B % для вертикального разделения) — и вы быстро оцените, насколько удобнее станет ваша работа в терминале.
