Ⅰ. ps 명령어란 ?
리눅스(Linux) 및 유닉스(Unix) 계열 운영체제에서 실행 중인 프로세스를 확인하는 데 사용됩니다. 시스템에서 현재 실행 중인 프로세스들의 정보를 출력하며, 사용자는 프로세스 상태, PID(프로세스 ID), CPU 사용률 등 다양한 프로세스 관련 정보를 볼 수 있습니다.
Ⅱ. ps 명령어 기본 사용법
ps 명령어는 여러 옵션을 제공하며, 기본적으로는 터미널에서 다음과 같이 사용됩니다:
[root@feccle ~ ] # ps [옵션] |
* 옵션 설명
옵션명 | 요약 | 설명 |
-e | 모든 프로세스 보기 | POSIX 표준에 따른 옵션으로 모든 프로세스 보여줍니다. |
-A | 모든 프로세스 보기 | -e 와 동일한 결과를 출력하는 BSD 스타일 옵션 |
-f | 풀 포맷 | 프로세스 목록을 출력하며, 부모 프로세스 ID, 프로세스 실행 사용자 등 더 많은 정보출력 |
-u [사용자 이름] | 특정 사용자 프로세스 보기 | 특정 사용자가 실행한 프로세스만 출력 |
-p [PID] | 특정 PID의 프로세스 보기 | 특정 PID의 프로세스만 출력 |
-C [명령어 이름] | 특정 명령어의 프로세스 보기 | 특정 명령어로 실행중인 프로세스만 출력 |
aux | BSD 스타일 출력 | BSD 스타일로 실행 중인 모든 프로세스를 출력하며, 사용자, CPU 및 메모리 사용률, 실행된 명령어 |
-ef | UNIX 스타일 전체 루력 | 유닉스 스타일로 모든 프로세스를 상세하게 출력하며, 프로세스 경로, PID, PPID 등 많은 정보 출력 |
-o [필드] | 특정 필드만 출력하도록 사용자 정의 | ps -o pid,comm,%cpu PID, 명령어 이름(comm), CPU 사용률을 출력 |
-l | 긴 형식 출력 | 우선 순위(nice), 스택 크기 등 상세한 정보를 보여줍니다. |
-H | 트리 형식 출력 | 트리 구조로 프로세스 간의 계층 관계 출력 |
--sort | 정렬 | ps aux --sort=-%cpu 출력 결과를 특정 필드를 기준으로 정렬합니다. CPU 사용률 또는 메모리 사용률을 기준으로 정렬 |
-N | 지정된 조건을 제외 | ps -N -u root 특정 조건에 맞는 프로세스를 제외한 나머지 프로세스를 출력 root 사용자가 아닌 프로세스를 출력 |
--forest | 계층 구조로 보기 | 프로세스 계층 구조를 시각적으로 트리 구조로 출력합니다. 부모-자식 관계 출력 |
-T | 현재 터미널의 프로세스 보기 | 현재 터미널에서 실행 중인 모든 프로세스를 표시 |
Ⅲ. ps 명령어 사용 방법
ⅰ. ps: 기본적으로 ps 명령어를 실행하면, 현재 세션에 속한 프로세스 목록만을 출력합니다.
[root@feccle ~ ] # ps |
* 주요 필드 설명
①PID: 프로세스 ID
②TTY: 터미널 타입
③TIME: CPU 사용 시간
④CMD: 실행 중인 명령어
ⅱ. ps -e 또는 ps -A: 시스템에서 실행 중인 모든 프로세스를 출력합니다.
[root@feccle ~ ] # ps -e or [root@feccle ~ ] # ps -A |
ⅲ. ps -f: 풀 포맷으로 출력해 추가 정보를 보여줍니다. 이 명령은 프로세스의 부모 PID(PPID)나 실행한 사용자를 포함한 정보를 보여줍니다.
[root@feccle ~ ] # ps -f |
ⅳ. ps aux: BSD 스타일로 모든 프로세스를 출력하며, 각 프로세스의 자세한 정보를 포함합니다. ps aux는 일반적으로 많이 사용되는 명령어로, CPU와 메모리 사용량까지 표시됩니다.
[root@feccle ~ ] # ps aux |
ⅴ. ps -ef: 유닉스 및 리눅스 스타일의 모든 프로세스를 상세하게 출력합니다. 여기서 -e는 모든 프로세스를, -f는 풀 포맷으로 출력함을 의미합니다.
[root@feccle ~ ] # ps -ef |
* 주요 필드 설명
① PID: 프로세스 ID
② PPID: 부모 프로세스 ID
③ TTY: 터미널 종류 (process가 연결된 터미널)
④ %CPU: CPU 사용률
⑤ %MEM: 메모리 사용률
⑥ VSZ: 가상 메모리 크기 (KB 단위)
⑦ RSS: 실제 메모리 크기 (KB 단위)
⑧ STAT: 프로세스 상태 (실행 중, 대기 중 등)
⑨ START: 프로세스가 시작된 시간
⑩ TIME: CPU가 프로세스에 사용한 시간
⑪ COMMAND: 프로세스를 실행한 명령어
ⅵ. ps -p [PID]: 특정 PID의 프로세스를 확인합니다.
[root@feccle ~ ] # ps -p 1653 |
ⅶ. ps -u [username]: 특정 사용자가 실행한 프로세스만을 출력합니다.
[root@feccle ~ ] # ps -u root |
ⅷ. ps -C [command]: 특정 명령어로 실행 중인 프로세스를 찾습니다.
[root@feccle ~ ] # ps -C httpd |
ⅸ. grep과 함께 사용하여 특정 프로세스를 찾을 수 있습니다.
[root@feccle ~ ] # ps aux | grep httpd |
'시스템(Linux)' 카테고리의 다른 글
Emacs 에 대해 알아보겠습니다. (0) | 2024.09.23 |
---|---|
.exrc에 대해 알아보겠습니다 (0) | 2024.09.23 |
CUPS 명령어에 대해 알아보겠습니다. (0) | 2024.09.20 |
Kali Linux에 대해 알아보겠습니다. (3) | 2024.09.17 |
리눅스 운영체제에서의 본딩(Linux Bonding)에 대해 알아보겠습니다. (0) | 2024.09.16 |