Kaspersky 무료 제거 프로그램. 컴퓨터에서 Kaspersky Anti-Virus를 완전히 제거하는 방법. 타사 유틸리티를 사용하여 Kaspersky를 완전히 제거하는 방법

Linux에서 프로세스를 종료하는 방법을 보여 드리겠습니다. 주요 중 하나 리눅스의 장점, 서버를 다시 시작하지 않고도 프로세스를 종료할 수 있는 기능입니다. 이 기사에서는 kill, pkill 및 killall 명령을 사용하여 Linux에서 프로세스를 종료하는 방법을 보여줍니다.

1. PID란 무엇인가

시작하기 전에 프로세스 ID(PID)가 무엇인지 알아야 합니다.

PID는 에서 프로세스의 디지털 식별을 나타냅니다. 각 프로세스에는 고유한 PID가 있습니다. 실제로 예를 들어 Linux 기반 시스템에서 시작되는 첫 번째 프로세스는 프로세스이고 해당 PID는 1로 설정됩니다. 이 프로세스는 다른 모든 프로세스의 상위 프로세스입니다. init 프로세스는 kill 명령을 사용하여 종료할 수 없으며 이는 실수로 종료되지 않도록 보장합니다.

이제 서버에서 실행 중인 각 프로세스의 PID를 찾기 위해 다음을 실행할 수 있습니다. 다음 명령:

이것은 우리에게 모든 사람의 목록을 제공합니다 실행 중인 프로세스및 해당 PID.

PID를 찾고 싶다면 특정 프로세스, pidof 명령 뒤에 프로세스 이름을 사용할 수 있습니다. 예를 들어 MySQL 프로세스의 PID를 찾으려면 다음 명령을 실행할 수 있습니다.

피도프 mysql

더 많은 것을 위해 자세한 정보, 우리는 명령을 사용할 수 있습니다 PS 보조함께 grep:

PS 보조 | grep mysql

이제 PID가 무엇인지, 특정 프로세스의 PID를 찾는 방법을 알았으므로 다음 섹션으로 넘어가 PID를 종료하는 방법을 알아볼 수 있습니다.

2. Linux에서 kill 명령을 사용하여 프로세스 종료

몇 가지가 있습니다 중요한 규칙, kill 명령을 사용하기 전에 알아야 할 내용입니다.

  • 사용자 ID에 속하는 기본 프로세스만 종료할 수 있습니다.
  • 다른 사용자의 프로세스를 종료할 수 없습니다.
  • 당신은 죽일 수 없습니다 시스템 프로세스(슈퍼유저가 아닌 이상)
  • 루트 사용자는 다른 사용자의 프로세스와 시스템 프로세스를 종료할 수 있습니다.

kill 명령으로 프로세스를 종료하면 실제로 종료하려는 특정 PID 신호를 보내는 것입니다. kill 명령에는 다음 신호가 사용됩니다.

1 = 끊기 9 = 종료 15 = 종료

끊어진 신호는 거의 사용되지 않습니다. 가장 자주 우리는 kill 신호를 사용하고, 작동하지 않으면 Terminate 신호를 사용할 수 있습니다.

그러므로 찾자마자 프로세스 PID우리가 죽이고 싶은 것을 앞서 설명한 방법 중 하나를 사용하면 다음 명령을 사용할 수 있습니다. kill -9 PID특정 PID에서 프로세스를 종료합니다.

예를 들어 PID가 6738이면 다음 명령을 사용할 수 있습니다.

처치 -9 6738

3. Linux에서 pkill 명령을 사용하여 프로세스 종료

PID 대신 프로세스 이름을 사용하여 프로세스를 종료하려면 pkill 명령을 사용할 수 있습니다. 예를 들어, 종료하려는 프로세스가 호출되면 다음 명령을 사용하여 종료할 수 있습니다.

MySQL의 Pkill

4. Linux에서 killall 명령을 사용하여 프로세스 종료

이전 두 명령은 하나의 특정 프로세스만 종료하는 데 사용되었습니다. 그러나 모든 하위 프로세스와 함께 프로세스를 종료하려면 다음 명령을 사용할 수 있습니다. 다 죽여:

킬랄 mysql

이 예에서는 MySQL 프로세스와 모든 하위 프로세스를 종료합니다.

이는 Linux에서 프로세스 종료의 가장 일반적인 예입니다.

안정성에도 불구하고 Linux의 일부 응용 프로그램이 때때로 정지됩니다. 때때로 앱이 응답하지 않거나 너무 느리게 실행되어 제대로 닫힐 수 없는 경우가 있습니다. "죽이는" 한 가지 방법 실행중인 응용 프로그램 Linux에서는 kill 또는 killall과 같은 명령을 사용합니다. 이러한 명령을 사용하는 방법, 프로세스의 PID를 찾는 방법, SIGKILL 신호를 보내는 방법을 살펴보겠습니다.

프로세스란 시스템에서 실행되는 프로그램의 복사본을 의미합니다. 예를 들어 세 개의 계산기 창이 열려 있으면(예: gcalctool) 세 개의 프로세스가 실행 중이라는 의미입니다.

정지된 프로세스의 PID 찾기

Linux의 각 프로세스에는 PID라는 고유한 식별자가 있습니다. 프로세스를 중지하기 전에 해당 PID를 결정해야 합니다. 이를 위해 ps 및 grep 명령을 사용합니다. ps 명령목록을 표시하도록 설계되었습니다. 활성 프로세스시스템 및 그에 대한 정보. grep 명령 ps(채널에서)와 동시에 실행되며 ps 명령의 결과를 검색합니다. 명령줄에서 실행하여 모든 프로세스를 나열할 수 있습니다.

그러나 일반적으로 목록은 매우 크고 우리가 "종료"하려는 프로세스를 찾는 것은 그리 쉽지 않습니다. 여기서 grep 명령이 구출됩니다. 예를 들어 gcalctool이라는 프로세스에 대한 정보를 찾으려면 다음 명령을 실행합니다.

추신 | grep gcalctool

grep 명령은 ps 명령의 결과를 검색하고 gcalctool 문자열(단어)이 포함된 행만 인쇄됩니다. 여기 하나 있어요 흥미로운 세부 사항예를 들어, gcalctool 애플리케이션을 실행하고 있지 않은 경우 실행한 후 추신 | grep gcalctool당신은 얻을 것이다:

$ ps 액수 | grep gcalctool yuriy 25587 0.0 0.0 10636 884 pts/2 S+ 10:20 0:00 grep --color=auto gcalctool

즉, gcalctool이라는 단어를 명령의 매개 변수로 지정하고 grep이 명령 출력에서 ​​발견되었기 때문에 grep 프로세스 자체를 얻었습니다. 추신.

gcalctool 프로세스가 실행 중이면 다음을 얻게 됩니다.

Yuriy@yuriy-NIX:~$ ps axu | grep gcalctool yuriy 25609 7.6 0.4 500840 17964 ? Sl 10:20 0:00 gcalctool yuriy 25624 0.0 0.0 10640 884 pts/2 S+ 10:21 0:00 grep --color=auto gcalctool

여기서 우리는 "라는 줄에 관심이 있습니다. 유리 25609 7.6 0.4 500840 17964 ? Sl 10:20 0:00 gcalctool" 숫자 25609는 gcalctool 프로세스의 PID입니다.

프로세스의 PID를 알아내는 또 다른 더 쉬운 방법이 있습니다. pidof 명령, 프로세스 이름을 매개변수로 사용하고 해당 PID를 출력합니다. pidof 명령 실행의 예:

$pidofgcalctool25609

kill 명령을 사용하여 프로세스를 "종료"합니다.

프로세스의 PID가 알려지면 해당 프로세스를 종료할 수 있습니다. kill 명령. kill 명령은 프로세스의 PID를 매개변수로 사용합니다. 예를 들어 프로세스 번호 25609를 종료해 보겠습니다.

25609를 죽여라

일반적으로 kill 명령은 프로세스에 신호를 보내기 위한 것입니다. 기본적으로 보낼 신호를 지정하지 않으면 SIGTERM 신호(termination이라는 단어에서 유래)가 전송됩니다. SIGTERM은 프로세스를 종료하라고 지시합니다. 각 신호에는 고유한 번호가 있습니다. SIGTERM의 번호는 15입니다. kill 명령이 보낼 수 있는 모든 신호(및 해당 번호) 목록은 다음을 실행하여 얻을 수 있습니다. 죽여 -l. SIGKILL 신호(9번)를 프로세스 25609로 보내려면 명령줄에서 다음을 실행하세요.

처치 -9 25609

SIGTERM 신호는 프로세스를 중지할 수 없지만(예: 신호가 가로채거나 차단된 경우) SIGKILL은 가로채거나 무시할 수 없으므로 항상 프로세스를 종료합니다.

killall 명령으로 프로세스를 종료합니다.

killall 명령 Linux에서는 이름이 같은 모든 프로세스를 "종료"하도록 설계되었습니다. 이는 프로세스의 PID를 알 필요가 없기 때문에 편리합니다. 예를 들어, gcalctool이라는 이름의 모든 프로세스를 닫고 싶습니다. 터미널에서 실행:

Killall gcalctool

kill과 마찬가지로 killall 명령은 기본적으로 SIGTERM 신호를 보냅니다. 다른 신호를 보내려면 옵션을 사용해야 합니다. -에스. 예를 들어:

Killall -s 9 gcalctool

결론

일부 프로세스는 다음과 같은 경우 중지할 수 없습니다. 일반 사용자. 예를 들어 프로세스가 다음과 같이 시작된 경우 루트 사용자또는 시스템의 다른 사용자로서 kill 및 killall 명령을 슈퍼유저로 실행하고 sudo를 추가해야 합니다(Ubuntu에서):

스도 킬 123

일을 하다 보면 상황이 있어요. 그래픽 인터페이스(예: GNOME) 정지된 프로세스를 중지하기 위해 터미널 에뮬레이터를 열 수 없습니다. 그런 다음 다음으로 전환할 수 있습니다. 가상 콘솔열쇠 Ctrl+Alt+F1, 로그인하여 거기에서 명령을 실행하십시오. 그런 다음 클릭하여 뒤로 돌아갑니다. Ctrl+Alt+F7.

모든 명령 사용에 대한 도움말은 man 명령을 사용하여 얻을 수 있습니다.

맨 ps 맨 grep 맨 pidof 맨 킬 맨 killall



질문이 있으신가요?

오타 신고

편집자에게 전송될 텍스트: