[리눅스] 명령어 백그라운드 실행 방법

CentOS, Ubuntu 등 리눅스 명령어 백그라운드 실행 방법

nohup과 &를 이용해서 리눅스의 명령어를 백그라운드로 실행하는 방법에 대해서 알아보겠습니다.

 

1. 명령어 &

리눅스 백그라운드 실행

명렁어 뒤에 &을 붙이면 백그라운드에서 작업을 실행합니다.
&만 사용하여 실행했을 때, 사용자가 터미널 세션이 끊어버리면 백그라운드 중인 작업도 같이 종료됩니다.

nohup 명령어를 함께 사용하면 백그라운드에서 작업함과 동시에 터미널 세션을 끊거나 컴퓨터를 종료해도 프로세스가 사라지지 않습니다.

 

2. nohup 명령어와 &

리눅스 nohup 명령어

nohup 으로 실행하면 실행한 위치에 nohup.out파일이 생성되는데, 명령어 실행 시 발생하는 표준 출력 > 을 nohup.out에 입력합니다.
nohup으로 실행하면 해당 작업의 pid와 출력문구가 나옵니다. enter 치면 진행됩니다.

 

 

nohup.out에 표준출력 입력 안하려면 아래와 같이 실행하면 된다.

nohup [명령어] & > /dev/null

nohup.out

 

3. 종료

리눅스 백그라운드 실행을 종료하려면 ps -ef 로 해당 백그라운드로 실행되고 있는 쉘 pid 확인해서 kill로 종료시키면 됩니다.

다음과 같이 종료한다.

프로세스 종료

프로세스 확인

# ps -ef | grep task이름

 

프로세스 kill

# kill -9 pid

댓글

Designed by JB FACTORY