메뉴 건너뛰기

XEDITION

study

https://dreamlog.tistory.com/470


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] 내용이 나타났다 몇 초 후 사라진다.



 


 

번호 제목 글쓴이 날짜 조회 수
64 [아두이노] ArduCAM Mini Cameras Tutorial proin 2019.06.14 0
63 [아두이노] DHT11 + PHPoc proin 2019.06.11 3
62 Turning on an LED with your Raspberry Pi's GPIO Pins proin 2019.05.13 0
61 Smart Raspberry Pi CPU fan proin 2019.05.13 0
60 [PHP기초] 데이터 집합 - 배열다루기 proin 2019.04.29 0
» build 중 서버와 연결이 끊어지거나 컴퓨터를 끄고 퇴근해야 한다면? proin 2019.04.29 1
58 Linux 기본명령어 screen proin 2019.04.29 0
57 동기가사 검색 프로그램 GetLyrics2 v1.0.1.0 file proin 2019.04.28 1
56 리눅스 스왑 proin 2019.04.27 12
55 [C#] MySQL 데이터 저장시 한글이 깨질 때 proin 2019.02.27 0
54 [C#] [c#.NET]초간단 Mysql DB와 C# 연동 및 값 추가 하기(mysql테이블만들기) proin 2019.02.27 0
53 [Excel] (VBA) 피벗 테이블 (Pivot table) proin 2019.02.21 0
52 [Excel] VBA 실행 속도 빠르게 하기 proin 2019.02.21 0
51 [Excel] 엑셀 VBA IF 지시 구문 사용하는 방법, IF … ELSEIF … ELSE … ENDIF proin 2019.02.21 0
50 [Excel] 엑셀(Excel) VBA - 특정 조건의 데이터를 삭제하고자 할 때 proin 2019.02.21 0
49 Shell Script( 쉘 스크립트 ) if 문 사용법, 조건식 proin 2019.02.14 0
48 bash 스크립트 && - 한 자리 숫자 변수에 0을 더함 proin 2019.02.14 0
47 리눅스 tar.gz와 압축/해제 명령어 proin 2019.02.14 2
46 PHP MySQL 레코드 가져오기 (mysqli_fetch_array) proin 2019.01.11 0
45 [PHP] 26. 파일 생성/쓰기(File Create/Write) - PHP 강좌, PHP5 proin 2019.01.11 1
위로