Tmux (терминальный мультиплексор) позволяет работать с несколькими сессиями в 1 окне. Вместо нескольких окон терминала к серверу — вы можете использовать одно. Позволяет подключаться/отключаться к текущему состоянию сессии. Запущенные программы и процессы продолжают работать. (Можно использовать вместо nohup, dtach).
Например, на работе правим файлы в Vim. Окно терминала с открытыми файлами, процессами. Отключаемся от сессии. Далее подключаемся к этой сессии из дома и получаем те же окна с открытыми файлами в Vim, процессами и т.д. Можно продолжить работу с того же момента, на котором остановились. Также удобно при разрыве связи. Дополнительно можно работать совместно с другими в терминале, если подключены к одной сессии. Каждый видит, что делает другой.
1. Установка
CentOS (нужен подключенный репо EPEL)
# yum install tmux
Fedora
# dnf install tmux
Ubuntu/Debian
# apt-get install tmux
2. Конфигурационные файлы
(пользователя, системный):
~/.tmux.conf
/etc/tmux.conf
С версии 2.1 для включения режима мыши (скролл, изменение размера панели, выбор панели и др.) нужно добавить в tmux.conf:
set -g mouse on
До версии 2.1
set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on
set -g mode-mouse on
3. Работа с Tmux
Старт
# tmux //без параметров будет создана сессия 0
# tmux new -s session1 //новая сессия session1. Название отображается снизу-слева в квадратных скобках в статус строке. Далее идет перечисление окон. Текущее окно помечается звездочкой.
Префикс (с него начинаются команды)
<C-b> (CTRL + b)
Новое окно (нажать CTRL+b, затем нажать с)
<C-b c>
Список окон
<C-b w> // переключиться курсором вверх-вниз
Переключение
<C-b n> // следующее окно
<C-b p> // предыдущее окно
<C-b 0> // переключиться на номер окна
Окна можно делить на панели (Panes)
Как в тайловых (мозаичных) оконных менеджерах.
Деление окна горизонтально
<C-b ">
либо команда
# tmux split-window -h
Деление окна вертикально
<C-b %>
либо команда
# tmux split-window -v
Переход между панелей
<C-b стрелки курсора> // либо режим мыши
Изменение размеров панелей
<C-b c-стрелки> // либо режим мыши
Закрытие окон
<C-b x> // нужно подтвердить y
либо
# exit
Отключение от сессии
<C-b d>
либо
# tmux detach
Список сессий
# tmux ls
Подключиться к работающей сессии
# tmux attach //подключение к сессии, либо к единственной, либо последней созданной
# tmux attach -t session1 // подключение к сессии session1
Выбрать сессию
<C-b s>
Завершение сессии
# tmux kill-session -t session1
Завершить все сессии
# tmux kill-server
Список поддерживаемых комманд
# tmux list-commands
Дополнительная информация
# man tmux
Источник:
https://habr.com/ru/articles/327630/
Установка плагинов tmux-resurrect и tmux-continuum через менеджер плагинов Tmux (tpm) проще, чем установка вручную. Вот как это сделать:
- Установите менеджер плагинов Tmux - tpm (Tmux Plugin Manager), если он еще не установлен. Для этого выполните следующую команду:
$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
- Добавьте следующие строки в файл конфигурации Tmux (~/.tmux.conf), чтобы активировать плагины tmux-resurrect и tmux-continuum:
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
- Запустите Tmux и выполните следующую команду для загрузки и установки плагинов:
$ tmux source ~/.tmux.conf $ ~/.tmux/plugins/tpm/scripts/install_plugins.sh
- После установки плагинов вы можете настроить Tmux для автоматического сохранения сессии, как описано в моем предыдущем ответе.
Обратите внимание, что плагин tmux-continuum автоматически устанавливается вместе с tmux-resurrect, поэтому вы можете установить только плагин tmux-resurrect, если вам нужен только автоматический сохранения сессии. Вы можете найти более подробную информацию о установке и использовании этих плагинов в соответствующей документации на страницах проекта на Github.
Другие ссылки:
→ Официальный сайт
→ Другой известный мультиплексор Screen
https://tmux-plugins.github.io/tmux-yank/
0 comments
HoBый комментарий
3 comments
Quisque orci nibh, porta vitae sagittis sit amet, vehicula vel mauris. Aenean at justo dolor. Fusce ac sapien bibendum, scelerisque libero nec
Quisque semper nunc vitae erat pellentesque, ac placerat arcu consectetur
Leave a Reply
Your email address will not be published. Required fields are marked *