IT·리눅스/리눅스

tmux 입문 - SSH 연결이 끊겨도 작업 살리는 법

jmineekim 2026. 6. 19. 10:00

서버에서 6시간짜리 백업 스크립트를 돌려놓고 퇴근하려는데 SSH 연결이 갑자기 끊긴 적, 한 번쯤 있으실 거예요. 저는 신입 때 그것 때문에 토요일 새벽에 다시 출근한 적이 있습니다. 결국 사수가 "tmux 한 번 써봐"라고 한 마디 하셔서 정착했는데, 이게 진짜 신세계더라고요. 오늘은 tmux를 처음 쓰는 분도 바로 따라할 수 있게 핵심만 골라서 정리해볼게요.

개념 / 원리

tmux는 터미널 멀티플렉서(Terminal Multiplexer) 입니다. 이름이 어렵지만 풀어쓰면 간단해요.

  • 터미널 세션을 서버 백그라운드에 띄워두고 계속 실행시킨다.
  • SSH가 끊겨도 세션은 살아 있다.
  • 다시 접속해서 tmux attach 한 줄이면 끊겼던 화면으로 그대로 돌아간다.

비유하자면 tmux는 항상 켜져 있는 가상의 모니터입니다. SSH는 그 모니터에 케이블을 꽂는 행위고요. 케이블이 빠져도 모니터는 켜져 있죠.

구조는 세 단계입니다.

세션(Session)
 └─ 윈도우(Window)
     └─ 페인(Pane)
  • 세션: tmux의 가장 큰 단위. 보통 작업 단위로 하나씩 만듭니다.
  • 윈도우: 세션 안의 탭. 브라우저 탭과 비슷한 느낌.
  • 페인: 윈도우를 가로/세로로 쪼갠 영역.

실전 예제

1. 설치

대부분 리눅스에 이미 깔려 있지만 없으면:

# Ubuntu/Debian
sudo apt install tmux

# CentOS/RHEL
sudo yum install tmux

tmux -V

2. 세션 시작과 종료

# 새 세션 시작
tmux

# 이름 지정해서 시작 (추천)
tmux new -s backup

# 세션 밖으로 빠져나오기 (detach, 세션은 살아있음)
# 단축키: Ctrl+b d

# 모든 세션 보기
tmux ls

# 세션에 다시 들어가기
tmux attach -t backup
tmux a -t backup

# 세션 완전히 죽이기
tmux kill-session -t backup

핵심은 Ctrl+b d 입니다. 이걸로 빠져나와야 세션이 살아 있고, 그냥 exit를 치면 세션이 종료됩니다.

3. tmux 기본 키 (Prefix는 Ctrl+b)

tmux의 모든 단축키는 Ctrl+b를 누른 다음 입력합니다. 이걸 prefix라고 합니다.

동작
Ctrl+b d 세션 detach
Ctrl+b c 새 윈도우 만들기
Ctrl+b n 다음 윈도우
Ctrl+b p 이전 윈도우
Ctrl+b 0~9 해당 번호 윈도우로
Ctrl+b , 윈도우 이름 변경
Ctrl+b % 세로 페인 분할
Ctrl+b " 가로 페인 분할
Ctrl+b 방향키 페인 간 이동
Ctrl+b x 현재 페인 닫기
Ctrl+b z 현재 페인 최대화/원복

4. 실전 시나리오 - 장시간 백업 작업

# 1. SSH 접속
ssh user@server

# 2. tmux 세션 시작
tmux new -s nightly-backup

# 3. 백업 스크립트 실행
./backup_db.sh

# 4. 진행 중에 Ctrl+b d 로 빠져나옴
# 5. SSH도 끊어도 됨

# 6. 한참 뒤 다시 접속
ssh user@server
tmux attach -t nightly-backup
# 백업 스크립트가 계속 돌고 있음

5. 페인 분할로 모니터링하며 작업

한 화면에서 tail -f 로그와 작업창을 동시에:

Ctrl+b "      # 가로 분할
Ctrl+b 위방향키  # 위 페인으로 이동
tail -f /var/log/myapp.log
Ctrl+b 아래방향키  # 아래로 이동해서 작업 계속

6. 간단한 설정 파일

~/.tmux.conf에 자주 쓰는 설정:

# 마우스로 페인 선택/리사이즈 가능하게
set -g mouse on

# 윈도우 번호 1부터 시작
set -g base-index 1

# 히스토리 크기 늘리기
set -g history-limit 10000

# 컬러 설정
set -g default-terminal "screen-256color"

수정 후 tmux source-file ~/.tmux.conf 또는 tmux 안에서 Ctrl+b :source-file ~/.tmux.conf.

자주 하는 실수

1. Ctrl+b 안 누르고 바로 단축키 입력

저도 처음엔 c 누르면 새 창 열리는 줄 알았는데, 항상 prefix Ctrl+b 먼저입니다. Ctrl+b는 동시에 누르고, 그 다음 키는 손 떼고 누릅니다.

2. exit으로 세션 종료

세션 안에서 exit를 치면 그 페인이 닫히고, 페인이 다 닫히면 세션도 종료됩니다. 세션을 유지하려면 반드시 Ctrl+b d.

3. 세션 이름 안 정함

tmux ls로 보면 0, 1, 2 같은 번호로만 떠서 어떤 세션이 뭔지 헷갈립니다. 처음부터 tmux new -s 이름으로 시작하는 습관을 들이세요.

4. screen과 헷갈림

오래된 서버엔 screen만 깔려있는 경우도 있는데, prefix가 다릅니다(screen은 Ctrl+a). 둘 다 비슷한 도구지만 tmux 쪽이 활발히 유지보수되고 있어요.

마무리

정리하면 세 줄입니다.

  • tmux는 SSH가 끊겨도 살아 있는 가상 터미널. tmux new -s 이름Ctrl+b d만 기억해도 절반은 익힌 것.
  • 세션 → 윈도우 → 페인 3단 구조, prefix Ctrl+b 누르고 나서 단축키.
  • ~/.tmux.confset -g mouse on 한 줄만 추가해도 삶의 질이 달라진다.
반응형