우분투 Ubuntu 좀비 zombie 프로세스 죽이기
우분투 리눅스에 처음 로그인을 하면 시스템에 좀비 프로세스가 존재한다고 한다.
이때 이 좀비 프로세스를 찾아서 프로세스 킬 Kill 을 하면 된다.
fork() -> execl() 로 만든 자식 프로세스가 가끔씩 알수없는 이유로 동작이 정지되는 경우가 있다.
kill 시그널을 주거나 혹은 잘못된 명령을 전달했을때,
이를 처리하는 루틴이 없을 경우 이와 같은 현상이 발생한다.
정상적으로 종료를 하지 못했기 때문에 생기는 문제이다.
# ps auwx | grep defunct
root 에서 실행해서 살펴보면
USER PID %CPU
%MEM VSZ RSS
TTY STAT START
TIME COMMAND
의 순서대로 나오는 것 중에,
가장 마지막은 COMMAND 에 'defunct' 라는 것을 볼 수 있다.
PID 를 알았으니,
# kill -9 'PID' 라고 입력하면
좀비 프로세스를 강제 종료할 수 있...지만,
간혹 이 좀비 프로세스를 강제 종료해도,
이 좀비 프로세스를 생산하는 부모 프로세스가 살아있기 때문에
계속 나타날 수 있다.
이때는 top, htop - top 보다 더 많은 정보를 제공하는 툴 - 를 사용하며,
해당 PID 위 부모 프로세스를 찾아서 강제 종료해준다.
보통은 부모 프로세스 없이
남은 잔존 프로세스가 좀비 프로세스로 바뀌는 경우가 많기 때문에
부모 프로세스가 남는 경우는 거의 없다.
있다면 백도어 backdoor 등의 악성 프로세스 등을 의심해 볼 수도 있다.
댓글 없음:
댓글 쓰기