Ctrl-C가 작동하지 않을 때 rc.local에서 시작된 프로그램을 어떻게 종료합니까?

Ctrl-C가 작동하지 않을 때 rc.local에서 시작된 프로그램을 어떻게 종료합니까?

라즈베리 파이(무한 루프)에서 부팅 시 실행되어 10초마다 사진을 찍는 프로그램을 만들려고 하는데 실수를 했지만 Ctrl지울 수 없다는 사실을 발견했습니다 C. 탈출할 방법이 있나요?

(다른 작업 공간으로 이동하려고 시도했지만 로그인 프롬프트가 표시되지 않았습니다.)

답변1

rc.local에서 프로그램을 시작하면 셸에 로그인하고 ctrl-c를 입력하여 중지할 수 없습니다. 그 이유는 로그인한 쉘에서 프로그램이 시작되지 않기 때문입니다.

프로그램의 프로세스 ID( )를 찾고 pidkill명령을 사용하여 프로세스를 종료하라는 신호를 보냅니다.

예를 들어 콘솔(터미널 창 또는 SSH를 통해 로그인)에서 다음을 수행합니다.

ps aux | grep 'the-name-of-your-progam'

두 번째 열의 숫자는 입니다 pid. 이를 사용하여 pid프로세스에 종료 신호를 보냅니다.

kill -TERM [put-your-pid-here]

프로세스는 신호를 무시하고 TERM파이프를 다시 실행하도록 선택할 수 있습니다. ps여전히 동일한 메시지가 표시되면 pid종료 신호를 보냅니다.

kill -KILL [put-your-pid-here]

관련 정보