본문 바로가기

Software

screen

728x90

 

 

만약 터미널(쉘)에서 작업중 열린 세션은 닫아야 하지만 걸어놓은 작업(소스빌드, 모니터링등)을 그대로 하고 싶다면 그때 screen 명령을 사용하여 세션을 닫더라도 작업을 계속 유지하여 수행시킬 수 있다

 

우선 각 리눅스 배포판별로 screen을 설치한다.

#>apt-get install screen or #>yum install screen 등...

 

screen은 기본적으로 세션을 생성하고 해당 세션에서 빠져 나오거나 들어가는 형태로 구성이 된다 때문에 각 세션별 사용자가 들어가기 위해 세션명(별명)을 주어 생성하게 되고 이를 이용하여 해당 세션에서 나온 뒤 다시 찾아 들어 갈 수 있게 된다


1. screen 생성시
#>screen -S <세션명>
또는 그냥
#>screen

위 명령을 수행하게 되면 세션이 리프레쉬 되면서 기존에 사용하던 세션에서 새롭게 생성된 세션으로 이동한다.
 
2. 생성한 screen의 리스트를 확인하고자 할 때

#>screen -list

위 명령시 아래와 같이 현재 생성되어 있는 세션리스트를 보여준다

There is a screen on:
        19993.session1  (12/31/2013 04:18:47 PM)        (Attached)
1 Socket in /var/run/screen/S-root.

여기서 생성시 session1의 세션명으로 생성을 하여 위와 같이 표시된다.

 

3. screen을 사용하여 세션을 생성하여 사용 중 상태 그대로 해당 세션에서 나오고 (detach) 싶을 때
Ctrl + a, d


4. 생성한 세션으로 들어가고 싶을 때
#>screen -r [세션명]

5. 작업 중 새로운 screen 생성
Ctrl + a, c

6. 현재 screen 의 Title 명 변경
Ctrl + a, A

7. 작업 중 다른 screen으로 옮기고 싶을 때
  7.1. 바로 이전에 사용하던 screen
  Ctrl + a, a
 
  7.2. screen 번호와 Title 보고 이동(5 항목과 함께 이용하면 편리하다)
  Ctrl + a, " (화살표 키 이동 후 엔터)
 
  7.3. 번호 창으로 이동
  Ctrl + a, [0-9]
 
  7.4. 다음 screen
  Ctrl + a, n
 
  7.5. 이전 screen
  Ctrl + a, p


8. 세션의 종료

해당 세션으로 #>screen -r [세션명] 을 통해 들어간뒤

#>exit

명령을 통해 해당 세션을 종료하면 됩니다


728x90