일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 태그를 입력해 주세요.
- 문파문파
- 야구
- NC 다이노스
- python
- 국정원
- 리뷰
- ubuntu 12.04
- 김경문
- 문파문파 공략
- 프로야구
- arm
- 인공지능
- mysql
- 손민한
- Linux
- NC다이노스
- 데이터베이스
- Tizen
- 블로그
- 단통법
- 우분투
- 안드로이드
- 애플
- 뉴스타파
- 타이젠
- 조세피난처
- Git
- 해외직구
- ubuntu
- Today
- Total
꿈꾸는 사람.
[Linux] screen 사용법 본문
build 중 서버와 연결이 끊어지거나 컴퓨터를 끄고 퇴근해야 한다면?
1. screen 개념
|
|
putty와 같은 ssh 도구로 서버에 접속한 일반적인 사용 예. |
서버에 screen 사용하여 접속한 예 |
두 그림의 차이는 서버에 screen을 사용하는지에 달려있다.
즉, 클라이언트인 노트북에서는 차이가 없고 서버에서 screen 사용 여부가 다른 것이다.
screen은 물리적인 터미널을 다중화하여 사용할 수 있는 윈도 매니저이다.
그림처럼 screen 상에 여러 윈도우를 실행하고 각각 다른 작업을 실행할 수 있다.
screen을 두 개 만들고 각 screen에 window를 두 개씩 생성한다.
ssh 연결이 끊어지거나 원격 연결을 종료하여도 screen은 살아 있다.
screen 상에서 실행한 작업도 계속 실행된다.
안드로이드 전체 시스템을 빌드하는 경우 한 시간 가량 걸리는 작업을 수행하고 노트북에서는 연결을 끊고 회의에 참석하여도 되고 전원을 끄고 퇴근하여도 된다.
2. screen 설치
설치 명령
$ sudo apt-get install screen
설치 과정
hyunmu@hyunmu:~$ screen 프로그램 'screen'을(를) 설치하지 않습니다. 다음을 입력해 설치할 수 있습니다: sudo apt-get install screen hyunmu@hyunmu:~$ sudo apt-get install screen [sudo] password for hyunmu: 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 제안하는 패키지: iselect screenie byobu 다음 새 패키지를 설치할 것입니다: screen 0개 업그레이드, 1개 새로 설치, 0개 제거 및 572개 업그레이드 안 함. 628 k바이트 아카이브를 받아야 합니다. 이 작업 후 958 k바이트의 디스크 공간을 더 사용하게 됩니다. 받기:1 http://kr.archive.ubuntu.com/ubuntu/ trusty/main screen i386 4.1.0~20120320gitdb59704-9 [628 kB] 내려받기 628 k바이트, 소요시간 0초 (1,059 k바이트/초) Selecting previously unselected package screen. (데이터베이스 읽는중 ...현재 174689개의 파일과 디렉터리가 설치되어 있습니다.) Preparing to unpack .../screen_4.1.0~20120320gitdb59704-9_i386.deb ... Unpacking screen (4.1.0~20120320gitdb59704-9) ... Processing triggers for man-db (2.6.7.1-1) ... /usr/bin/mandb: can't write to /var/cache/man/2657: 장치에 남은 공간이 없음 Processing triggers for install-info (5.2.0.dfsg.1-2) ... Processing triggers for ureadahead (0.100.0-16) ... ureadahead will be reprofiled on next reboot screen (4.1.0~20120320gitdb59704-9) 설정하는 중입니다 ... update-rc.d: warning: default start runlevel arguments (2 3 4 5) do not match screen-cleanup Default-Start values (S) update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match screen-cleanup Default-Stop values (none) Processing triggers for ureadahead (0.100.0-16) ... hyunmu@hyunmu:~$
3. screen 사용법
screen 만들기.
$ screen -S build1
screen 목록 보기.
$ screen -list
There is a screen on: 3703.build1 (2015년 11월 11일 01시 43분 38초) (Attached) 1 Socket in /var/run/screen/S-hyunmu.
사용 예)
$ screen -S edit
$ screen -list There are screens on: 3827.editor (2015년 11월 11일 01시 56분 31초) (Attached) 3703.build1 (2015년 11월 11일 01시 43분 38초) (Attached) 2 Sockets in /var/run/screen/S-hyunmu.
window 만들기.
Ctrl + a, c
ctrl키를 누르고 a와 c를 차례대로 눌러 준다.
screen 위에 하나의 윈도우를 만들어 준다.
window 종료하기.
$ exit
window를 종료하고 이전 터미널로 돌아 간다.
모든 window를 종료하면 screen도 종료된다.
window 목록 보기.
Ctrl + a, w
window를 두 개 만든 경우 터미널 아래에 [ 0*$bash 1-$ bash] 내용이 나타났다 몇 초 후 사라진다.
window 이동하기.
Ctrl+a a : 바로 전 창으로 Ctrl+a 0 : 0번째 창으로 Ctrl+a 1 : 1번째 창으로 Ctrl+a 9 : 10번째 창으로
Ctrl+a d : screen에서 나오기
screen 재 접속하기.
$ screen -r [session name]
$ screen -x [session name]
연결을 종료 후 다시 SSH 접속할 때 사용하며 screen이 둘 이상이면 session 명을 입력한다.
window를 두 개 만든 경우 터미널 아래에 [ 0*$bash 1-$ bash] 내용이 나타났다 몇 초 후 사라진다.
'IT > Linux' 카테고리의 다른 글
[Linux] 커맨드 라인에서 Ubuntu 18.04 LTS에 크롬 설치 및 실행 (0) | 2020.01.10 |
---|---|
[Cron][Crontab] 리눅스 작업 스케줄러 (0) | 2016.06.29 |
[VIM TIP] E488:Trailing Characters / E488: 끝에 문자가 더 있습니다, ^m 보기 (0) | 2015.09.05 |
[Linux kernel 4.2][Device driver] platform_driver probe 함수 호출 과정. (0) | 2015.09.01 |
[Ubuntu] update 에러 중 GPG public key 오류 해결. (0) | 2015.03.27 |