kill 은 이름이 잘못됨
kill 이 항상 죽이는 건 아냐 — 시그널 을 보냄. 시그널마다 의미 다름. 기본은 SIGTERM ('정리하고 종료해'). 시그널 처리하는 프로그램은 cleanup 가능. 핵 옵션 SIGKILL 만 못 잡아.
쓰게 될 시그널
kill PID—kill -TERM과 동일. default. 정중한 종료.kill -INT PID— SIGINT. Ctrl+C 와 동일.kill -HUP PID— SIGHUP. 많은 데몬이 '재시작 없이 config reload' 신호로 처리.kill -USR1 PID— 앱 정의. nginx 가 로그 rotation 신호로 사용.kill -KILL PID또는kill -9 PID— SIGKILL. 강제 종료, cleanup 없음. 최후의 수단.kill -STOP PID/-CONT— 일시정지 / 재개 (Ctrl+Z +fg와 유사).
이름으로 kill
pkill firefox
pkill -f 'python myscript.py' # full command 매치
killall Slack # macOS GUI 앱점진적 escalation
kill PID— 정중히.- 5~10 초 대기. 행실 좋은 프로그램은 이 안에 종료.
kill -KILL PID— SIGTERM 무시했을 때만.
바로 -9 가는 건 나쁜 습관 — 프로그램이 버퍼 flush / 파일 close / 락 해제 못 함. wedge 된 프로세스 비상시에만.