Steve Park (DevST)

tmux 세션 복구 가이드

Steve Park (DevST)2

tmux 세션 복구 가이드

detach된 세션에 다시 붙거나, 서버가 죽어 사라진 세션까지 되살리는 방법을 상황별로 정리한다.

1. 세션이 살아있는 경우 (detach만 된 상태)

가장 흔한 경우다. 터미널을 닫거나 SSH 연결이 끊겨도, tmux 서버가 살아있으면 세션은 그대로 남는다.

bash
1tmux ls              # 살아있는 세션 목록 확인
2tmux attach          # 세션이 하나면 바로 붙기
3tmux attach -t 0     # 이름/번호로 특정 세션에 붙기
4tmux a               # attach 축약형

다른 곳에서 이미 붙어있는 세션을 가져오려면 기존 클라이언트를 떼어내면서 붙는다.

bash
1tmux attach -d -t 0  # 기존 클라이언트는 detach 시키고 내가 붙기

2. 세션 목록이 안 보이는 경우

tmux ls 실행 시 no server running on ... 이 뜨면 tmux 서버 자체가 죽은 것이다. 서버가 죽으면 세션도 함께 사라지므로 기본 tmux만으로는 복구할 수 없다.

3. 서버 재부팅·종료 후에도 복구하고 싶다면

미리 플러그인을 설치해 두어야 가능하다. 서버가 죽어도 세션 레이아웃과 창을 되살릴 수 있다.

  • tmux-resurrect — 수동 저장/복구
    • 저장: prefix + Ctrl-s
    • 복구: prefix + Ctrl-r
  • tmux-continuum — 자동 저장 (resurrect 기반, 주기적으로 자동 스냅샷)

요약

상황확인해결
detach만 된 상태tmux ls 에 세션 보임tmux attach -t <name>
다른 곳에서 붙어있음세션은 있지만 attachedtmux attach -d -t <name>
서버가 죽음no server running기본 tmux로는 복구 불가
재부팅 후 복구사전 준비 필요resurrect / continuum 플러그인

Comments

Sign in to leave a comment.

Sign in