hhkb.dev

BLOG

2025-11-15 / 리눅스명령어 · 08

터미널 멀티플렉서(TMUX)

1. 개요(Overview)

티먹스(TMUX)란?

Tmux는 하나의 터미널 창 안에서 여러 개의 가상 터미널을 열고 관리할 수 있게 해주는 도구다.

브라우저의 탭처럼 생각하면 이해가 쉽다. 한 창 안에서 여러 작업을 동시에 나눠서 다룰 수 있다.

왜 사용하는가?

Tmux를 쓰는 이유는 아래처럼 정리된다.

  1. 세션 유지(Persistence): SSH 연결이 끊겨도 세션 안의 작업은 계속 살아 있다. 다시 붙으면 이어서 볼 수 있다.
  2. 화면 분할(Pane Splitting): 한쪽은 서버 실행, 다른 쪽은 로그 확인처럼 동시에 여러 작업을 나눠서 볼 수 있다.
  3. 헤드리스 환경 대응(Headless Environment): GUI가 없는 서버에서도 다중 작업을 효율적으로 처리할 수 있다.
  4. 협업(Collaboration): 같은 세션을 여러 사용자가 함께 볼 수도 있다.

2. 기본 구성 요소(Components)

Tmux는 3가지 계층 구조로 이루어져 있다.

  1. 세션(Session): 가장 큰 실행 단위다. 하나 이상의 윈도우를 포함한다.
  2. 윈도우(Window): 세션 안의 탭 같은 개념이다.
  3. 페인(Pane): 윈도우를 쪼갠 작은 작업 공간이다.

3. 핵심 단축키(Key Bindings)

Tmux 명령은 보통 프리픽스 키를 먼저 누른 뒤 실행한다.

  • 기본 프리픽스 키: Ctrl + b

세션 관리(Session Management)

  • 새 세션 생성: tmux new -s [세션이름]
    • 예: tmux new -s work
  • 세션 목록 확인: tmux ls
  • 세션 접속(Attach): tmux attach -t [세션이름]
    • 예: tmux attach -t work
  • 세션 분리(Detach): Prefix + d

윈도우 관리(Window Management)

  • 새 윈도우 생성: Prefix + c
  • 윈도우 이름 변경: Prefix + ,
  • 윈도우 이동:
    • Prefix + n: 다음 윈도우
    • Prefix + p: 이전 윈도우
    • Prefix + [숫자]: 해당 번호로 바로 이동

페인 관리(Pane Management)

  • 화면 수직 분할(좌, 우): Prefix + %
  • 화면 수평 분할(위, 아래): Prefix + "
  • 페인 간 이동: Prefix + 방향키
  • 페인 줌: Prefix + z
  • 페인 닫기: exit 또는 Ctrl + d

스크롤 모드(Scroll Mode)

  • 진입: Prefix + [
  • 이동: PageUp, PageDown, 방향키
  • 종료: q

4. 실무 활용 팁(Practical Use Cases)

작업 환경 분할 예시

하나의 윈도우를 다음과 같이 분할하여 업무 효율을 높인다.

  • Pane 1(좌측): 서버, 서비스 실행과 모니터링
  • Pane 2(우측 상단): 코드 편집
  • Pane 3(우측 하단): Git 명령이나 파일 탐색

로깅과 보존(Logging & History)

Tmux는 세션을 오래 유지하면서 작업 흐름을 끊기지 않게 관리하기 좋다.

로그와 작업 히스토리를 같이 보거나, 장시간 작업 세션을 유지할 때 특히 편하다.