리눅스(Linux) 활용
동작 중인 프로세스를 프로세스 이름을 이용하여 강제 종료하기
오늘도 야근
2019. 11. 5. 20:28
리눅스에서 동작 중인 프로세스를 강제 종료하는 방법으로 kill 명령을 사용할 수 있다.
kill 명령은 인자로 PID(프로세스 식별번호) 입력 받아, 해당되는 프로세스를 강제 종료한다.
따라서 종료하고자 하는 PID를 알아야 하며, 이는 다음과 같이 ps 명령을 통해 알 수 있다.
아래 화면에서 ps 라는 프로세스의 PID는 42465 이다.
$ ps -ef
UID PID PPID C STIME TTY TIME CMD
gyun 1 0 0 Nov01 pts/0 00:00:00 /bin/bash
gyun 42466 1 0 11:21 pts/0 00:00:00 ps -ef
PID를 알아낸 후에는 kill 명령을 통해 해당 프로세스를 강제 종료할 수 있다.
$ kill -9 42466
하지만 이렇게 PID를 먼저 알아낸 후 종료하는 두 단계를 거치기에는 불편할 수 있다.
위 명령에 grep, awk 명령을 추가 조합하여 프로세스 이름만으로 프로세스를 종료하는 방법은 다음과 같다.
(보통 프로세스 이름은 알고 있기 때문에, 별다른 추가 작업 없이 한 줄로 종료할 수 있다.
$ kill -9 `ps -ef | grep '프로세스이름' | awk '{print $2}'`
하지만 더 간단한 방법이 있다.
killall 명령을 사용한다.
$ killall -9 프로세스이름
우분투 리눅스에서 killall을 설치하는 방법은 다음과 같다.
$ sudo apt install psmisc