Gaegul's devlog

[Linux] screen / tmux 본문

Linux & Docker

[Linux] screen / tmux

부지런깨꾹이 2021. 8. 6. 17:58
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