Gaegul's devlog
[Linux] screen / tmux 본문
728x90
반응형
screen 과 tmux, 둘 다 SSH로 리눅스 서버에 접속했을 때 SSH 연결이 끊켜도 백그라운드에서 코드를 돌리고 싶을 때 사용하는 프로그램이다. 다시말해 물리 터미널을 백그라운드에서 동작할 수 있는 가상 터미널로 다중화 해준다고 생각하면 편하다.
특히, 나와 같이 딥러닝 코드를 장시간 돌려야 하는데 SSH 연결이 끊켜도, 물리 터미널이 종료되어도 계속 학습을 시키고 싶을 때 유용하다.
이 둘 다 서버에 설치해서 사용해야 한다.
재택으로 인해 VPN으로 접속해서 작업할 때 세션이 끊켜도 가상 터미널을 사용하면 계속 모델을 학습시킬 수 있으며, 내가 작업하는 터미널을 종료하고도 퇴근할 수 있다!!!!!
Tmux (Terminal Multiplexer)
- session : tmux 실행 단위. 여러개의 window로 구성.
- window : 터미널 화면.
- pane : 하나의 window 내에서 화면 분할.
- status bar : 화면 아래 표시되는 상태 막대.
만약 여러개의 session을 사용한다면, tmux ls해서 목록을 보고, tmux attach -t (session name or number)식으로 해당 session에 접속해서 사용할 수도 있다.
1. 서버에 접속 후 Tmux 설치
# RedHet계열 (CentOS, RedHat 등..)
$ sudo yum install tmux
# Debian계열 (Ubuntu ..)
$ sudo apt-get install tmux
2. Tmux 기본 명령어
가장 많이 사용되는 기본 명령어임으로 알아두면 좋다.
# 새로운 세션 생성
tmux new -s (session_name)
# 세션 종료
exit
# 세션 목록
tmux ls
# 세션 다시 불러오기
tmux attach -t (session_number or session_name)
# 세션 중단하기
(ctrl + b) d
# 특정 세션 강제 종료
tmux kill-session -t session_number
3. Pane 기능
윈도우 창을 분할하는 기능.
Ctrl-b % : 세로로 2개의 팬으로 나눔.
Ctrl-b " : 가로로 2개의 팬으로 나눔.
Ctrl-b q : 팬 번호를 보여줌.
Screen
tmux와 동일한 multiplexer terminal 이다.
1. Screen 설치
# RedHet계열 (CentOS, RedHat 등..)
$ sudo yum install screen
# Debian계열 (Ubuntu ..)
$ sudo apt-get install screen
2. Screen 기본 명령어
# screen 생성
$ screen -S [이름]
# screen 목록 확인하기
$ screen -ls
# screen 다시 들어가기 (detach 상태)
$ screen -r [이름]
# screen 다시 들어가기 (attach 상태)
$ screen -x [이름]
# screen 종료 (세션 유지)
ctrl+a(누르면서) +d
# screen 완전 종료 (세션 나감)
ctrl+a(누르면서) +k
#혹은
exit
3. 추가 기능
# 세로로 화면 분할
ctrl+a(누르면서) |
# 가로로 화면 분할
ctrl+a(누르면서) S
# 분할된 화면으로 넘어가기
ctrl+a(누르면서) Tab
# 새 세션 열기
ctrl+a(누르면서) c
# 스크롤 하기(아래 명령어 후 방향키 입력)
ctrl+a(누르면서) esc
728x90
반응형
'Linux & Docker' 카테고리의 다른 글
[Docker] Docker 기본 명령어 (docker CLI) (0) | 2023.04.11 |
---|---|
[Docker] Docker 란 무엇일까? (0) | 2023.04.06 |
Comments