proxmox CT에서 세션을 유지하고 싶은데, 웹이든 터미널이든 CT 접속 후 종료를 하면 기존 세션에서 동작시키던 내용이 종료되는 경우가 발생한다. jar 실행 후 로그 실시간으로 보고 있는데 갑자기 세션 끊긴 경우가 발생해서 다시 접속해 보니 기존 쌓았던 로그 날라가고 아오. 이래저래 찾아보니 좋은게 있더라. 이름하여 tmux
tmux란?
tmux는 터미널 다중 세션 관리자로, 하나의 터미널에서 여러 개의 세션을 동시에 실행시키고 관리할 수 있도록 해준다. 특히 리눅스 서버나 Proxmox CT(Container) 환경에서 작업 중 연결이 끊기더라도 세션을 유지할 수 있어 유용하다.
- 원격 서버 접속 중 세션 유지를 원할 때
- 여러 작업을 동시에 모니터링하거나 수행해야 할 때
- CLI 환경에서 생산성을 극대화하고 싶을 때
- 서버 작업 자동화나 로그 감시하고 싶을 때
설치는?
간단하게 다음 명령어로
# 설치
$ apt install tmux
# 설치 확인
$ tmux -V
사용은?
기본적으로 명령어는 tmux 로 시작하는 것이고, tmux에서의 키조합은 기본적으로 ctrl + b 이후 키조합이다.
세션 관리 명령어 요약
명령어 | 설명 |
tmux new -s <name> | 이름으로 새 세션 생성 |
tmux attach -t <name> | 세션에 접속 |
tmux ls | 모든 세션 목록 확인 |
tmux kill-session -t <name> | 특정 세션 종료 |
tmux kill-server | 전체 tmux 종료 |
자주 쓰는 명령어 (Prefix: Ctrl + b)
기능 | 명령어 |
새 창 생성 | Ctrl + b, c |
창 간 이동 | Ctrl + b, 숫자키(예: 1, 2) |
창 이름 변경 | Ctrl + b, , |
창 목록 보기 | Ctrl + b, w |
창 닫기 | Ctrl + b, & 또는 exit |
수평 분할 | Ctrl + b, " |
수직 분할 | Ctrl + b, % |
분할간 창 이동 | Ctrl + b, 방향키 |
분할창 크기 조절 | Ctrl + b, Ctrl + 방향키 |
현재 세션 분리 | Ctrl + b, d |
팁: 설정 파일 .tmux.conf
tmux 세션 만들고 분할한 다음에 분할 창 이동하려면 Ctrl + b, 방향키로 이동해야 하는데 마우스로도 동작 가능하게 할 수 있다.
홈 디레곹리에 ~/.tmux.conf 파일을 만들어 설정을 커스터마이징 할 수 있다.
# prefix를 Ctrl+a로 변경
unbind C-b
set -g prefix C-a
bind C-a send-prefix
# 마우스 지원
set -g mouse on
# 이쁘게 출력되도록 256컬러 지원
set -g default-terminal "screen-256color"
적용은 다음처럼
tmux source-file ~/.tmux.conf
실제 사용하면
이미지처럼 세션 만들고 창 나눠서 작업을 하면 중간에 네트워크 문제로 세션 끊겨도 다시 들어가도 기존 데이터가 남아있어 사용하기 좋다. 거기다 분할창을 이용하니 터미널 2, 3개 띄울 필요도 없고. 명령어가 조금 헷갈리는데 익숙해지면 크게 문제 없을듯 하다.
'이것저것' 카테고리의 다른 글
[모니터링] blackbox 기본 ipv4 사용하기 (0) | 2025.04.18 |
---|---|
[모니터링] Prometheus + Blackbox Exporter로 API 상태 모니터링 및 슬랙 알림 구축하기 (0) | 2025.04.16 |
[VSCode] VSCode + Remote - SSH (원격서버 파일(.log) 새로고침) (0) | 2024.10.14 |
[docker/docker compose] 리눅스 CLI를 통한 설치 (1) | 2024.09.26 |
[C#] Mac에서 VS Code로 문법 공부하기 (1) | 2023.12.31 |