Tmux의 핵심은 작업을 끊지 않고 다시 이어붙일 수 있다는 점입니다. 이번 글에서는 project-a를 개발 서버 세션으로, project-b를 메모/운영 세션으로 두고 실제 흐름처럼 연습합니다.
이 글에서 할 것
- 여러 세션 만들고 관리하기
- 윈도우 추가하고 전환하기
- 세션 분리/재접속 하기
- 실행 중인 작업이 세션 전환 후에도 유지되는지 확인하기
준비물
실습 1: 여러 세션 만들기
프로젝트 A 세션 생성
아래 터미널에서 세션을 생성하고, 세션 분리(detach)까지 확인해 보세요.
Ready. Press Replay to run the scripted session.
분리: Ctrl+b 누른 후 d → 세션에서 분리
설명:
project-a - 개발 서버를 띄운 세션 이름
0:api* - 현재 윈도우 이름이 api이고 선택된 상태
- 분리 후에도 세션은 백그라운드에서 계속 실행됨
프로젝트 B 세션
Ready. Press Replay to run the scripted session.
project-b는 메모나 운영 작업처럼 잠깐 보고 나와도 되는 세션으로 두면 편합니다.
세션 목록 확인
Ready. Press Replay to run the scripted session.
설명:
project-a: 1 windows - 현재는 기본 윈도우 하나만 있는 상태
project-b: 1 windows - project-b 세션에 1개 윈도우
(created ...) - 세션 생성 시간
실습 2: 세션 전환
특정 세션 접속
tmux attach -t project-a
tmux attach -t project-b
Tmux 내에서 세션 전환
아래 예시는 project-b에서 작업하다가 Ctrl+b, s로 세션 목록을 열고 다시 project-a로 돌아가는 흐름입니다.
Ready. Press Replay to run the scripted session.
- 방향키로 세션 이동
Enter로 선택
- 방금 전 개발 서버가 그대로 살아 있다는 점이 핵심
실습 3: 윈도우 관리
새 윈도우 만들기
project-a 세션에 접속 후 새 윈도우를 생성합니다.
Ready. Press Replay to run the scripted session.
화면 변화:
- 상태줄이
0:api* -> 0:api 1:logs*로 변경
0:api - 개발 서버 윈도우
1:logs* - 로그 전용 윈도우가 새로 열리고 선택됨
윈도우 전환
다음 윈도우:
Ctrl+b n
이전 윈도우:
Ctrl+b p
특정 윈도우:
Ctrl+b 0 # 0번 윈도우
Ctrl+b 1 # 1번 윈도우
윈도우 이름 바꾸기
Ready. Press Replay to run the scripted session.
화면 변화:
(rename-window) 프롬프트가 열림
- 새 이름
logs 입력
- 상태줄이
0:api 1:bash* -> 0:api 1:logs*로 변경
윈도우 목록 보기
Ctrl+b w
화면:
(0) 0: api
(1) 1: logs*
윈도우 닫기
방법 1:
Ctrl+b &
확인 메시지:
Kill window logs? (y/n)
y 입력
방법 2:
exit
실습 4: 세션 완전 종료
특정 세션 종료
tmux kill-session -t project-b
모든 세션 종료
tmux kill-server
핵심 단축키 정리
| 단축키 |
설명 |
Ctrl+b s |
세션 선택 화면 |
Ctrl+b c |
새 윈도우 생성 |
Ctrl+b n |
다음 윈도우 |
Ctrl+b p |
이전 윈도우 |
Ctrl+b 0-9 |
번호로 윈도우 이동 |
Ctrl+b , |
윈도우 이름 변경 |
Ctrl+b w |
윈도우 목록 |
Ctrl+b & |
윈도우 닫기 |
Ctrl+b d |
세션 분리 |
실수 대처
세션이 너무 많아서 헷갈려요
해결:
# 이름을 명확하게 지으세요
tmux new -s frontend-dev
tmux new -s backend-api
tmux new -s database
윈도우 번호가 0부터 시작하는 게 불편해요
해결:
# ~/.tmux.conf에 추가
echo 'set -g base-index 1' >> ~/.tmux.conf
tmux source-file ~/.tmux.conf
실습 완료 체크리스트
다음 편
👉 Tmux 시리즈 4편: 패널 분할과 설정
💬 댓글
이 글에 대한 의견을 남겨주세요