kill -9가 작동하지 않으면 어떻게 해야 합니까?

kill -9가 작동하지 않으면 어떻게 해야 합니까?

성가신 프로세스가 있습니다(이 경우 iPhone 시뮬레이터에서 실행되어야 하는 이상한 프로세스입니다(현재는 오랫동안 종료됨).

97442 ??         0:00.00 (MyProcess)

나는 다음을 포함하여 내가 생각할 수 있는 모든 것을 시도했습니다.

sudo kill -9 97442
sudo kill -HUP 97442

하지만 레이븐처럼... 과정은 남아있습니다.

이 경우 작업을 계속하려면 컴퓨터를 재부팅해야 함을 의미합니다.

답변1

프로세스가 이 프로세스처럼 프로세스 테이블에 남아 있으면 해당 프로세스를 종료해야 합니다.부모의프로세스. 먼저 상위 프로세스 PID를 찾습니다.

ps -eo 'pid,ppid,comm' | grep 97442

kill <pid>그런 다음 결과 가 무엇 이든 실행하십시오 ppid. (먼저 깨끗하게 죽을 기회를 주세요.)

전통적인 Unix 디자인은 프로세스 정보를 유지합니다.부모getrusage(2)상위 프로세스가 하위 프로세스 의 리소스 사용량이나 wait(2)종료 상태 등을 확인하기 위해 실행하려는 경우 수확하고 정리합니다.

부모가 자식을 거두지 않으면 자식은 좀비로 남습니다. 부모 프로세스가 종료될 때까지 커널은 자식의 부모를 다시 지정합니다 init(8).init(8) ~ 할 것이다새로 부모가 된 아이들을 거두십시오.

관련 정보