강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

bg를 이용하여 백그라운드로 프로세스 실행하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

bg를 이용하여 백그라운드로 프로세스 실행하기





 

다음과 같이 tar로 특정 폴더를 압축하는 명령을 실행 하였습니다. 

 

 

 

  여러분들도 잘 아시겠지만 용량이 클 경우에 tar로 압축하는 시간이 많이 소요됩니다. 

 

 

 

  따라서 이 작업을 백그라운드로 전환시킨 예입니다. 

 

 

 

 

 

아래 명령은 tar로 /usr디렉토리 전체를 압축하는 명령입니다. 

 

 

 

  이 작업의 실행시간이 너무 많이 소요되므로 일단 멈추기 위하여 "^Z"로 우선 멈춤을 하였습니다. 

 

 

 

  "^Z"를 입력하면 현재 실행중인 작업을 일단 멈추고 쉘프롬프트에서 일단 대기하게 됩니다. 

 

 

 

 

 

[root@su250 backup]# tar cvfz /backup/usr.tar.gz /usr >& /dev/null

^Z

[1]+  Stopped                 tar cvfz /backup/usr.tar.gz /usr >&/dev/null

[root@su250 backup]#

[root@su250 backup]#

 

이 상태에서 현재 실행상황을 확인하기 위하여 jobs라는 명령을 실행한 것입니다. 

 

 

 

  실행결과 아래 보시는 바와 같이 좀 전에 "^Z"를 눌러서 실행멈춤(Stopped)이 된 프로세스가 작업번호 1에 있다는 것을 확인하실 수 있을 것입니다. 

 

 

 

 

 

[root@su250 backup]# jobs

[1]+  Stopped                 tar cvfz /backup/usr.tar.gz /usr >&/dev/null

[root@su250 backup]#

 

이 상태에서 작업을 백그라운드로 전환하기 위하여 아래와 같이 "bg  %1"을 입력한 것입니다. 

 

 

 

 이렇게 백그라운드로 작업을 진행하면 프로세스는 그대로 실행이 되면서 쉘상태에서 다른 작업을 할 수가 있습니다. 

 

 

 

 

 

[root@su250 backup]# bg %1

[1]+ tar cvfz /backup/usr.tar.gz /usr >&/dev/null &

[root@su250 backup]#

[root@su250 backup]# jobs

[1]+  Running                 tar cvfz /backup/usr.tar.gz /usr >&/dev/null &

[root@su250 backup]#

[root@su250 backup]#

 

다시 jobs라는 명령으로 현재 실행중인 프로세스를 확인하여 본 결과 백그라운드로 실행중(Running)이라는 표시인 "&"가 되어 있다는 것을 확인할 수 있습니다. 

 

 

 

 당연한 얘기지만 조금 전에 실행한 tar명령어는 지금도 계속 실행되고 있다는 의미가 됩니다. 

 

 

 

 즉, 이렇게 bg를 이용하면 실행중인 프로세스를 백그라운드모드로 전환이 가능하며 실행 중 다른 작업을 할 수 있습니다. 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,534 명
  • 현재 강좌수 :  37,615 개
  • 현재 접속자 :  105 명