Tmux терминальный менеджер
Tmux терминальный оконный менеджер при использовании дает возможность при обрыве связи с сервером по ssh не терять информацию о выполняемых действиях. Работает в любом дистрибутиве Linux. Одна из любимых утилит администраторов Linux.
Очень быстро при работе с серверами по ssh я стал ощущать два неудобства:
- Из за обрыва связи я терял информацию о ходе выполняемых действий на сервере,
- Для выполнения нескольких действий мне приходилось создавать несколько подключений по ssh.
Мои неудобства решаются с помощью терминального оконного менеджера. Работать с ним оказалось удобно и не вызывает сложностей. Присутствуют некоторые нюансы в работе в отличии от работы в простой консолью.
Вам будет не важно где вы находитесь и с какого компьютера подключаетесь к необходимому серверу так как будете попадать именно туда где закончили свои последние действия. Вы можете сказать название сессии коллеге и он сможет подключится в среду в которой вы работайте.
Содержимое
Установка Tmux
Пакет присутствует во всех популярных системах и устанавливается с помощью команды:
1
2
3
4
5
6
7
8
|
<strong>CentOS 7</strong>
yum install tmux
<strong>Debian</strong>
apt install tmux
<strong>Calculate Linux</strong>
emerge -av tmux
|
При настройке под себя необходимо знать какая версия используется для указания правильных параметров в файле настройки.
Вывод информации об установленной версии:
1
2
3
|
tmux -V
= вывод команды =
tmux 1.8
|
Более подробно про программу можно почитать на Wikipedia или на странице разработки.
Работа с Tmux
Вся работа заключается в создании сессий которые живут до перезагрузки системы.
Оптимальный вариант для работы с Tmux это запускать его на удаленном сервере. Только так вы не будете получать проблем при обрыве связи или вашей миграции от компьютера к компьютеру.
Для более детального изучения можно ознакомится с документацией выполнив команду:
1
|
man tmux
|
Управление сессиями
Вывод информации обо всех возможных командах:
1
|
tmux list-commands
|
Рассмотрим основные команды используемые в работе с Tmux при действиях в консоли сервера.
Создание сессии:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<strong>= Создание сессии Tmux =</strong>
tmux
<strong>= Создание сессии с названием sevo44 =</strong>
tmux new -s sevo44
<strong>= Информация о работающих сессиях Tmux =</strong>
tmux ls
= вывод команды =
0: 1 windows (created Mon Dec 10 10:48:09 2018) [150x33]
sevo44: 1 windows (created Mon Dec 10 10:48:23 2018) [150x33]
<strong>= Переименование сессии 0 в sevo44-2 =</strong>
tmux rename-session -t 0 sevo44-2
|
Подключение к сессии:
1
2
3
4
5
|
<strong>= Подключение к последней сессии =</strong>
tmux a
<strong>= Подключение к сессии использую имя или номер =</strong>
tmux attach -t sevo44
|
Удаление сессии:
1
2
3
4
5
|
<strong>= Удаление сессии по номеру или имени =</strong>
tmux kill-session -t sevo44
<strong>= Удаление все сессий =</strong>
tmux kill-server
|
Работа в сессии
При работе в сессии Tmux существует понятие «Префикс» это то что переводит его в командный режим.
По умолчанию префикс «CTRL + b».
Основные команды:
Функция | Команда |
Вывести справку по всем командам | ? |
Выйти из сесиии | d |
Закрыть сессию | x |
Скролинг | [ для выхода из режима q |
Команды для работы с панелями:
Функция | Команда |
Разделить текущую панель на две, по вертикали | % |
Разделить текущую панель на две, по горизонтали | « |
Переход между панелями | →←↑↓ |
Изменить размеры панели | Alt + →←↑↓ |
Закрыть панель | x (или набрать exit) |
Команды для даботы с закладками (окнами):
Функция | Команда |
Создание закладки | с |
Переименование закладки | , |
Вывод всех закладок для перехода | w |
Закладка вперед | n |
Закладка назад | p |
Удалить закладку | x |
Настройка Tmux под себя
Вся настройка сводится к тому что в своей домашней папке необходимо создать файл .tmux.conf в который добавить необходимые настройки.
При настройках надо знать версию и понимать необходимость изменяемых параметров. Множество советов что вы найдете в интернете попросту не будут у вас работать.
Например параметры для смены префикса с «CTRL + b» на «CTRL + а» для версии 1.8 будут выглядеть так:
1
2
3
4
5
6
|
vim ~/.tmux.conf
= необходимые параметры =
# Смена Contrl+b на +a
set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix
|
Вывод
Мною указаны лишь основные моменты по работе с Tmux которых мне вполне достаточно. Функционал большом и при желании можно настроить многие параметры под свои требования. Некоторые моменты в работе могут показаться неудобными в сравнении с работой в простой консоли, но это мелочи. Иметь возможность работы с сервером не привязываясь с рабочему месту стоит того чтобы иметь маленькие неудобства.