본문 바로가기

Linux

[linux] 자식 프로세스 관계 트리 형태로 확인하는 명령어 pstree

반응형

pstree

pstree는 프로세스의 상관 관계를 트리 형태로 출력해추는 명령어다. 부모 자식 프로세스의 관계를 트리 형태로 출력해주므로 계층 관계를 한 눈에 파악할 수 있다. 

 

 

pstree 사용법

Usage: pstree [-acglpsStuZ] [ -h | -H PID ] [ -n | -N type ]
              [ -A | -G | -U ] [ PID | USER ]
       pstree -V
Display a tree of processes.

  -a, --arguments     show command line arguments
  -A, --ascii         use ASCII line drawing characters
  -c, --compact       don't compact identical subtrees
  -h, --highlight-all highlight current process and its ancestors
  -H PID,
  --highlight-pid=PID highlight this process and its ancestors
  -g, --show-pgids    show process group ids; implies -c
  -G, --vt100         use VT100 line drawing characters
  -l, --long          don't truncate long lines
  -n, --numeric-sort  sort output by PID
  -N type,
  --ns-sort=type      sort by namespace type (cgroup, ipc, mnt, net, pid,
                                              user, uts)
  -p, --show-pids     show PIDs; implies -c
  -s, --show-parents  show parents of the selected process
  -S, --ns-changes    show namespace transitions
  -t, --thread-names  show full thread names
  -T, --hide-threads  hide threads, show only processes
  -u, --uid-changes   show uid transitions
  -U, --unicode       use UTF-8 (Unicode) line drawing characters
  -V, --version       display version information
  -Z, --security-context
                      show SELinux security contexts
  PID    start at this PID; default is 1 (init)
  USER   show only trees rooted at processes of this user

 

pstree 사용 예제

프로세스 아이디로 자식 프로세스 트리 확인

$ pstree 8808
screen───bash

 

프로세스 아이디를 인자로 넘겨주면, 프로세스명과 자식프로세스를 볼 수 있다.

위 예제는  screen 프로세스 (8808)의 자식 프로세스로 생성된 bash 프로세스를 볼 수 있다.

만약 process id도 같이 보고 싶다면 옵션을 추가할 수 있다.

 

$ pstree -p 8808
screen(8808)───bash(8809)

 

유저가 실행한 프로세스들 탐색하기

$ pstree -ap mysql
mysqld,24340
  ├─{mysqld},24348
  ├─{mysqld},24356
  ├─{mysqld},24373
  ├─{mysqld},24374
  ├─{mysqld},24375
  ├─{mysqld},24376
  ├─{mysqld},24377
  ├─{mysqld},24378
  ├─{mysqld},24379
  ├─{mysqld},24380
  ├─{mysqld},24381
  ├─{mysqld},24382
  ├─{mysqld},24383
  ├─{mysqld},24386
  ├─{mysqld},24387
  ├─{mysqld},24388
  ├─{mysqld},24389
  ├─{mysqld},24391
  ├─{mysqld},24392
  ├─{mysqld},24393
  ├─{mysqld},24394
  ├─{mysqld},24395
  ├─{mysqld},24396
  ├─{mysqld},24398
  ├─{mysqld},24400
  ├─{mysqld},24420
  ├─{mysqld},32444
  ├─{mysqld},32445
  ├─{mysqld},32446
  ├─{mysqld},32447
  ├─{mysqld},32448
  └─{mysqld},13267

pstree 명령어의 인자로 유저명을 넘겨주면 해당 유저의 권한으로 실행되는 프로세스와 해당 프로세스의 자식 프로세스 리스트를 출력해준다. 위 예제는 mysqld 계정으로 수행된 프로세스와 자식 프로세스 리스트를 보여준다.

반응형