killall — 이름으로 프로세스 종료
Linux / 서비스 및 프로세스 관리 / killall.html
프로그램 이름이 일치하는 모든 프로세스에 신호를 보내는 도구.
기본 정보
| 명령어 이름 | killall |
|---|---|
| 한 줄 소개 | 프로그램 이름이 일치하는 모든 프로세스에 신호를 보내는 도구. |
| 제공 | psmisc 패키지 |
| 공식 문서 | https://man7.org/linux/man-pages/man1/killall.1.html |
| 지원 운영체제 | Linux |
| 설치 여부 | 패키지 설치 필요 (apt install psmisc) |
| 분류 | 리눅스 서비스·프로세스 (태그: 프로세스·자원 관리 (태그: 프로세스, 신호, 종료)) |
이 명령어는 무엇인가?
killall은 PID 대신 이름으로 프로세스를 지정해 신호를 보냅니다.
기본 신호는 TERM이며, -9처럼 번호나 이름을 지정해 강제 종료나 설정 재적용을 요청할 수 있습니다.
어떤 문제를 해결하는가?
- 같은 이름의 프로세스를 한 번에 정리합니다.
- 설정 재적용을 위해 HUP 신호를 보냅니다.
- 좀비처럼 남은 인스턴스를 일괄 종료합니다.
- 스크립트에서 정리 단계를 단순하게 만듭니다.
주요 기능
기본 종료
신호를 생략하면 TERM을 보내 정상 종료를 요청합니다.
- 활용 상황: 정상 종료를 유도할 때
- 얻는 결과: 프로세스가 정리 작업 후 종료
- 제한 사항: 무시하는 프로세스에는 효과 없음
신호 지정
신호 이름이나 번호를 인자로 주어 동작을 바꿉니다.
- 활용 상황: 설정 재적용이나 강제 종료 시
- 얻는 결과: HUP은 재적용, KILL은 즉시 종료
- 제한 사항: KILL은 정리 작업을 건너뜀
대상 확인
-i로 대화형 확인을 하거나 -w로 종료 완료를 기다립니다.
- 활용 상황: 실수로 중요한 프로세스를 죽이지 않을 때
- 얻는 결과: 확인 후 실행 또는 종료 대기
- 제한 사항: 이름이 겹치면 의도치 않은 대상 포함
설치 및 실행
설치 여부 확인
killall -V
apt install psmisc # Debian/Ubuntu dnf install psmisc # Fedora/RHEL
실제 사용 예제
정상 종료
nginx 프로세스를 종료합니다.
# Ask all nginx processes to exit
killall nginx
설정 재적용
HUP 신호로 설정을 다시 읽게 합니다.
# Reload configuration without stopping
killall -HUP nginx
확인 후 종료
대상마다 확인을 받습니다.
# Ask for confirmation before each match
killall -i nginx