리눅스 백그라운드(Back Ground)&포그라운드(Fore Ground): 프로세스 제어하기

공정위 광고 문구 Ver 2.0

리눅스의 프로세스는 백그라운드(Back Ground)와 포그라운드(Fore Ground) 두 가지의 모드로 작동됩니다. 리눅스 백그라운드 작업을 하는 이유는 일반적인 쉘 명령어를 실행했을 때 프로세스가 종료될 때까지 기다리면서 다른 작업을 하지 못하는 경우가 있기 때문입니다.

✅ 리눅스 포그라운드(Fore Ground)란?

터미널에 직접 연결되어 터미널과 입출력을 진행하는 프로세스를 뜻 합니다.

  • “Fore Ground”는 “땅에 대한” 또는 “지상에 대한”이라고 직역할 수 있으며, “Foreground“라는 용어는 주로 컴퓨터 과학 및 그래픽 디자인 분야에서 사용되며, ‘전경’, ‘전면’의 의미로 사용됨을 알 수 있습니다.
  • 사용자가 명령을 실행하면 해당 명령이 실행되는 동안 해당 프로세스가 포그라운드에서 실행됩니다.
  • 명령이 완료되기 전에는 해당 터미널 세션에서 다른 명령을 실행할 수 없습니다.
리눅스 단축키설명
Ctrl+D포그라운드 프로세스 정상 종료
Ctrl+C포그라운드 프로세스 강제 종료
Ctrl+Z포그라운드 프로세스 임시 정지 

✅ 리눅스 백그라운드(Back Ground)란?

용량이 큰 파일을 압축하거나 find 명령어 등을 실행할 때 터미널 창을 하나 더 여는 방법보다 백그라운드 명령어를 실행해서 작업 효율을 높일 수 있습니다.

  • 리눅스에서 “백그라운드”는 프로세스나 작업이 사용자의 주목을 받지 않고 실행 중인 상태를 나타냅니다.
  • 데몬 프로세스 및 리눅스 크론과 같이 일정 간격으로 실행되는 작업이 이에 포함됩니다.

✅ 백그라운드 명령어: 작업 및 프로세스 확인

사용자가 명령어를 입력해서 백그라운드 작업을 진행할 수 있습니다.

  • & 명령어를 이용해서 백그라운드에서 명령어를 실행할 수 있습니다.
명령어 &

용량이 큰 파일을 압축하거나 find 명령어 등을 실행할 때 터미널 창을 하나 더 여는 방법보다 백그라운드 명령어를 실행해서 작업 효율을 높일 수 있습니다.

  • 용량이 큰 파일의 경우 백그라운드 작업을 진행할 수 있습니다.
tar cfzp www.tgz www/ & 
[1] 2577
jobs
[1]+  Running                 tar cfzp www.tgz www/ &
jobs                           
[1]+  Done                    tar cfzp www.tgz www/ 
  • 포그라운드 명령어 작업 중에 예상보다 시간이 오래 걸릴 경우 [Ctrl + Z] 명령어를 사용하면 백그라운드로 이동됩니다.
tar cfzp usr.tgz usr/
^Z
[1]+  Stopped                 tar cfzp usr.tgz usr/
  • 정지 상태의 백그라운드를 실행 시킵니다.
bg %1
[1]+ tar cfzp www.tgz usr/ &
~]# 
ps -ef | grep 2577
root        2577    1961  1 15:00 pts/0    00:00:00 tar cfzp www.tgz www/
  • 포그라운드&백그라운드 명령어프로세스 제어
  • jobs 명령어
리눅스 커맨드 라인 인터페이스(Linux command line Interface-CLI)

jobs 명령어는 실행 중인 리눅스 백그라운드 작업을 조회하는 명령어입니다.

jobs -옵션 [Job ID]
# 기본 사용 
jobs
[1]+  Running                 tar cfzp www.tgz www/ &

jobs -l
[1]+  5466    Running                 tar cfzp www.tgz www/ &
  • 대 괄호 안에 있는 [1]+ 은 jobs ID입니다. Running은 현재 실행 중인 상태를 의미하며 맨 우측에 실행 중인 명령어를 확인할 수 있습니다.

Similar Posts

  • 리눅스 심볼릭 링크(Symbolic Link)와 하드 링크(Hard Link)

    리눅스에서 사용하는 심볼릭 링크(Symbolic Link)는 윈도우에서 사용하는 “바로가기”와 같은 기능을 가지고 있습니다. 소프트 링크 or 심링크로도 불리며, 하나의 파일에 여러 이름으로 생성할 수 있습니다. ✅ 심볼릭 링크 하드 링크 명령어 [-s 옵션]은 Symbolic Link를 만들어 주는 옵션이며 [-s 옵션]이 빠지게 되면 Hard Link를 생성하게 됩니다. ✅ 기존 하드 링크의 단점 Hard Link는 기존…

  • [Linux] lsof 명령어: 실행 중 파일 정보 출력

    lsof 명령어는 lisf open files의 약자로 리눅스 시스템에서 열려 있는 파일의 정보를 출력해 주는 명령어입니다. lsof 명령어는 파일을 포함하여 디렉터리, 네트워크 소켓, 파이프 등 프로세스가 사용 중인 다양한 리소스도 조회할 수 있습니다. ✅ lsof 명령어 기본 구문 명령어만 입력 했을 때는 현재 시스템에서 열린 모든 파일과 관련된 프로세스 정보를 출력합니다. ✅ lsof 명령어…

  • 리눅스 chgrp 명령어

    리눅스 chgrp 명령어는 파일 및 디렉토리의 그룹을 변경할 수 있는 명령어이며, Change Group의 약자입니다. ✅ 리눅스 chgrp 명령어 기본 사용법 chgrp 명령어에서 옵션은 거의 사용되지 않습니다. ✅ chgrp 명령어 옵션 옵션 설명 -R 하위 디렉토리에 적용. ✅ chgrp 명령어 사용 예시

  • 리눅스 sort 명령어: 파일 정렬

    종류 및 분류의 사전적 의미를 가진 리눅스 sort 명령어는 아스키 파일 내용(레코드)을 정렬할 때 사용하는 명령어입니다. 알파벳순이나 오름차순 또는 내림차순으로 정렬해야 하는 경우에 사용하는 명령어입니다. ✅ 리눅스 sort 명령어 기본 사용 방법 ✅ 리눅스 sort 명령어 옵션 ✅ 리눅스 sort 명령어 사용 예시 기본 사용 방법입니다.

  • yum 명령어 | 사용법 | 옵션 | yum-utils | 패키지 관리와 저장소 관리🔝

    레드햇 계열의 리눅스 배포판에서 사용하는 YUM 명령어는 패키지 관리(설치, 업데이트, 제거)를 하는데 사용하는 명령어입니다. yum은 기존 패키지 시스템인 RPM의 의존성 문제를 해결하기 위해 제공되는 도구이며, RPM에서 수행할 수 있는 많은 작업을 수행할 수 있습니다. ✅ YUM 명령어 yum 명령어의 기본 사용 방법은 다음과 같습니다. ✅ YUM 명령어 옵션 ✅ YUM 패키지 관리: 확인 및…

  • 리눅스 tee 명령어

    리눅스 tee 명령어는 배관시설에 비유해서 이름이 붙여진 명령어입니다. 파이프 모양과 똑같은 “T”에서 본따 tee 명령어이며 표준 출력으로 하나 이상의 다른 파일을 동시에 출력합니다. tee 명령어의 목적은 작업 진행 중 파이프라인(I)의 중간 내용을 알고 싶을 때 유용하게 사용할 수 있습니다. ✅ 리눅스 tee 명령어 사용법 ✅ tee 명령어 옵션 옵션 long 설명 -a -append…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 7   +   9   =