0. 사용 용도
- service, systemctl 명령어로 제어 불가능한 경우
- 불 필요한 포트로 보이나 어떤 프로세스인지 모르는 경우
- LISTEN 되어 있는 포트인데 어떤 용도인지 모를 때
- 실행 중인 프로세스인데 실행 경로가 어디인지 모를 경우
1. pid(process id) 찾기
- 실행 경로를 찾기 위해서는 pid를 알아야 합니다.
1.1. 프로세스 이름을 아는 경우
[형식]
# ps -ef | grep 프로세스명 | grep -v grep
[예시]
//2번째 행의 pid를 확인(745)
# ps -ef | grep rpcbind | grep -v grep
rpc 745 1 0 11월23 ? 00:00:00 /sbin/rpcbind -w
# ps -ef | grep rpcbind | grep -v grep | awk '{print $2}'
745
1.2. 프로세스 LISTEN 포트를 아는 경우
[형식]
# netstat -ntap | grep LISTEN | grep 포트번호
[예시]
//마지막 행에 pid를 확인(745)
# netstat -ntap | grep LISTEN | grep 111
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 745/rpcbind
tcp6 0 0 :::111 :::* LISTEN 745/rpcbind
2. pid로 프로세스 실행 파일 경로 찾기
- 위에서 구한 pid를 이용해 실행 경로를 파악합니다.
[형식]
# ls -al /proc/프로세스ID | grep exe
[예시]
# ls -al /proc/745 | grep exe
lrwxrwxrwx. 1 root root 0 11월 24 20:59 exe -> /usr/sbin/rpcbind
3. pid로 프로세스 현재 작업 디렉터리(CWD) 찾기
[예시]
# ls -al /proc/21018 | grep cwd
lrwxrwxrwx. 1 mysql mysql 0 11월 24 21:38 cwd -> /usr/local/mariadb-10.0.31/data
'OS > Linux' 카테고리의 다른 글
[Linux] 아파치 서버 컴파일 설치 (httpd-2.4.52) (0) | 2022.01.03 |
---|---|
[Linux] Apache HTTP Server 취약점 조치 (CVE-2021-44224, CVE-2021-44790) (2) | 2021.12.23 |
[Linux] RedHat7, CentOS7 root 비밀번호 분실 (root 비밀번호 초기화) (0) | 2021.11.19 |
[Linux] RedHat6, CentOS6 root 비밀번호 분실 (root 비밀번호 초기화) (0) | 2021.11.18 |
[Linux] 리눅스 파일 소유자 변경하기 - chown (0) | 2021.10.10 |