리눅스 명령어 · 2 min read · Sep 15, 2025

리눅스 스크린 명령어: 연결이 끊겨도 프로세스를 계속 실행하기

여러분도 아시겠지만, SSH로 서버에 연결되어 소프트웨어(예: 새로운 커널)를 컴파일하거나 시간이 많이 걸리는 다른 작업을 수행하는 중에 갑자기 연결이 끊어지면 미완성 작업을 잃게 됩니다. 이는 매우 성가실 수 있지만, 다행히도 이전 세션에 다시 연결하여 작업을 마칠 수 있도록 해주는 작은 유틸리티인 screen이 있습니다. 이 짧은 튜토리얼에서는 바로 이 목적을 위해 screen을 사용하는 방법을 보여줍니다.

1 스크린 명령어 설치하기

screen 설치는 매우 쉽습니다. Debian에서는 다음을 실행하세요:

apt-get install screen

Ubuntu에서는 sudo와 함께 명령어를 사용하세요:

sudo apt-get install screen

Fedora, CentOS, SuSE 및 Mandriva의 경우에도 yum / yast / urpmi 등을 사용하여 설치할 수 있는 screen 패키지가 있습니다.

Fedora 및 CentOS

yum install screen

2 스크린 명령어 사용하기

screen을 사용하면 현재 SSH 터미널에서 하나 이상의 세션을 생성할 수 있습니다. 다음을 실행하세요:

screen

이 명령어는 현재 SSH 터미널에서 screen 세션 또는 창을 생성합니다(비록 그렇게 보이지는 않지만):

리눅스 스크린 명령어 시작됨

스페이스 또는 리턴을 눌러 명령 프롬프트로 이동하세요:

리눅스 스크린 명령 프롬프트

정상적인 SSH 터미널처럼 보이죠?

이제 screen을 제어하는 데 필요한 가장 중요한 screen 명령어를 설명하겠습니다. 이 명령어는 일반 셸 명령어와 구별하기 위해 CTRL a로 시작합니다.

  • Ctrl a c - 새로운 screen 세션을 생성하여 여러 개의 screen 세션을 동시에 사용할 수 있습니다.
  • Ctrl a n - n 번째 screen 세션으로 전환합니다(여러 개를 사용하는 경우).
  • Ctrl a p - p 번째 이전 screen 세션으로 전환합니다(여러 개를 사용하는 경우).
  • Ctrl a d - screen 세션을 분리합니다(프로세스를 종료하지 않고 계속 실행됩니다).

모든 작업이 완료된 screen 세션을 닫으려면 다음을 입력하세요:

exit

이제 조금 놀아봅시다. 우리의 screen 창에서 다음 명령어를 실행합니다:

top

이렇게 보여야 합니다:

스크린 내에서 실행 중인 top 명령어

이제 다음을 입력하여 또 다른 screen 세션을 생성합니다:

Ctrl a c

새로운 빈 screen 세션이 열리고, 여기서 다음을 실행합니다:

tail -f /var/log/mail.log

메일 로그를 지속적으로 확인하기 위해:

스크린 명령어에서 보여지는 mail.log

이제 다음을 실행하여 두 개의 screen 세션을 탐색할 수 있습니다:

Ctrl a n

또는

Ctrl a p

screen 세션을 분리하고 정상적인 SSH 터미널로 돌아가려면 다음을 입력하세요:

Ctrl a d

정상적인 SSH 터미널로 돌아가면 다음을 실행하여 현재 screen 세션 목록을 가져올 수 있습니다:

screen -ls
There are screens on:  
        2477.pts-0.server1      (Detached)  
        2522.pts-0.server1      (Detached)  
2 Sockets in /var/run/screen/S-root.

이 세션 중 하나에 다시 연결하려면 다음을 실행하세요:

screen -r 2477.pts-0.server1

여기서 2477.pts-0.server1은 screen -ls 출력에서 세션 중 하나의 이름입니다.

screen 세션을 종료하고 마치려면, 그 안의 모든 현재 작업을 완료한 후( top은 q를 입력하여 종료할 수 있고, tail -f /var/log/mail.log는 CTRL c를 입력하여 종료할 수 있습니다) 다음을 입력하세요:

exit

그럼 다른 screen 세션으로 돌아가거나(여러 개를 사용하는 경우) 더 이상 열려 있는 screen 세션이 없으면 정상적인 SSH 터미널로 돌아갑니다.

screen에 대해 더 알고 싶다면 다음을 실행하세요:

man screen

3 내 연결이 끊겼습니다 - 무엇을 할 수 있나요?

이제 screen 세션에서 커널을 컴파일하고 있다고 가정해 보겠습니다. 이는 일반적으로 오랜 시간이 걸리며, 갑자기 연결이 끊어졌습니다. screen 덕분에 작업이 손실되지 않았습니다. 연결이 복구되면 SSH로 시스템에 다시 로그인하고 다음을 실행하세요:

screen -ls

2장에서 설명한 대로. 결과에서 하나의 세션(예: 2477.pts-0.server1)을 선택하고 다시 연결합니다:

screen -r 2477.pts-0.server1

올바른 세션을 선택했다면, 커널이 여전히 컴파일 중일 것입니다(그 사이에 완료되지 않았다면) 그래서 작업을 계속할 수 있습니다.

4 링크

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.