프로세스 목록 보기 : ps
- 현재 실행 중인 프로세스 목록 확인 명령어 : ps
- ps 명령을 통해 출력되는 PID를 통해 프로세스의 '부모-자식' 관계 확인 가능
- 우분투에서는 ps 명령의 옵션의 세 가지 유형을 모두 지원
ps 명령 옵션 |
- 유닉스(SVR4) 옵션 : 묶어서 사용가능, 붙임표로 시작(ex : -ef) - BSD 옵션 : 묶어서 사용가능, 붙임표로 시작하지 않음(ex : aux) - GNU 옵션 : 붙임표 두 개로 시작(ex : --pid) |
- 이 세 가지 유형은 섞어서 사용 가능. 하지만 충돌이 발생할 수 있음
ps 명령
ps - 프로세스 목록 출력 - PID : 프로세스 번호 - TTY : 터미널 번호 - TIME : 해당 프로세스가 사용한 CPU 시간의 양 - CMD : 프로세스가 실행 중인 명령 |
- 기능 : 현재 실행 중인 프로세스의 정보를 출력 - 형식 : ps 옵션 - 옵션 : 유닉스 옵션, BSD 옵션, GNU 옵션 - 사용 예 : ps, ps -ef, ps aux |
ps 옵션 유형 |
|
유닉스 옵션 |
-e : 시스템에서 실행 중인 모든 프로세스 정보 출력 -f : 프로세스 상세 정보 출력 -u uid : 특정 사용자에 대한 모든 프로세스 정보 출력 -p pid : pid로 지정한 특정 프로세스 정보 출력 |
BSD 옵션 |
a : 터미널에서 실행한 프로세스 정보 출력 u : 프로세스 소유자 이름, CPU 사용량 등 상세 정보 출력 x : 시스템에서 실행 중인 모든 프로세스 정보 출력 |
GNU 옵션 |
--pid PID 목록 : 목록으로 지정한 특정 PID 정보 출력 |
ps -f : 프로세스 상제정보 출력 ex)user@ubunutu:~$ ps -f | |
항목 |
의미 |
UID |
프로세스를 실행한 사용자 ID |
PID |
프로세스 번호 |
PPID |
부모 프로세스 번호 |
C |
CPU 사용량(%) |
STIME |
프로세스의 시작 날짜나 시간 |
TTY |
프로세스가 실행된 터미널 종류 및 번호 |
TIME |
프로세스 실행 시간 |
CMD |
실행되고 있는 프로그램 이름 또는 명령 |
ps 옵션 및 명령
터미널에서 실행한 프로세스의 정보 출력(BSD 옵션) : a옵션
- a 옵션은 터미널에서 실행한 프로세스의 정보를 출력
- 출력 내용 중 STAT 은 프로세스의 상태를 나타냄
ex) ps a
STAT 의미 |
||
문자 |
의미 |
비고 |
R | 실행 중(running) |
|
S |
인터럽트가 가능한 대기(sleep) 상태 |
|
T |
작업 제어의 의해 정지된(stopped)상태 |
|
Z |
좀비 프로세스(defunct) |
|
STIME |
프로세스의 시작 날짜나 시간 |
|
s |
세션 리더 프로세스 |
BSD 형식 |
+ |
포그라운드 프로세스 그룹 |
|
l(소문자 L) |
멀티 쓰레드 |
터미널에서 실행한 프로세스 상세 정보 출력(BSD 옵션) : a옵션 + u옵션
- 'a옵션'과 'u옵션'을 함께 사용시 터미널에서 실행한 프로세스의 상세 정보 출력
- 'a옵션'이나 '-f옵션'을 비교
=> 'a옵션'을 사용했을시 CPU와 메모리 사용량 등 추가적인 정보 출력
ex) ps au
'ps au' 의 출력 정보 |
|
항목 |
의미 |
USER |
사용자 계정 이름 |
%CPU |
CPU 사용량을 퍼센트로 표시 |
%MEM |
물리적 메모리 사용량을 퍼센트로 표시 |
VSZ |
사용하고 있는 가상 메모리의 크기(KB) |
RSS |
사용하고 있는 물리적 메모리의 크기(KB) |
START |
프로세스 시작 시간 |
전체 프로세스 목록 출력(유닉스 옵션) : -e 옵션
- '-e' 옵션은 시스템에서 실행 중인 모든 프로세스를 출력
- TTY의 값이 ? 인 것은 대부분 데몬으로 시스템이 실행한 프로세스
- '-e' 옵션으로 출력시 출력 내용이 스크롤되어 프로세스의 목록을 확인하기 어려움
- 출력 결과를 페이지 단위로 확인하기 위해 '|(파이프)' 와 'more' 또는 'less' 명령을 함께 사용
- 전체 프로세스의 더 자세한 상세 정보 확인시 '-e'옵션과 '-f'옵션을 함께 사용하면 됨.
- 쓰레드는 CMD에 [] 로 표시
ex) ps -e | more
ex) ps -ef | more
전체 프로세스 목록 출력(BSD 옵션) : ax옵션
- 'ax'옵션은 '-e' 옵션과 유사
- 시스템에서 실행 중인 모든 프로세스를 출력
- 'aux'옵션은 '-ef' 처럼 시스템에서 실행 중인 모든 프로세스의 상세 정보 출력
ex) ps ax | more
ex) ps aux | more
특정 사용자의 프로세스 목록 출력 : -u 옵션
- '-u'옵션을 사용시 특정 사용자가 실행한 프로세스의 목록 확인 가능
- 더 상세한 정보 출력은 '-f'옵션을 함께 사용. 이 경우 -u옵션이 뒤에 와야함.
ex) ps -u user
특정 프로세스 정보 출력 : -p 옵션
- '-p' 옵션과 함께 PID 지정시 해당 프로세스의 정보를 출력
ex) ps -fp 315
특정 프로세스 정보 검색
- 특정 프로세스를 바로 검색하려면 'ps'명령과 'grep'명령을 '|(파이프)'로 연결하여 이용하는 방법.
- pgrep 명령 이용하는 방법.
ps 명령을 이용. 특정 프로세스 정보 검색
- 'ps -ef | grep' 등등 옵션을 활용, grep과 '|(파이프)'를 이용해 정보 검색
pgrep 명령을 이용, 특정 프로세스 정보 검색
- 'pgrep' 명령은 'ps'와 'grep'을 하나로 만든 명령어.
- 인자로 지정한 패턴과 일치하는 프로세스를 찾아 PID 확인 가능
pgrep |
- 기능 : 지정한 패턴과 일치하는 프로세스의 정보 출력 - 형식 : pgrep [옵션] [패턴] - 옵션: => -x : 패턴과 정확히 일치하는 프로세스 정보 출력 => -n : 패턴을 포함하고 있는 가장 최근의 프로세스 정보 출력 => -u 사용자ID : 특정 사용자에 대한 모든 프로세스 출력 => -l : PID와 프로세스 이름 출력 => -t term : 특정 단말기와 관련된 프로세스의 정보 출력 - 사용 예 : pgrep bash |
- 더 상세한 정보를 확인할려면 'pgrep' 명령과 'ps'명령을 연결해서 사용 ex1) ps -fp $(pgrep -x bash) ex2) ps -fp $(pgrep -u user bash) |
'OS > Linux - Ubuntu' 카테고리의 다른 글
[Linux - 리눅스 / Ubuntu - 우분투] 프로세스 관리 도구 - top (0) | 2015.03.15 |
---|---|
[Linux - 리눅스 / Ubuntu - 우분투] 프로세스 종료 (0) | 2015.03.13 |
[Linux - 리눅스 / Ubuntu - 우분투] 프로세스 개념 - 시그널, 프로세스 종류 (0) | 2015.03.02 |
[Linux - 리눅스 / Ubuntu - 우분투] 우분투 무한 로그인 (0) | 2015.03.01 |
[Linux - 리눅스 / Ubuntu - 우분투] [요약] 파일 접근 권한 관리 (0) | 2015.02.28 |