Зачем нужен tmux
Tmux держит терминальную сессию на машине, где он запущен. Если соединение SSH оборвётся, программа внутри сессии обычно продолжит работу. Перезагрузка сервера или завершение процесса tmux прервёт эту работу: это не замена systemd для постоянных служб.
На Arch и CachyOS:
sudo pacman -Syu tmux
Если работаете по SSH, устанавливайте и запускайте tmux на удалённой машине, где должны выполняться задачи.
Создайте именованную сессию
tmux new -s work
Вы окажетесь в обычной оболочке с нижней строкой состояния. Можно запустить редактор или наблюдение за журналом. Перед служебной командой нажмите Ctrl+B, отпустите обе клавиши и затем нажмите нужную клавишу.
Отсоединение и возвращение
Нажмите Ctrl+B, затем D. Сессия останется работать в фоне.
tmux ls
tmux attach -t work
Первая команда показывает список сессий. Вторая возвращает в work. Если после разрыва соединения сессия отсутствует, проверьте, тот ли пользователь и сервер используются. Сообщение об отсутствии сервера tmux означает, что активных сессий нет.
Окна и панели
| Сочетание после Ctrl+B | Действие |
|---|---|
| C | Создать окно |
| N | Следующее окно |
| P | Предыдущее окно |
| % | Разделить на левую и правую панели |
| ” | Разделить на верхнюю и нижнюю панели |
| Стрелка | Перейти в соседнюю панель |
| [ | Режим просмотра истории |
Для выхода из режима истории нажмите Q. Символ % на некоторых раскладках требует Shift. Клавиши C, N, P здесь обозначают сами буквы без Ctrl.
Минимальная конфигурация
Добавьте в ~/.tmux.conf:
set -g mouse on
set -g history-limit 10000
Первая настройка включает работу мышью, вторая увеличивает историю новых панелей. Загрузите файл внутри сессии:
tmux source-file ~/.tmux.conf
Если история содержит секреты, учитывайте, что большой буфер удерживает их дольше. Пароли не передавайте в аргументах команд.
Завершение
Команда exit закрывает оболочку текущей панели. После закрытия последней панели сессия завершится. Перед этим убедитесь, что нужные процессы остановлены и файлы сохранены.
Для постоянной автоматизации: systemd timers.
Документация: tmux Getting Started.