Linux에서 독립적으로 동작하는 가상 터미널을 띄워주는 것을 의미합니다. 즉, 백그라운드로 동작하는 가상 터미널입니다.
스크린에서 명령어를 실행시키고 터미널을 꺼도, 명령어가 백그라운드로 계속 돌아갑니다. 명령어를 실행시킨 뒤 터미널을 종료하고, 나중에 screen 명령을 이용해서 다시 접속하면 해당 터미널 그대로 작업을 이어갈 수 있습니다.
리눅스 설치 시 기본으로 설치되지 않기 때문에 사용하기 위해서는 별도로 설치해 주어야 합니다.
$ sudo apt install screen
실행: screen [스크린이름] - 스크린이름을 지정하지 않으면 임의로 생성함
$ screen
screen 내부 명령어
<Ctrl+a, d> : 현재 스크린으로부터 탈출(Deattach). (스크린은 꺼지지 않고 여전히 동작 중)
<Ctrl+a, c> : 스크린에서 새창 띄우기
<Ctrl+a, 숫자> : 해당 번호의 스크린으로 이동
<Ctrl+a, n> : 다음 창으로 이동 (Ctrl+a, space와 동일)
<Ctrl+a, p> : 이전 창으로 이동 (Ctrl+a, Backspace와 동일)
환경설정
처음 screen을 쓰면, 기본 터미널과 같은 화면이 나오기 때문에 몇번째 스크린인지 알기 어렵습니다. 그래서 홈 디렉터리에. screenrc 파일을 만들고 환경설정을 하면 screen을 보다 쉽게 사용할 수 있습니다.
설정파일(.screenrc) 생성
$ vim ~/.screenrc
screen 설정
ck 5000
vbell off
defscrollback 10000
termcapinfo xterm* ti@:te@
startup_message off
hardstatus on
hardstatus alwayslastline
hardstatus string "%{.bW}%-w%{.rW}%n*%t%{-}%+w %= %c ${USER}@%H"
bindkey -k k1 select 0
bindkey -k k2 select 1
bindkey -k k3 select 2
자주 사용하는 옵션
옵션 | 설명 |
screen -S [스크린 이름] | screen에 이름을 지정하여 진입합니다. |
screen -R [스크린 이름] | screen이 존재한다면 다시 진입(Reattach)하고, screen이 없다면 해당 스크린 이름을 만들어서 진입합니다. |
screen -ls (screen -list) | 현재 존재하는 스크린 리스트를 출력합니다. |
screen -x [스크린 이름] | 실행 중인 스크린에 다시 진입(Reattach)합니다. (-R 옵션은 Single display mode, -x 옵션은 Multi display mode입니다. 즉, -R옵션은 해당 스크린에 여러 명이 들어가도 서로 무슨 명령을 치는지 모르지만, -x 옵션은 해당 스크린에 여러명이 들어가도 마치 한 화면처럼 움직여, 상대방이 무슨 명령어를 치는지까지 다 볼 수 있습니다) |
screen -S [스크린 이름] -X quit | 해당 스크린을 종료합니다(해당 스크린 삭제됨). [스크린이름] 대신 스크린 번호를 써도 됩니다. 혹은 사용하고 있는 스크린에서 모든 창을 exit으로 꺼버려도 해당 스크린은 종료됩니다. |
참고사이트
- [리눅스] screen(스크린) 사용법, screenrc - Coding DNA
'Linux > Linux Shell Command' 카테고리의 다른 글
usermod - 사용자 계정 정보 변경 (0) | 2023.09.11 |
---|---|
du - 리눅스 디스크 사용량 확인 (1) | 2023.09.09 |
부팅 시 프로그램 자동 실행하기 (0) | 2023.08.08 |
watch - 시스템 모니터링 (0) | 2023.06.19 |
zip 압축 (0) | 2023.06.15 |