[[:start|На главную]] > [[:notes:notes|Заметки]] ====== Шпаргалка по использованию tmux ====== {{tag>Заметки tmux}} **tmux** (произносится как «ти-макс») — это терминальный мультиплексор, позволяющий управлять несколькими сессиями и панелями в одном терминальном окне. Основные преимущества: * Возможность разделения окна на несколько панелей (горизонтально и вертикально). * Сохранение состояния сессий при разрыве SSH-соединения: все запущенные процессы продолжают работать. * Возможность совместной работы нескольких пользователей в одной сессии. ===== Установка и базовая настройка ===== Установка из стандартных репозиториев Ubuntu/Debian: sudo apt install tmux После установки рекомендуется включить поддержку мыши. Для этого создайте или отредактируйте файл конфигурации пользователя: nano ~/.tmux.conf Добавьте строку: set -g mouse on > **Примечание:** Настройка в `~/.tmux.conf` применяется только для текущего пользователя и не требует прав root. Изменение `/etc/tmux.conf` затронет всех пользователей системы. После изменения конфигурации перезапустите tmux или перезагрузите конфиг внутри сессии: `Ctrl + b`, затем введите `:source-file ~/.tmux.conf`. ===== Работа с сессиями ===== ==== Создание сессии ==== tmux # Создать сессию без имени (автоматически присвоится номер, например: 0) tmux new -s имя_сессии # Создать именованную сессию Имя или номер текущей сессии отображается в статусной строке внизу слева (в квадратных скобках). ==== Подключение к сессии ==== Просмотреть список активных сессий: tmux ls Пример вывода: 0: 1 windows (created Mon Aug 30 13:02:31 2021) (attached) myproject: 3 windows (created Fri Oct 31 10:15:22 2025) Подключиться к сессии: tmux attach # Подключиться к единственной сессии (если она одна) tmux attach -t имя_сессии # Подключиться к конкретной сессии Универсальная команда для запуска или подключения: tmux attach || tmux new Если активных сессий нет — создаётся новая. ==== Переключение между сессиями ==== Внутри сессии нажмите: **Ctrl + b, s** Откроется интерактивный список сессий — выберите нужную стрелками и нажмите Enter. ==== Отключение и завершение сессий ==== * `Ctrl + b, d` — **отключиться** от сессии (сессия продолжает работать в фоне). * `tmux kill-session -t имя_сессии` — **завершить** указанную сессию. * `tmux kill-server` — завершить **все** сессии и остановить сервер tmux. ===== Управление окнами ===== В tmux окно (window) — это вкладка в пределах одной сессии. Горячие клавиши: * `Ctrl + b, c` — создать новое окно. * `Ctrl + b, n` — перейти к следующему окну. * `Ctrl + b, p` — перейти к предыдущему окну. * `Ctrl + b, [0–9]` — перейти к окну по номеру. * `Ctrl + b, w` — открыть интерактивный список окон. ===== Управление панелями (разделение окон) ===== Окно можно разделить на несколько панелей: * `Ctrl + b, "` — разделить окно **горизонтально**. * `Ctrl + b, %` — разделить окно **вертикально**. Навигация между панелями: * `Ctrl + b, ←/→/↑/↓` — переместиться в соседнюю панель. Закрытие панели: * `Ctrl + b, x` — подтвердить закрытие текущей панели. * Или просто введите `exit` в терминале панели. > **Совет:** Панели можно вкладывать. Например: сначала разделите окно горизонтально (`"`), затем перейдите в нижнюю панель (`↓`) и разделите её вертикально (`%`) — получите три панели. ===== Сводка часто используемых команд ===== ==== Команды в терминале ==== * `tmux new -s имя` — создать именованную сессию. * `tmux ls` — список сессий. * `tmux attach -t имя` — подключиться к сессии. * `tmux kill-session -t имя` — завершить сессию. * `tmux kill-server` — завершить все сессии. ==== Горячие клавиши (префикс: `Ctrl + b`) ==== | Клавиша | Действие | |---------|----------| | `c` | Создать новое окно | | `n` | Следующее окно | | `p` | Предыдущее окно | | `[0–9]` | Перейти к окну по номеру | | `w` | Список окон | | `"` | Горизонтальное разделение | | `%` | Вертикальное разделение | | `←/→/↑/↓` | Переключение между панелями | | `x` | Закрыть текущую панель | | `d` | Отключиться от сессии | | `s` | Выбор сессии из списка | > Префикс по умолчанию — `Ctrl + b`. Его можно изменить в `~/.tmux.conf`, если он вам неудобен. ---- [[:start|На главную]] > [[:notes:notes|Заметки]] ~~DISCUSSION~~