
tmux-persist는 컴퓨터를 재시작한 뒤에도 tmux 세션의 창과 패널 배치, 작업 디렉터리, 실행 중이던 프로그램과 패널 내용을 복원하는 플러그인이다. tmux 1.9 이상과 bash가 필요하며 Linux, OSX, Cygwin에서 작동한다고 안내한다.
이 플러그인은 관리가 중단된 tmux-resurrect를 바탕으로 한 유지보수 포크다. 세션은 각각 별도 파일로 저장되며, 자동 저장과 복원은 별도 플러그인 없이 작동한다. 세션에서 분리하거나 연결이 끊기거나 종료될 때 저장하고, 세션을 만들거나 다시 만들 때 복원한다. 자동 동작은 @persist-save-on-exit 'off'와 @persist-auto-restore 'off'로 끌 수 있다.
현재 접속한 세션은 prefix + Ctrl-s로 저장하고 prefix + Ctrl-r로 복원한다. 특정 세션을 지정하려면 scripts/save.sh <session-name> 또는 scripts/restore.sh <session-name>을 실행한다. 저장된 모든 세션을 복원할 때는 scripts/restore.sh all을 사용한다. 자세한 내용은 저장된 환경 복원 안내와 자동 저장·복원 안내를 참고하면 된다.
복원 대상에는 세션·창·패널과 순서, 각 패널의 작업 디렉터리, 패널 배치, 활성 세션·창·패널, 그룹 세션, 패널에서 실행 중인 프로그램과 패널 내용이 포함된다. 패널 내용 저장은 기본으로 켜져 있다. Vim·Neovim 세션 복원은 선택 기능이며, Claude, Codex, Copilot, Cursor Agent, agy, Gemini, opencode의 CLI 세션 복원은 기본으로 켜져 있다. 프로그램 복원은 기본적으로 vi vim nvim emacs man less more tail top htop irssi weechat mutt로 제한된다. 실행 프로그램 복원 안내, 패널 내용 복원 안내, AI 에이전트 CLI 세션 복원 안내에서 설정을 확인할 수 있다.
세션 복원은 이미 존재하는 창이나 패널을 다시 만들지 않는다. 다만 복원할 세션에 패널이 하나뿐이면 그 패널을 덮어쓴다. 기본 설정은 7일이 지난 스냅샷을 삭제하며, 세션의 스냅샷이 모두 만료되면 해당 세션 정보도 제거한다. 스냅샷 보관 기간과 개수, 저장 디렉터리, 파일 형식 등은 옵션 안내에서 조정할 수 있다.
설치는 Tmux Plugin Manager(TPM) 사용을 권장한다. .tmux.conf의 플러그인 목록에 set -g @plugin 'hyoretsu/tmux-persist'를 추가하고 prefix + I를 누르면 설치할 수 있다. 기존 tmux-resurrect 사용자는 설정을 그대로 이어갈 수 있다. 지정하지 않은 @persist-* 옵션은 기존 @resurrect-* 옵션과 디렉터리를 사용하며, 저장된 스냅샷은 처음 불러올 때 새 세션별 형식으로 자동 이전된다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요