프로세스 죽이기, kill
`kill` 명령어는 Unix 및 Unix-like 시스템에서 프로세스에 시그널을 보내는 데 사용됩니다. 대부분의 사용자들은 `kill`을 프로세스를 종료하는 명령어로 알고 있지만, 실제로는 다양한 시그널을 프로세스에 전달하는 데 사용될 수 있습니다.
기본 사용법
1. 특정 프로세스에 시그널 보내기:
kill -SIGNAL PID
여기서 `SIGNAL`은 보낼 시그널 번호나 이름이고, `PID`는 시그널을 받을 프로세스 ID입니다.
주요 시그널
- SIGTERM (15): 프로세스를 종료하도록 요청하는 시그널. 이것이 `kill` 명령어의 기본 시그널입니다. 프로세스는 이 시그널을 받으면 자체적으로 정리 작업을 수행한 후 종료할 수 있습니다.
- SIGKILL (9): 프로세스를 강제로 종료하는 시그널. 프로세스는 이 시그널을 무시하거나 처리할 수 없으므로, 이 시그널을 받으면 즉시 종료됩니다.
- SIGHUP (1): 프로세스에 Hang UP을 알리는 시그널. 대부분의 데몬 프로세스는 이 시그널을 받으면 설정 파일을 다시 읽습니다.
예제
1. 특정 프로세스 종료하기 (기본 시그널 SIGTERM 사용):
kill 12345
여기서 `12345`는 종료할 프로세스의 ID입니다.
2. 특정 프로세스 강제 종료하기 (SIGKILL 사용):
kill -9 12345
3. 특정 프로세스에 SIGHUP 보내기:
kill -HUP 12345
주의사항
- `kill` 명령어를 사용할 때는 주의가 필요합니다. 특히 `SIGKILL`을 사용하여 프로세스를 강제로 종료할 때는 프로세스가 중요한 작업을 수행 중일 수 있으므로 데이터 손실이나 시스템의 불안정을 초래할 수 있습니다.
- 프로세스의 ID를 알아내려면 `ps`, `pgrep` 또는 `top`과 같은 명령어를 사용할 수 있습니다.
'Linuxpia > Linux 명령어' 카테고리의 다른 글
[리눅스 명령어] 페이지 단위로 출력하는, less (64) | 2023.10.06 |
---|---|
[리눅스 명령어] 어떤 라이브러리가 사용되는지를 알아보는, ldd (5) | 2023.10.05 |
[리눅스 명령어] 키보드 모드 출력하기, kbd_mode (5) | 2023.10.02 |
[리눅스 명령어] 수행중인 프로세스 알기, jobs (2) | 2023.10.01 |
[리눅스 명령어] 철자법 검사, ispell, aspell, hunspell (1) | 2023.09.30 |