Утилиты Screen и Tmux — шпаргалка

Шпаргалка по Screen и Tmux от сисадмина. Практические примеры, команды для эффективной работы в терминале. Сохраните сессии, сберегите нервы

Диагноз. Если вы хоть раз теряли SSH-сессию во время деплоя, обновления сервера или сборки проекта — вы знаете эту боль. Обрыв интернета, VPN моргнул, Wi-Fi решил «отдохнуть», и вместе с этим умирает процесс, который шёл 40 минут.

В этой статье — рабочий рецепт из IT-Аптеки: как использовать GNU Screen и tmux, чтобы процессы жили своей жизнью, а вы — своей.

После прочтения вы сможете:

  • безопасно запускать долгие операции по SSH
  • возвращаться к сессии после обрыва соединения
  • работать с несколькими окнами и панелями
  • перестать бояться «Connection lost»

Зачем вообще нужны screen и tmux

Обычная SSH-сессия жёстко привязана к вашему соединению. Как только оно падает — процессы получают SIGHUP и завершаются.

Screen и tmux решают эту проблему: они создают виртуальный терминал, который живёт на сервере, а вы лишь подключаетесь и отключаетесь от него.

Это мастхэв для:

  • сисадминов
  • DevOps-инженеров
  • разработчиков
  • владельцев VPS и серверов

GNU Screen — старая школа, которая до сих пор работает

GNU Screen установлен почти везде по умолчанию: старые сервера, минимальные системы, legacy-проекты.

Запуск screen

screen

Вы окажетесь внутри сессии. Всё, что запускается внутри неё, будет жить независимо от SSH.

Основные горячие клавиши Screen

  • Ctrl + a, c — новое окно
  • Ctrl + a, « — список окон
  • Ctrl + a, n / p — следующее / предыдущее окно
  • Ctrl + a, d — отсоединиться

Вернуться к сессии

screen -r

Если сессий несколько:

screen -ls
screen -r ID

Практический кейс: долгий деплой

screen -S deploy
./deploy.sh

Нажимаете Ctrl + a, d — и спокойно закрываете ноутбук.


tmux — современный инструмент для продакшена

tmux — это screen на стероидах: панели, скрипты, автоматизация, совместная работа.

Запуск tmux

tmux

По умолчанию префикс — Ctrl + b.

Базовые команды tmux

  • Ctrl + b, c — новое окно
  • Ctrl + b, « — горизонтальное разделение
  • Ctrl + b, % — вертикальное разделение
  • Ctrl + b, d — отсоединиться

Вернуться к сессии

tmux attach

Именованные сессии

tmux new -s monitor
tmux attach -t monitor

Реальные сценарии, где tmux спасает прод

Мониторинг логов и ресурсов

tmux new -s logs
tail -f /var/log/nginx/access.log

Разделяем экран:

Ctrl+b "
tail -f /var/log/nginx/error.log

Добавляем мониторинг:

Ctrl+b %
htop

Сборка или компиляция

tmux new -s build
make -j8

Сессия продолжит работу даже если интернет пропадёт.


Screen или tmux: что выбрать

Критерий Screen tmux
Доступность Почти везде Нужно ставить
Панели Ограниченно Полноценные
Автоматизация Минимум Максимум

Рекомендация:

  • Screen — для быстрых задач и старых серверов
  • tmux — для постоянной работы и продакшена

Типичные ошибки новичков

  • Запуск важных задач без screen/tmux
  • Отсутствие имён у сессий
  • Путаница в горячих клавишах

Правило: если команда выполняется дольше 30 секунд — запускай её в tmux.


Заключение — прогноз для вашей нервной системы

Screen и tmux — это не «ещё одна утилита», а страховка вашего времени.

Один раз освоили — и больше никогда:

  • не теряете процессы
  • не переделываете работу
  • не материтесь из-за обрыва SSH

Назначение принято. Лечение эффективно. Побочных эффектов не обнаружено.

Если статья была полезна — сохраните, поделитесь или напишите в комментариях. В следующих рецептах разберём автоматизацию через tmux + скрипты.

Поделитесь:

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх