Shinnara's Blog
Talking with Shinnara :: NaraTalk.com

'service'에 해당되는 글 1건

  1. 2007/09/13 백그라운드로 실행 및 중지

유닉스나 리눅스에서 서버를 돌릴 경우, 백그라운드로 실행을 하는 경우가 많은데요, 이때는 명령의 끝에 & 를 붙이면 된다는 것을 잘 아실겁니다.

[shinnara ~/java/ResourceServer/ver1.0]$ java -cp bin/ ResourceServer &
[1] 80460
[shinnara ~/java/ResourceServer/ver1.0]$ Server Started... [7779]

[shinnara ~/java/ResourceServer/ver1.0]$



보시는 바와 같이 ResourceServer 가 7779번 포트로 부터 시작되었음을 알려주는 메시지가  정상적으로 표시되는데, 명령의 끝에 &를 붙였기 때문에 [1]80460 이라는 메시지가 추가적으로 생기게 됩니다. 이 번호가 프로세스 번호를 의미합니다.

[shinnara ~/java/ResourceServer/ver1.0]$ kill 80460
[shinnara ~/java/ResourceServer/ver1.0]$ ps
  PID  TT  STAT      TIME COMMAND
80328  p0  S      0:00.15 -bash (bash)
80487  p0  R+     0:00.00 ps
80303  p1  I+     0:00.04 -bash (bash)
[1]+  Exit 143                java -cp bin/ ResourceServer
[shinnara ~/java/ResourceServer/ver1.0]$


실행시킬때 알게된 80460 이라는 PID를 이용해서 kill을 시켰더니 해당 프로세스가 종료되었음을 알려줍니다.

만약 서버를 실행시킨지 오래되어서 PID 를 모른다면 ps 를 이용해서  PID 를 알아 낼수 있습니다.

저의 경우는 다음과 같은 명령을 사용하기도 합니다.

[shinnara ~/java/ResourceServer/ver1.0]$ kill -9   `ps -ef | grep "java" | grep -v grep | grep "Resource" | awk '{print $1}'`

간혹 시스템에 따라서는 awk '{print $2}' 라고 적어야 하는 경우도 있나봅니다. 제가 참고해본 자료들이 대부분이 $2 를 사용하더군요. 제 시스템에서는 첫번째가 PID 로 나오기때문에 $1 를 사용했습니다.

위의 내용을 잘 활용하면 서버의 실행과 중지를 편리하게는 스크립트도 작성할 수 있을 것입니다. ^^




0 Trackback, 0 Comment

TRACKBACK :: http://naratalk.com/trackback/140 관련글 쓰기

댓글을 달아 주세요

1 
다...... (264)
Computer/Programming (106)
Links (14)
책 읽는 즐거움 (7)
끄적임 (66)
즐거운 과학 나라 (7)
일본 (5)
Study (4)