[Tmux 시리즈 1편] Tmux가 뭔가요?

한국어 버전

Tmux는 하나의 터미널 창에서 여러 작업을 동시에 할 수 있게 해주는 도구입니다. 여러 창을 띄우지 않고도 화면을 분할하고, 작업을 유지한 채로 세션을 전환할 수 있습니다.

이 글에서 할 것

  • Tmux가 해결하는 문제 이해하기
  • 세션/윈도우/패널 개념 알아보기
  • Tmux가 내 workflow에 맞는지 판단하기

왜 이 도구가 필요한가

현재 상황: 웹 개발 중입니다

필요한 작업:

  1. 코드 편집을 위한 Vim
  2. 웹 서버 실행
  3. Git 상태 확인

Tmux 없이 하는 방법:

  • 터미널 창 1개 - Vim 실행
  • 터미널 창 2개 - 서버 실행
  • 터미널 창 3개 - Git 확인

문제점:

  • 창이 너무 많아져서 관리가 어려움
  • 창 전환할 때마다 Command+Tab
  • 창을 닫으면 작업 내용이 사라짐

Tmux를 사용하면:

  • 하나의 창에서 화면 분할
  • 세션을 종료핵도 작업 유지
  • 세션 간 자유롭게 전환

먼저 한 번 체험핵 보기

Tmux의 3가지 핵심 개념

1. 세션 (Session) 작업 단위입니다. 하나의 프로젝트 = 하나의 세션

예시:

  • "웹사이트 프로젝트" 세션
  • "공부" 세션
  • "서버 관리" 세션

2. 윈도우 (Window) 세션 안의 탭입니다. 브라우저 탭처럼 사용

예시:

  • 웹사이트 세션 안에:
    • Window 1: 코드 편집
    • Window 2: 서버 로그
    • Window 3: Git

3. 패널 (Pane) 화면 분할 단위입니다. 하나의 윈도우를 여러 영역으로 나눔

예시:

┌────────────────────────┬────────────────────────────────────┐
│ username@macbook ~ %   │ username@macbook ~ %               │
│ $ vim app.py           │ $ python server.py                 │
│                        │ Starting server on port 8000...    │
│ 1  import flask        │                                    │
│ 2                      │                                    │
│~                       │                                    │
└────────────────────────┴────────────────────────────────────┘

왼쪽에서는 코드를 편집하고, 오른쪽에서는 서버 로그를 실시간으로 확인할 수 있습니다.

이 도구를 쓰면 달라지는 점

비교: Tmux 없이 vs Tmux 사용

작업 Tmux 없이 Tmux 사용
화면 분할 불가능 Ctrl+b " 또는 %
세션 유지 창 닫으면 끝 Detach 후 재접속 가능
세션 전환 Command+Tab Ctrl+b s
작업 단위 관리 창 단위 프로젝트 단위

예시 상황:

Tmux 없이:

1. iTerm2 창 1개: Vim으로 코드 편집
2. iTerm2 창 2개: npm start로 서버 실행  
3. iTerm2 창 3개: git log 확인
→ Command+Tab으로 창 왔다갔다
→ 창 하나 닫으면 그 작업은 끝

Tmux 사용:

하나의 iTerm2 창:
- 세션: "myproject"
  - 윈도우 1: 코드 편집 (Vim)
  - 윈도우 2: 서버 로그 (패널 분할로 좌우 나눠서 보기)
  - 윈도우 3: Git 작업
→ Ctrl+b + 숫자로 윈도우 전환
→ 창을 닫아도 세션은 유지됨 (나중에 재접속 가능)

이런 사람에게 특히 추천

  • 여러 작업을 동시에 하고 싶은 개발자
  • 터미널 창 여러 개 관리가 어려운 사람
  • 화면을 분할해서 효율적으로 작업하고 싶은 사람
  • SSH로 서버에 접속해서 장시간 작업하는 사람
  • 창을 닫아도 작업을 유지하고 싶은 사람

한 번에 정리

상황 Tmux 없이 Tmux 사용
코드 + 서버 로그 동시 보기 창 2개 필요 한 화면에서 패널 분할
작업 중 창을 닫음 작업 끝 Detach로 작업 유지
프로젝트 전환 창 모두 정리 세션 전환으로 즉시 이동
서버 SSH 작업 연결 끊기면 작업 끝 세션 유지되어 복귀 가능

다음 편 안내

Tmux의 개념을 이해하셨다면, 이제 직접 설치하고 첫 세션을 만들어 봅시다.

Tmux 시리즈 2편: 설치하고 첫 세션 만들기에서는 Homebrew로 Tmux를 설치하고, 첫 세션을 만들고, 기본 단축키를 실습합니다.


실습 완료 체크리스트

  • Tmux가 필요한 상황 이해
  • 세션/윈도우/패널 개념 파악
  • 다음 편에서 실제 설치 예정

💬 댓글

이 글에 대한 의견을 남겨주세요