kill 명령을 구동중인 Port 기반으로 처리
특정 port를 Listening하고 있는 PID를 kill 하는 명령어입니다.
fuser 명령어는 특정 파일을 어떤 프로세스에서 사용하는지 확인할수 있다. 또한 PID를 KILL 또는 재시작도 가능하다.
fuser 명령어
옵션
-a : 사용되고 있지 않은 파일까지도 표시한다.
-k : 지정된 파일과 관련된 모든 프로세스들을 KILL 한다.
-i : 프로세스를 KILL 하기전에 사용자에게 확인한다.
-n space : 지정된 공간(file, udp, or , tcp)내에서 검색한다.
-s : 결과를 간략히 출력한다.
-u : 프로세스 ID(PID)의 소유자를 보여준다.
1)특정파일이나 디렉토리를 사용하고 있는 프로세스의 PID를 확인하는 명령어
#fuser -m /etc/sshd/sshd_config -> sshd_config파일을 사용하는 프로세스의 PID를 확인한다.
2)특정파일이나 디렉토리를 사용하고 있는 프로세스를 모두 죽이는 명령어
#fuser -k /usr/sbin/sshd -> sshd 데몬을 사용하고 있는 프로세스를 모두 KILL한다.
3)특정프로세스(또는 데몬파일)가 실행 중에 사용한 사용한정보(user),PID정보, ACCESS상태정보,
실행명령어(COMMAND)등의 자세한 상황을 파악할수 있다
#fuser -v /usr/sbin/sshd
USER PID ACCESS COMMAND
/usr/sbin/sshd: root 3432 ...e. sshd
root 5176 ...e. sshd
test 5179 ...e. sshd
ACCESS항목의 의미
- c : 현재 디렉토리를 의미함.
- e : 실행 가능함을 표시함.
- f : 열려진 파일을 의미함.(default 이므로 생략됨)
- r : root 디렉토리를 의미함.
사용예
10001 port를 사용하는 프로그램 kill
# 10001 port process kill
#!/bin/bash
sudo fuser -k 10001/tcp