kill 및 pid=0을 통해 신호 보내기

kill 및 pid=0을 통해 신호 보내기

살인에서 man:

pid가 0이면 sig는 프로세스 그룹 ID가 보낸 사람의 프로세스 그룹 ID와 동일하고 해당 프로세스에 신호를 보낼 권한이 있는 모든 프로세스(지정되지 않은 시스템 프로세스 집합 제외)로 전송되어야 합니다.

그게 정확히 무슨 for which the process has permission to send a signal뜻인가요? 어떤 프로세스가 신호를 수신하는지 확인하는 방법은 무엇입니까?

예를 들어 kill -9 0현재 시작된 모든 프로세스를 종료합니다.단말기그리고단말기그 자체. 아니면 다른 것이 있습니까?

답변1

그게 정확히 무슨 for which the process has permission to send a signal뜻인가요?

맨페이지에 답이 바로 나와 있습니다.

프로세스가 신호를 보낼 수 있는 권한을 가지려면 권한이 있어야 합니다. 그렇지 않으면 보내는 프로세스의 실제 또는 유효 사용자 ID가 대상 프로세스의 실제 또는 저장된 세트 사용자 ID와 동일해야 합니다. 의 경우신호 제어송신 및 수신 프로세스가 동일한 세션에 속하면 충분합니다.

어떤 프로세스가 신호를 수신하는지 확인하는 방법은 무엇입니까?

프로세스 목록을 반복하고 신호 0(모의 실행 신호)을 사용하여 각 프로세스를 종료해 볼 수 있습니다. 이를 통해 실제 신호를 보낼 권한이 있는지 여부를 알 수 있습니다.

관련 정보