리눅스, 백그라운드 | 포그라운드 실행이란?
- 운영체제(OS)
- 2022. 4. 14.
리눅스는 커맨드 라인에서 명령어로 프로세스를 실행합니다. 이때 프로세스 실행 방법은 백그라운드(Background) 실행과 포그라운드(foreground) 실행 방법이 있습니다. 이 개념을 모르면 포그라운드 실행을 하고 명령어를 추가 입력해 프로세스가 종료되는 실수를 할 수 있습니다.
포그라운드 실행
포그라운드 실행은 하나의 작업을 실행하면 그 작업이 끝날 때까지 기다리고 다시 또 다른 작업을 실행하는 방식입니다. 간단하게 압축을 푸는 명령어인 tar -zxvf
도 포그라운드 실행이라 할 수 있습니다. 압축이 모두 풀릴 때까지 사용자는 다른 작업을 수행할 수 없고 기다려야 합니다.
백그라운드 실행
백그라운드 실행은 프로세스를 실행시킴과 동시에 다른 작업을 병행할 수 있는 방식입니다. 예를 들어 몽고DB 서비스를 올릴 때 포그라운드로 실행하면 해당 터미널 창에서는 다른 작업을 더 이상 할 수 없습니다. 다른 터미널 창을 추가로 열어 작업을 수행해야 합니다.
반면 백그라운드로 몽고DB 서비스를 올리면 서비스를 올리고 나서도 다른 작업을 할 수 있습니다. 백그라운드로 실행하는 방법은 명령어 뒤에 &
를 붙이는 것입니다. 아래와 같이 사용합니다.
# ./mongod &
포그라운드 실행 → 백그라운드 실행
프로세스를 포그라운드로 실행하면 명령창이 활성화되지 않습니다. 이때 프로세스를 백그라운드 실행으로 전환하고 싶다면 작업 중지 명령어인 CTRL + Z
를 입력합니다. 그러면 중단된 프로세스가 [숫자] 프로세스명
형태로 나타납니다. 이때 bg 숫자
명령어로 백그라운드 실행으로 전환할 수 있습니다.
백그라운드 실행 → 포그라운드 실행
# jobs
[1]+ running 프로세스명
# fg 1
프로세스명
jobs 명령어로 백그라운드로 실행 중인 프로세스를 확인하고 fg 명령어를 통해 포그라운드로 가져옵니다.
'운영체제(OS)' 카테고리의 다른 글
리눅스, mariaDB 캐릭터셋 UTF8 설정 방법 (0) | 2022.04.18 |
---|---|
리눅스 파일 소유자와 권한 설정하는 방법 (chown, chmod) (0) | 2022.04.16 |
윈도우 DLL 파일이란? (0) | 2022.04.04 |
VMware로 CentOS 리눅스 환경 구성 방법 (0) | 2022.03.26 |
서버 컴퓨터에 리눅스를 쓰는 이유 (0) | 2022.02.22 |