tmux 설치 및 설정 구성
- 작업일: 2026-02-21
- 환경: Ubuntu 24.04.4 LTS / tmux 3.4
- 설정 파일:
~/.tmux.conf - 플러그인 경로:
~/.tmux/plugins/
1. 설치
sudo apt install -y tmux
tmux 3.4-1ubuntu0.1 설치됨.
2. 설정 파일 (~/.tmux.conf)
2.1 Prefix 키
Ctrl-a (primary)와 Ctrl-b (secondary) 둘 다 사용 가능하도록 구성.
set -g prefix C-a
set -g prefix2 C-b
bind C-a send-prefix
bind C-b send-prefix -2
2.2 기본 동작
| 설정 | 값 | 설명 |
|---|---|---|
mouse |
on | pane 클릭, 리사이즈, 스크롤 |
history-limit |
50000 | 스크롤백 버퍼 (기본 2000) |
base-index |
1 | window 번호 1부터 시작 |
pane-base-index |
1 | pane 번호 1부터 시작 |
escape-time |
0 | ESC 지연 제거 (vim 필수) |
renumber-windows |
on | window 닫으면 번호 재정렬 |
default-terminal |
tmux-256color | 256색 + true color 지원 |
2.3 키바인딩
pane 분할 (tmux 기본값 유지)
| 키 | 동작 |
|---|---|
prefix + % |
수직 분할 |
prefix + " |
수평 분할 |
pane 이동 (vim 스타일 추가)
| 키 | 동작 |
|---|---|
prefix + h |
왼쪽 pane |
prefix + j |
아래 pane |
prefix + k |
위 pane |
prefix + l |
오른쪽 pane |
pane 리사이즈
| 키 | 동작 |
|---|---|
prefix + H |
왼쪽으로 5칸 |
prefix + J |
아래로 5칸 |
prefix + K |
위로 5칸 |
prefix + L |
오른쪽으로 5칸 |
-r 플래그로 반복 입력 가능 (prefix 한 번 누르고 H/J/K/L 연타).
기타
| 키 | 동작 |
|---|---|
prefix + r |
설정 파일 리로드 |
복사 모드 (vi 키바인딩)
| 키 | 동작 |
|---|---|
prefix + [ |
복사 모드 진입 |
v |
선택 시작 |
y |
선택 복사 후 복사 모드 종료 |
2.4 상태바
One Dark 테마 기반 색상 구성:
- 좌측: 세션명 (초록)
- 우측: 호스트명 (파랑) + 시각 (노랑)
- 현재 window: 파란 배경 볼드
3. 플러그인
3.1 TPM (Tmux Plugin Manager)
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
.tmux.conf 맨 마지막에 run '~/.tmux/plugins/tpm/tpm' 필수.
TPM 조작 키 (tmux 세션 안에서)
| 키 | 동작 |
|---|---|
prefix + I |
새 플러그인 설치 (.tmux.conf에 추가 후) |
prefix + U |
설치된 플러그인 업데이트 |
prefix + Alt + u |
목록에서 제거된 플러그인 삭제 |
플러그인 추가 방법
.tmux.conf에set -g @plugin 'tmux-plugins/플러그인명'추가- tmux 세션에서
prefix + I입력 - 설치 완료 메시지 확인
3.2 tmux-resurrect — 세션 저장/복구
리부트나 tmux 서버 종료 후에도 세션 레이아웃을 복원할 수 있다.
저장 대상: window 배치, pane 레이아웃, 각 pane의 작업 디렉토리, 실행 중인 프로그램.
| 키 | 동작 |
|---|---|
prefix + Ctrl-s |
현재 상태 저장 |
prefix + Ctrl-r |
마지막 저장 상태 복구 |
저장 파일 위치: ~/.tmux/resurrect/
복구 절차 (리부트 후):
tmux실행 (빈 세션 열림)prefix + Ctrl-r입력- 이전 pane 레이아웃 + 디렉토리 복원됨
3.3 tmux-continuum — 자동 저장
resurrect를 15분 간격으로 자동 실행한다. 수동 저장을 잊어도 최근 상태가 보존됨.
set -g @continuum-save-interval '15'
별도 키 조작 없음. tmux 세션이 살아있는 동안 백그라운드로 동작.
4. 설정 파일 전문
# ============================================
# Prefix: Ctrl-a (primary) + Ctrl-b (secondary)
# ============================================
set -g prefix C-a
set -g prefix2 C-b
bind C-a send-prefix
bind C-b send-prefix -2
# ============================================
# 기본 동작
# ============================================
set -g mouse on
set -g history-limit 50000
set -g base-index 1
setw -g pane-base-index 1
set -sg escape-time 0
set -g renumber-windows on
set -g default-terminal "tmux-256color"
set -ga terminal-overrides ",xterm-256color:Tc"
# ============================================
# 키바인딩
# ============================================
# pane 이동 (vim 스타일)
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
# pane 리사이즈
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
# 설정 리로드
bind r source-file ~/.tmux.conf \; display "Config reloaded!"
# 복사모드 vi 키바인딩
setw -g mode-keys vi
bind -T copy-mode-vi v send -X begin-selection
bind -T copy-mode-vi y send -X copy-selection-and-cancel
# ============================================
# 상태바
# ============================================
set -g status-style "bg=#282c34,fg=#abb2bf"
set -g status-left "#[fg=#98c379,bold] #S "
set -g status-right "#[fg=#61afef]#H #[fg=#e5c07b]%H:%M "
set -g status-left-length 30
setw -g window-status-current-style "fg=#282c34,bg=#61afef,bold"
setw -g window-status-current-format " #I:#W "
setw -g window-status-format " #I:#W "
# ============================================
# Plugins (TPM)
# ============================================
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
# continuum: 15분마다 자동 저장
set -g @continuum-save-interval '15'
# TPM 초기화 (반드시 맨 마지막)
run '~/.tmux/plugins/tpm/tpm'