반응형
프로세스 관리
1. ps
- ps 명령어는 시스템에서 실행 중인 프로세스에 관한 정보를 보여준다. 프로세스의 정보는 PID를 중심으로 옵션에 따라 상세 정도를 정한다. /proc 디렉터리 이하의 프로세스와 연관된 가상 파일 시스템의 내용을 토대로 프로세스 정보를 출력하는 것이다.
옵션을 사용할 때 "-"를 사용하지 않는 UNIX 스타일과 "-"를 사용하는 BSD스타일 "--"를 사용하는 GNU 스타일이 존재한다. 이 옵션 "-"유무에 따라 역할이 달라지기 때문에 유의해서 사용해야 한다.
a | unix스타일로 ps 명령어는 기본적으로 현재 사용자 프로세스만 출력하는데, 해당 옵션사용시 모든 사용자가 소유한 프로세스를 모두 출력한다. |
x | unix스타일로 ps 명령어는 기본으로 터미널과 연관된 프로세스만 출력하는데, 해당 옵션 사용시 터미널과 연관되지 않은 프로세스도 출력할 수 있다. |
-A(BSD) | 모든 프로세스출력 |
-e(BSD) | 모든 프로세스출력 |
-a(BSD) | 세션리더와 터미널과 연관되지 않은 프로세스를 제외하고 모든 프로세스를 출력한다. |
- 위 옵션들은 기본 프로세스를 출력하기 위한 옵션들이다. 모든 프로세스가 아닌 지정한 프로세스 출력만을 위한 옵션이 있다.
p | unix스타일로 지정한 PID 목록의 정보만 출력한다 -p , --pid 와 동일하다 |
-C | 지정한 프로세스의 실행 파일 이름의 정보만 출력 |
-u | 특정 사용자의 프로세스 정보를 출력한다. 다수 입력이 가능하며 --user와 U와 동일한 기능을 한다. |
프로세스를 출력할 때 어떠한 형식을 지정하여 출력하여야만 우리가 쉽게 프로세스의 정보를 파악할 수 있다. 다음은 형식을 위한 옵션들이다.
u | unix스타일로 프로세스의 소유자 정보를 함께 출력한다 |
l | bsd형식의 긴 형식으로 출력한다 |
e | 프로세스 정보와 함께 프로세스의 환경변수도 출력 |
-l | 긴 포멧으로 출력 |
-o | 사용자 정의 형식 지정이 가능 |
정리
- ps : 현재 셸과 관련된 프로세스를 출력
- ps -e, ps -A : 현재 실행 중인 모든 프로세스를 출력
- ps -ef : 현재 실행 중인 모든 프로세스의 정보를 전체 포맷으로 출력한다.
- ps -elf : 전체 포맷보다 더 많은 정보를 출력
- ps aux : 터미널에 연관되지 않은 프로세스를 포함한 모든 사용자의 프로세스를 소유자 정보와 함께 프로세스 정보 출력
ps를 출력했는 때 나오는 주요 항목의 코멘트들이다.
F | 프로세스의 플래그이다. |
S == STAT | 프로세스의 상태코드 |
UID | 프로세스의 소유자이름 |
PID | 프로세스의 고유 식별자 |
PPID | 프로세스의 부모 프로세스의 PID이다 |
C | 프로세서 사용률이며 %로 표기 |
PRI | 프로세스의 우선순위이며, 높은 값이 낮은 우선순위이다 |
NI | nice값이며 19에서 -20값을 갖는다 |
SZ | 프로세스 이미지가 차지하는 물리적 페이지의 크기이다. |
WCHAN | 프로세스가 대기 중일 때 커널 함수의 이름이다 |
STIME | 프로세스가 시작한 시간 |
TTY | 터미널의 종류 |
TIME | 총 CPU 사용시간 |
CMD | 프로세스의 실행 시 명령 줄이다. |
프로세스의 상태 코드 즉 출력 시 STAT, S아래의 값이 온다.
1. D - 인터럽트가 불가능한 대기 상태로 일반적으로 입출력 시를 의미한다.
2. I - 커널 스레드가 유휴 상태를 의미한다.
3. R - 프로세스가 실행 중이거나 실행 가능한 상태를 의미한다.
4. S - 인터럽트가 가능한 대기 상태로 일반적으로 이벤트가 발생하기를 기다리는 상태
5. T - 작업 제어 신호에 의해 멈춘 상태이다.
6. t - 디버깅 중 디버거에 의해 멈춘 상태
7. X - 프로세스가 죽은 상태
8. Z - 좀비 프로세스를 의미하며 부모 프로세스의 신호를 기다리고 있는 상태이다.
9. < - 높은 우선순위 상태
10. N - 낮은 우선순위 상태
11. L - 페이지가 막된 메모리를 갖고 있다.
12. s - 세션 리더
13. l - 멀티스레드
14. + - 포어그라운드 프로세스 그룹
반응형
'Linux > CentOS' 카테고리의 다른 글
시스템 로그 관리 (0) | 2021.08.01 |
---|---|
rpm -options (0) | 2021.07.30 |
사용자 패스워드 관리 정책 (0) | 2021.07.30 |
리눅스 프록시 서버 SQUID (0) | 2021.07.10 |
크론(cron) (0) | 2021.07.03 |
댓글