htop을 사용하여 프로세스와 모든 하위 프로세스를 일시 중지하는 방법은 무엇입니까?

htop을 사용하여 프로세스와 모든 하위 프로세스를 일시 중지하는 방법은 무엇입니까?

recoll파일 색인을 생성 하곤 했는데 , 부적절한 시간에 시작되었습니다.

htopF5를 사용하여 보기를 트리 보기로 변경하고 프로세스 목록을 필터링 하면 그 아래에 하위 프로세스가 있는 기본 프로세스가 실행되는 것을 볼 수 있습니다. 종료 옵션을 선택하기 위해 F9 키를 눌렀을 때 해당 옵션에 반응하지 않는 것 같아서 SIGTERM해당 옵션을 사용해야 합니다 SIGKILL.

부모 프로세스와 모든 자식 프로세스를 직접 종료하는 대신 일시 중지하거나 중지할 수 있는 옵션이 있습니까?

답변1

버전 이후2.0.0(2016년 출시)를 누르면 c프로세스와 해당 하위 프로세스를 표시할 수 있습니다. 이는 위에 표시된 내장 도움말에 언급되어 있습니다 h.

그런 다음 k표시된 프로세스에 신호 보내기를 누르면 선택할 수 있는 모든 신호 목록이 표시됩니다.

답변2

신호를 보내 SIGTSTP거나 다음 을 선택할 수 있습니다 SIGSTOP.

  • SIGTSTPCtrl:는 +를 눌렀을 때 전송되는 신호입니다 Z. 프로세스를 일시 중지하고 중지하며 bg(백그라운드에서 재개) 또는 fg(포그라운드로 다시 가져오기 재개)를 사용하여 재개할 수 있습니다.

  • SIGSTOP: 프로세스를 중지하면 됩니다. 이는 무시하거나 예방할 수 없습니다. 프로세스는 신호를 보낼 때만 재개됩니다 SIGCONT.

답변3

을 눌러 Space프로세스를 표시할 수 있습니다. Kill 명령은 표시된 모든 프로세스에 적용됩니다.

프로세스와 그 하위 프로세스에 레이블을 지정하는 쉬운 방법은 없지만 트리 뷰( t)에는 프로세스가 연속적으로 나열되어야 합니다.

리콜이 실행되는 방식에 따라 프로세스가 자체 위치에 있을 수 있습니다.프로세스 그룹. 그렇다면 kill -STOP -1234프로세스 그룹 ID(일반적으로 그룹에 있는 초기 프로세스의 프로세스 ID이지만 반드시 그런 것은 아님)를 1234로 사용하여 모든 프로세스를 일시 중단할 수 있습니다. ps -o pid,ppid,pgid,comm -C recoll을 사용하여 ps -o pid,ppid,pgid,comm ww | grep -v recoll프로세스 그룹에 다른 프로세스가 있는지 확인할 수 있습니다. Htop에는 그룹을 처리하는 인터페이스가 없습니다.

모든 프로세스가 호출되는 경우 recoll더 쉬운 방법은 이름으로 프로세스를 필터링하는 것입니다. htop에서 filter 명령을 사용하면 종료할 프로세스를 쉽게 표시할 수 있습니다. ps $(pgrep recoll)일치하는 프로세스를 나열하려면 명령줄에서 실행하세요 . 목록이 만족스러우면 실행하여 pkill -STOP recoll프로세스를 일시 중지하세요.

관련 정보