본문 바로가기
LINUX/CENTOS

[CENTOS] 프로세스 관련 명령어 pgrep /proc/ which ps

by tankwoong 2023. 9. 1.
반응형

pgrep 

프로세스 정보를 출력하는 ps와 원하는 정보를 추출하는 grep을 합한 명령어

 

메인 옵션 

pgrep -l or prep --list-name

PID와 프로세스 이름을 출력 

pgrep -f or pgrep --full

전체 프로세스 이름을 조건 매칭에 이용 

pgrep -g or pgrep --pgroup

지정한 GID에 해당하는 PID출력 

pgrep -u or pgrep --euid

 사용자 ID(effective ID)에 해당하는 PID를 출력 

pgrep -U

사용자 ID(Real ID)에 해당하는 PID를 출력 

 

여기서 REAL ID와 effective ID의 차이는 다음과 같다.

 

구글을 검색해 보면

 

Real user id is the user that spawned the process.

 

= 실제 사용자 ID는 프로세스를 생성한 사용자라는 의미이다.

 

Effective user id is the user determined by the setuid bit on the binary being executed

 

= 유효 사용자 ID는 실행 중인 바이너리의 setuid 비트에 의해 결정되는 사용자라는 의미이다.

 

/proc/

 

프로세스와 시스템 정보를 계층적인 파일 구조로 관리하는 특수한 파일 시스템 

 

/proc/PID 

 

프로세스 관련 정보 내용 

 

/proc/PID/cmdline

프로세스를 시작하는 명령어 

/proc/PID/cwd

프로세스의 현재 작업 디렉터리에 대한 심볼릭 링크 

/proc/PID/environ

프로세스와 관련된 환경변수의 이름과 값 

/proc/PID/exe

원본 실행 파일에 대한 심볼릭 링크 

/proc/PID/fd

오픈된 파일 기술자에 대한 심볼릭 링크를 포함하는 디렉터리 

/proc/PID/maps

힙, 스택과 같은 볼륨들에 대한 정보를 포함하는 텍스트 파일 

/proc/PID/mem

프로세스의 가상 메모리를 보여주는 바이너리로 ptrace를 통해 확인가능 

/proc/PID/status

프로세스의 실행 상태, 메모리 사용 등 프로세스에 대한 기본 정보 

which 

특정 명령어의 절대경로를 출력하는 명령어 

 

ps

 

현재 실행 중인 프로세스의 목록을 출력하는 명령어 

ps -e

모든 프로세스의 목록 출력 

ps -f

 UID, PID 등 전체정보를 출력 

ps -l

UID, PID, 프로세스 플래그, 프로세스 상태, 우선순위 등 자세한 정보를 list형식으로 출력

ps -p

특정 PID의 프로세스 정보를 출력 

ps -u

특정 UID(effective ID)의 프로세스 정보를 출력 

ps -U

특정 UID(real ID)의 프로세스 정보를 출력 

ps -o

직접 정의한 형식으로 정보를 출력 

ps -p pid=  PID만 출력 

 

ps -p comm=  프로그램 이름만 출력 

반응형