Tmux Reference
tmux 명령어/단축키 레퍼런스
Tmux Reference 소개
Tmux 레퍼런스는 하나의 창에서 여러 터미널 세션을 관리할 수 있는 터미널 멀티플렉서 tmux의 검색 가능한 치트 시트입니다. tmux 객체의 완전한 계층 구조를 다룹니다: SSH 연결이 끊겨도 유지되는 세션, 세션 내의 탭 역할을 하는 창, 창을 여러 터미널 뷰로 분할하는 패인 -- 모두 Ctrl+b 프리픽스 키로 제어합니다.
이 레퍼런스는 세션, 창, 패인, 키바인딩, 복사 모드의 5개 카테고리에 걸쳐 50개 이상의 키 바인딩과 명령어를 체계적으로 정리합니다. 세션 섹션은 tmux new -s로 이름 지정 세션 생성, tmux ls로 목록 확인, 접속과 분리, 세션 간 이동을 다룹니다. 창 섹션은 생성, 이름 변경, 번호나 이름으로 전환, 창 닫기를 포함합니다. 패인 섹션은 수직/수평 분할, 방향 탐색, 크기 조절, 전체 화면 토글, 레이아웃 재배치를 상세히 설명합니다.
기본 탐색 외에도 Vi 스타일 이동 키로 터미널 출력을 스크롤하는 복사 모드, tmux 붙여넣기 버퍼를 이용한 텍스트 선택과 복사, 프리픽스 키를 Ctrl+a로 변경하기, 마우스 지원 활성화, 서버 재시작 없이 설정 다시 로드하기 등 핵심적인 tmux.conf 커스터마이징을 다룹니다. 이는 숙련된 개발자들이 효율적인 터미널 워크플로우 관리를 위해 매일 사용하는 명령어와 단축키입니다.
주요 기능
- 세션 관리: 이름 지정 세션 생성, 목록 확인, 접속, 분리, 이름 변경, 종료, 세션 간 전환
- 창 작업: 생성, 이름 변경, 번호(0-9)로 전환, 다음/이전 탐색, 이름으로 찾기, 창 닫기
- 패인 분할과 탐색: 수직(%)과 수평(") 분할, 방향키 이동, 크기 조절 컨트롤
- 패인 조작: 전체 화면 토글(z), 패인을 창으로 분리(!), 위치 교환({/}), 레이아웃 순환(Space)
- Vi 스타일 탐색의 복사 모드: 출력 스크롤, 앞뒤 검색, 텍스트 선택, 버퍼에서 붙여넣기
- tmux.conf 커스터마이징: 프리픽스 키 재매핑, 마우스 지원, source-file로 라이브 설정 리로드
- detach(d)와 reattach(tmux attach -t)를 통한 SSH 연결 끊김 시 세션 유지
- 모든 세션, 창, 패인 작업에 대한 Ctrl+b 프리픽스 기반 전체 키 바인딩 레퍼런스
자주 묻는 질문
tmux 프리픽스 키란 무엇이고 어떻게 사용하나요?
기본 프리픽스 키는 Ctrl+b입니다. 먼저 Ctrl+b를 누르고 손을 뗀 다음 명령 키를 누릅니다. 예를 들어 Ctrl+b c는 새 창을 생성하고, Ctrl+b %는 수직 분할, Ctrl+b d는 세션에서 분리합니다. ~/.tmux.conf에 set -g prefix C-a를 추가하면 프리픽스를 Ctrl+a로 변경할 수 있으며, 홈 행에 더 가깝기 때문에 많은 사용자가 선호합니다.
터미널을 여러 패인으로 어떻게 분할하나요?
Ctrl+b %로 수직 분할(왼쪽/오른쪽), Ctrl+b "로 수평 분할(위/아래)합니다. Ctrl+b 후 화살표 키로 패인 간 이동하거나 Ctrl+b o로 순환할 수 있습니다. Ctrl+b Ctrl+화살표로 크기를 조절합니다. Ctrl+b z를 누르면 패인을 전체 화면으로 전환했다가 되돌릴 수 있어, 일시적으로 한 패인에 집중할 때 유용합니다.
SSH 연결이 끊겨도 세션은 어떻게 유지되나요?
tmux 세션에서 분리(Ctrl+b d)하거나 SSH 연결이 끊어져도 세션은 서버에서 계속 실행됩니다. 실행 중인 프로세스, 터미널 출력, 패인 레이아웃이 모두 보존됩니다. SSH로 다시 연결한 후 tmux attach -t <세션이름>을 실행하면 중단된 지점에서 정확히 재개할 수 있습니다. 이것이 원격 서버에서 장시간 실행되는 프로세스에 tmux가 필수적인 이유입니다.
tmux에서 터미널 출력의 텍스트를 어떻게 복사하나요?
Ctrl+b [를 눌러 복사 모드에 진입합니다. Vi 키(h/j/k/l)나 화살표 키로 이동합니다. Space를 눌러 선택을 시작하고, 이동하여 영역을 확장한 다음, Enter를 눌러 복사하고 복사 모드를 종료합니다. Ctrl+b ]로 붙여넣습니다. 검색은 /로 앞으로, ?로 뒤로 스크롤백 버퍼 내에서 검색할 수 있으며, g로 맨 위, G로 맨 아래로 이동합니다.
여러 tmux 세션을 어떻게 관리하나요?
tmux new -s <이름>으로 이름 지정 세션을 생성합니다. tmux ls로 모든 세션을 목록으로 확인합니다. Ctrl+b s로 대화형 세션 목록을 표시하여 전환하거나, Ctrl+b (와 Ctrl+b )로 이전/다음 세션으로 이동합니다. tmux kill-session -t <이름>으로 특정 세션을 종료하고, tmux kill-server로 모든 세션을 한 번에 종료할 수 있습니다.
설정 파일로 tmux를 어떻게 커스터마이징하나요?
~/.tmux.conf를 생성하거나 편집합니다. 일반적인 커스터마이징으로는 set -g prefix C-a로 프리픽스 키 변경, set -g mouse on으로 마우스 지원 활성화(패인 선택과 크기 조절용), 커스텀 단축키용 bind 키 설정 등이 있습니다. 편집 후 tmux source-file ~/.tmux.conf로 설정을 다시 로드하면 tmux를 재시작하거나 세션을 잃지 않아도 됩니다.
창과 패인의 차이점은 무엇인가요?
창은 탭과 같아서 각 창이 전체 터미널 화면을 차지하며 Ctrl+b n(다음), Ctrl+b p(이전), Ctrl+b <번호>로 전환합니다. 패인은 창 내부의 분할 영역으로, 분할하여 생성합니다. 여러 패인을 나란히 또는 겹쳐서 동시에 볼 수 있습니다. 필요할 때 Ctrl+b !로 패인을 독립된 창으로 분리할 수 있습니다.
tmux에서 패인 크기를 어떻게 조절하나요?
Ctrl+b를 누른 상태에서 Ctrl+화살표 키(위/아래/왼쪽/오른쪽)를 눌러 해당 방향으로 활성 패인의 크기를 조절합니다. 또는 Ctrl+b Space를 눌러 미리 설정된 레이아웃(even-horizontal, even-vertical, main-horizontal, main-vertical, tiled)을 순환할 수 있습니다. set -g mouse on으로 마우스 지원이 활성화되어 있으면 패인 경계를 마우스로 드래그하여 대화형으로 크기를 조절할 수도 있습니다.