Linux

[리눅스] ps 명령어 완벽 가이드 사용법

인생아 2024. 10. 1. 15:12
반응형

ps 명령어는 리눅스에서 현재 실행 중인 프로세스의 정보를 출력하는 데 사용됩니다. 프로세스 상태, PID, 메모리 사용량 등을 확인할 수 있어 시스템 모니터링과 프로세스 관리에 필수적인 도구입니다. ps 명령어는 실행된 시점의 프로세스 상태를 출력하며, 실시간 모니터링은 제공하지 않습니다. 실시간 모니터링이 필요할 경우 top 명령어를 사용해야 합니다.

ps 명령어 기본 사용법

ps [옵션]

주요 옵션

  • -e: 시스템에서 실행 중인 모든 프로세스를 출력합니다.
  • -f: 프로세스의 전체 정보를 포맷을 맞춰 출력합니다.
  • -u: 특정 사용자가 실행한 프로세스를 출력합니다.
  • -aux: 실행 중인 모든 프로세스와 CPU, 메모리 사용량을 포함한 상세 정보를 출력합니다.

ps 명령어 예시

기본 프로세스 목록 출력

user@linux:~/Documents$ ps
  PID TTY          TIME CMD
 1234 pts/0    00:00:00 bash
 5678 pts/0    00:00:01 ps

이 명령어는 현재 사용자 세션에서 실행 중인 프로세스를 간단하게 출력합니다. PID(프로세스 ID), TTY(터미널), TIME(CPU 사용 시간), CMD(실행된 명령어)를 확인할 수 있습니다.

시스템의 모든 프로세스 출력

user@linux:~/Documents$ ps -e
  PID TTY          TIME CMD
    1 ?        00:00:02 systemd
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 rcu_gp
 1234 pts/0    00:00:00 bash
 5678 pts/0    00:00:01 ps

-e 옵션을 사용하면, 시스템 전체에서 실행 중인 모든 프로세스를 출력합니다. 터미널에서 실행되지 않은 프로세스도 함께 표시됩니다.

프로세스의 전체 정보 출력

user@linux:~/Documents$ ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 09:00 ?        00:00:02 /sbin/init
root         2     0  0 09:00 ?        00:00:00 [kthreadd]
user      1234  1200  0 09:30 pts/0    00:00:00 bash
user      5678  1234  0 09:31 pts/0    00:00:01 ps

-ef 옵션은 UID(사용자 ID), PPID(부모 프로세스 ID), STIME(프로세스 시작 시간) 등의 추가 정보를 출력합니다. 이 정보를 통해 프로세스의 부모-자식 관계를 확인할 수 있습니다.

CPU 및 메모리 사용량 확인

user@linux:~/Documents$ ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.1  89764  1040 ?        Ss   09:00   0:02 /sbin/init
user      1234  0.1  0.2 108456  2156 pts/0    Ss   09:30   0:00 bash
user      5678  0.0  0.1  39264  1980 pts/0    R+   09:31   0:01 ps aux

-aux 옵션은 프로세스의 CPU와 메모리 사용량을 포함한 상세 정보를 제공합니다. %CPU는 CPU 사용률, %MEM은 메모리 사용률을 나타냅니다.

특정 사용자 프로세스 출력

user@linux:~/Documents$ ps -u user
  PID TTY          TIME CMD
 1234 pts/0    00:00:00 bash
 5678 pts/0    00:00:01 ps

이 명령어는 특정 사용자(여기서는 user)가 실행한 프로세스만을 출력합니다. 시스템의 다양한 사용자가 프로세스를 실행하는 경우 유용하게 사용할 수 있습니다.

실시간 모니터링이 필요한 경우

ps 명령어는 정적인 프로세스 목록만 제공하기 때문에, 실시간 모니터링이 필요한 경우 top이나 htop 명령어를 사용해야 합니다. 이 두 명령어는 실시간으로 CPU, 메모리 사용량을 보여줍니다.

참고 사이트

반응형