Skip to content
TUWLAB.com
TUW
조회 수 1479 댓글 0

Screen은 일종의 가상 터미널로, 터미널을 에뮬레이션 하는 프로그램입니다.
(즉, 터미널에서 실행하는 터미널이라고 생각하면 됩니다.)

'새로 터미널 창 열면 되지 왜 터미널을 에뮬레이션 해야 하지?' 라는 의문을 가질 수도 있겠지만, 만들어져서 공식 배포된 프로그램은 다 이유가 있는 법입니다.

Screen을 사용하면 리눅스 쉘 환경에서 작업을 하다 보면 현재 보고 있는 화면을 다른곳에 그대로 가져가서 작업하고 싶은 경우에 요긴하게 사용할 수 있습니다.

예를 들어, 회사에서 시간이 오래 걸리는 컴파일 작업을 걸어놓고 잠시 자리를 비웠는데, 원격에서 이게 잘 되고 있는지 확인해야 할 경우가 있을 수 있는데, 이러한 특수한 경우에 Screen 프로그램을 요긴하게 사용할 수 있습니다.


Screen 설치하기

sudo apt-get install screen

별도 설정을 하지 않아도 공식 Repository로부터 설치가 가능합니다.


새로운 세션 시작하기

screen -S {세션 이름}

세션 이름은 한번에 봐도 알아보기 쉬운 것으로 정하도록 합니다. 나중에 세션 목록을 보고 '이게 뭐지?' 라는 의문이 드는 상황을 방지하려면 말이죠.

이 명령을 치면 화면이 지워지면서 자신이 쓰던 쉘과 같은 터미널이 나타날텐데, 여기서 혼동하면 안됩니다. 이 명령을 쳐서 나타난 화면은 자신이 본래 접속했던 쉘이 아니라, screen 프로그램을 통해 에뮬레이션 된 쉘(Screen Shell)입니다.

이제 여기에서 필요한 작업을 시작하면 됩니다. 모양이 같으니 본래 쉘과 역할도 같으며, 모든 명령을 똑같이 사용할 수 있습니다. 차이점이 있다면, [Ctrl]+[a]로 시작되는 Screen 프로그램의 단축키를 사용할 수 있다.. 정도?


현재 세션에서 이탈하기 (세션 저장)

screen -d

-d 옵션을 주면 현재 세션으로부터 터미널을 이탈시킵니다. 즉, 세션이 저장되어 나중에 다시 해당 터미널로 접속할 수 있는 상태로 만듭니다.

이 명령을 치면 작업하던 화면이 사라지고, 또다시 쉘이 나타날 것입니다. 현재 보고 있는 화면은 Screen 프로그램이 아니라, 본래 접속했던 바로 그 터미널입니다.

혹, 현재 작업을 수행하는 중이라 쉘이 반환되지 않은 경우 [Ctrl]+[a],[d] 단축키를 사용하여 세션에서 이탈할 수 있습니다. Screen 프로그램을 사용하는 대부분의 경우가 이러한 경우이므로, 이 단축키는 잘 알아두어야 합니다.


세션에 다시 접속하기

screen -R {세션 이름}

-R 옵션으로 이탈해서 저장해 두었던 터미널에 다시 접속합니다. 즉, 다른 곳에서 작업을 하다가 저장해 둔 바로 그 화면으로 다시 돌아가서 작업을 계속할 수 있습니다.

만약 해당 세션에 터미널이 이미 Attach되어 있는 경우 이름(별칭)만 같은 새로운 세션이 생성됩니다. 같은 세션 이름의 터미널에 복수의 Attach를 하려는 경우에는 다음과 같이 -x옵션을 추가로 붙여주면 됩니다.

screen -Rx {세션 이름}

이렇게 해서 동일한 이름의 세션에 복수의 터미널이 Attach되면, 두 터미널은 완전히 똑같이 동작하게 됩니다. 예를 들어, 한 터미널에서 타이핑을 하면 다른 터미널에 똑같이 따라서 표시되는 현상을 볼 수 있습니다.


세션 종료하기

exit

현재 접속해 있는 세션을 종료하려면 단지 Screen Shell 안에서 exit를 입력하면 됩니다. 세션을 종료하면 해당 세션에서 수행되고 있던 프로세스들이 모두 종료됩니다.


세션 목록 확인하기

screen -list


팁: 도움말 보기

Screen Shell 안에서 [Ctrl]+[a],[?] 를 차례로 입력하면 도움말 창을 볼 수 있습니다.


이 외에도, 한 세션 안에 여러 개의 가상 창을 만들어놓고 사용할 수 있는 기능도 있습니다. 자세한 내용은 man 페이지를 참조하세요. 귀찮은 경우, 그냥 저처럼 새 창이 필요할때마다 세션을 새로 파서 사용해도 큰 문제는 없습니다.^^


( 참고: https://www.mattcutts.com/blog/a-quick-tutorial-on-screen )

서비스 선택
이용중인 SNS 버튼을 클릭하여 로그인 해주세요.
SNS 계정을 통해 로그인하면 회원가입 없이 댓글을 남길 수 있습니다.
댓글
?
Powered by SocialXE

List of Articles
번호 분류 제목 글쓴이 최근 수정일 조회 수
48 Linux [Ubuntu] 원격 Shell에서 로그인 사용자 디스플레이에 GUI 프로그램 실행하기 TUW 2016.03.06 1116
47 Linux Root권한 없이 Wireshark 사용하기 file TUW 2016.07.05 839
46 Linux fstab과 sshfs fuse를 활용한 원격 디렉토리 자동 마운트하기 TUW 2016.01.11 3889
45 Linux 한글 입력기 나비(Nabi)에서 한/영 키가 인식되지 않는 경우 file TUW 2015.06.12 730
44 Linux [VirtualBox] 가상머신 Windows 7 에서 Aero 기능 활성화하기 file TUW 2015.05.30 1441
43 Linux [VirtualBox] Windows 7 물리 디스크 부팅 (Raw Disk Booting or Native Booting) - 방법 1 file TUW 2015.10.08 1559
42 Linux [VirtualBox] Windows 7 물리 디스크 부팅 (Raw Disk Booting or Native Booting) - 배경 file TUW 2015.05.30 1551
» Linux [Linux] Screen 터미널 에뮬레이션 프로그램 사용하기 TUW 2015.08.19 1479
40 Linux Intelli Backup: File system 및 Database 백업 자동화 Bash 스크립트 TUW 2014.12.19 2334
39 Linux [Linux] Sudo 명령의 Secure Path TUW 2015.04.24 2353
38 Linux [Linux] fdisk 활용 외: 파티션 생성, 배드블록 검사, 파일시스템 생성 TUW 2015.04.24 4250
37 Linux TCPDump를 활용하여 패킷 모니터링하기 TUW 2014.10.28 3155
36 Linux [ColorGCC] 컴파일 경고 및 오류메시지 컬러로 출력하기 file TUW 2014.04.24 8044
35 Linux Linux 루트 디렉토리 구성 TUW 2015.09.20 10387
34 Linux SSHFS를 활용한 원격 디렉토리 마운트 TUW 2014.04.24 8772
33 Linux Ubuntu에서 Global Menu Bar 해제하기 TUW 2014.04.24 11380
목록
Board Pagination Prev 1 2 3 Next
/ 3

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5