Steve Park (DevST)

tmux 세션 복구 가이드

Steve Park (DevST)2

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 플러그인

댓글

로그인하면 댓글을 남길 수 있습니다.

로그인