[Linux] 리눅스 kill 명령어로 프로세스 종료하기

✔ kill 명령어의 기본 개념
✔ 프로세스를 종료하는 다양한 방법
✔ 함께 쓰면 좋은 명령어들

리눅스에서 작업을 하다 보면
"프로그램이 멈췄어요",
"특정 프로세스를 강제로 종료하고 싶어요"
같은 상황을 마주할 수 있습니다.

이럴 때 사용할 수 있는 강력한 도구가 바로 kill 명령어입니다.

 


kill 명령어로 프로세스 종료하는 방법

1. kill 명령어란?

kill은 이름만 보면 뭔가 위험해 보일 수 있지만,
실제로는 지정한 프로세스(PID)에 신호를 보내는 명령어입니다.

기본적으로는 종료(SIGTERM) 신호를 보내
해당 프로세스를 안전하게 종료하도록 요청합니다.

kill [옵션] PID

 


2. 실행 중인 프로세스 확인하기

먼저 종료하고 싶은 프로세스의 PID(프로세스 ID) 를 알아야 합니다.
아래 명령어로 확인할 수 있어요:

ps aux | grep [프로그램명]

예시:

ps aux | grep python

이 중에서 종료하고 싶은 프로세스의 PID를 확인합니다.


3. 프로세스 종료하기

기본적인 종료:

kill 12345
  • 12345는 종료할 프로세스의 PID입니다.
  • 이는 SIGTERM 신호(-15)를 보내는 것과 같습니다.
kill -15 12345

대부분의 경우 SIGTERM이면 충분합니다.
프로세스가 정상적으로 종료할 시간을 가질 수 있도록 해줍니다.

 


4. 종료되지 않는 프로세스는? (강제 종료)

어떤 경우엔 프로세스가 SIGTERM 신호를 무시하고 종료되지 않을 수 있습니다.
이럴 땐 SIGKILL 신호로 강제 종료할 수 있습니다.

kill -9 12345
  • -9: SIGKILL, 즉시 종료 명령
  • 프로세스가 중간 정리 없이 바로 사라집니다.
  • 꼭 필요한 경우에만 사용하세요.

5. killall로 이름으로 종료하기

PID가 아닌 프로세스 이름으로 종료하고 싶을 땐 killall을 사용합니다.

killall firefox
  • 이 명령은 실행 중인 모든 firefox 프로세스를 종료합니다.
  • -9 옵션을 붙이면 강제 종료도 가능합니다:
killall -9 firefox

 


6. 유용한 보조 명령어들

  • pgrep : 프로세스 이름으로 PID 찾기
pgrep nginx
  • pkill : 이름으로 직접 종료
pkill nginx
  • top이나 htop : 실시간으로 PID 확인 및 종료 가능 (키보드로 조작)

kill 명령어, 꼭 알아야 하는 이유

kill 명령어는 단순한 "종료 도구"가 아니라,
시스템을 안정적으로 관리하기 위한 중요한 수단입니다.

정리:

  • kill -15 : 정상 종료 요청
  • kill -9 : 응답 없는 프로세스 강제 종료
  • killall, pkill : 이름으로도 종료 가능