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

리눅스의 프로세스는 백그라운드(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

  • 리눅스 Rsync 명령어

    Rsync (Remote Sync) 는 네트워크를 통해 파일과 디렉터리를 효율적으로 동기화하는 백업 방식입니다. 전체 데이터를 매번 복사하는 대신 변경된 부분만 증분 방식으로 전송하여 빠르고 안정적인 동기화를 지원합니다. 또한 다양한 옵션을 통해 압축, 암호화, 권한 유지, 삭제 동기화 등 세밀한 제어가 가능하며, 백업과 서버 간 데이터 전송에 널리 사용됩니다. 특히 네트워크 대역폭을 절약하고, 재 전송…

  • echo 명령어: From 확장과 인용

    echo 명령어는 문자열을 그대로 출력해 주는 명령어이다. echo 명령어는 프롬프트에서 사용하는 일은 거의 없으며, 쉘 스크립트 작성 시에 자주 사용하는 명령어이다. 표준 출력 상에 해당 텍스트 인자를 표시한다. 목차✅ 리눅스 포그라운드(Fore Ground)란?✅ 리눅스 백그라운드(Back Ground)란?✅ 백그라운드 명령어: 작업 및 프로세스 확인1. echo 명령어 옵션 2. echo $ $뒤에 오는 문자열이 변수로 선언되어 있는…

  • 리눅스 history 명령어

    리눅스 history 명령어는 이전에 명령어 목록을 확인하는 명령어로 리눅스 콘솔에 접속했을 때 자주 사용하는 명령어 중에 하나입니다. 보통 history만 입력해서 많이 사용하지만 보다 더 다양한 활용 방법에 대해서 알아 보겠습니다. 목차✅ 리눅스 포그라운드(Fore Ground)란?✅ 리눅스 백그라운드(Back Ground)란?✅ 백그라운드 명령어: 작업 및 프로세스 확인✅ 리눅스 history 명령어 기본 사용 history 명령어 자체만 입력해서 주로…

  • 리눅스 head 명령어 & tail 명령어

    리눅스 head 명령어는 파일의 처음 10줄을 보여주는 명령어이며, tail 명령어는 파일의 마지막 10줄을 보여주는 명령어입니다. 옵션 없이 사용할 경우 각각의 머리와 꼬리 부분을 보여주는 것을 알 수 있습니다. head와 tail 명령어는 보통 서버의 access_log를 볼 때 주로 많이 사용됩니다. 두 명령어의 사용법과 테스트 서버에서 access_log를 각각의 명령어를 통해 확인 해 보겠습니다. 목차✅ 리눅스…

  • 리눅스 서버 시간 동기화: timedatectl(CentOS7 이상)

    리눅스에서 날짜 및 시간 설정이 필요한 이유는 서버 운영 중 시간이 잘못되면, 입력되는 DB데이터, 로그 데이터, 웹 서버에 접속한 기록 등의 시간이 맞지 않는 경우가 발생할 수 있기 때문입니다. 리눅스 서버 시간 동기화를 사용하는데 있어 OS는 두 개의 시계를 가지고 있습니다.시스템 시계(소프트웨어 시계), 하드웨어 시계(실시간 시계, BIOS 시계)입니다. 목차✅ 리눅스 포그라운드(Fore Ground)란?✅ 리눅스…

  • [Linux] stat 명령어 : 파일&파일 시스템 확인

    리눅스 stat 명령어는 파일 및 파일 시스템의 상태를 보여주는 명령어입니다. 파일에 대한 자세한 정보가 필요할 때 사용합니다. 목차✅ 리눅스 포그라운드(Fore Ground)란?✅ 리눅스 백그라운드(Back Ground)란?✅ 백그라운드 명령어: 작업 및 프로세스 확인✅ stat 명령어 기본 사용 방법 ✅ 명령어 옵션 ✅사용 예시 🔲 파일 시스템의 정보 출력: -f

답글 남기기

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

Prove your humanity: 2   +   2   =