본문 바로가기

운영체제/리눅스

리눅스 ps 명령어 완벽, Linux 프로세스 확인과 관리

리눅스 ps 명령어 완벽, Linux 프로세스 확인과 관리

리눅스 시스템에서 실행 중인 프로세스를 확인하고 관리하는 것은 시스템 관리자의 중요한 역할 중 하나입니다. 이 글에서는 리눅스의 ps 명령어를 사용하여 현재 실행 중인 프로세스를 확인하고 관리하는 방법을 상세히 알아보겠습니다. 기본 사용법부터 고급 활용법까지 다양한 예제를 통해 ps 명령어의 기능을 익혀보세요.

 

 

 

1. ps 명령어란?

ps(Process Status) 명령어는 리눅스 시스템에서 실행 중인 프로세스를 확인할 수 있는 명령어입니다. ps 명령어를 통해 현재 시스템에서 실행 중인 프로세스의 상태, PID, CPU 사용량, 메모리 사용량 등의 정보를 확인할 수 있습니다.

 

 

2. 기본 사용법

ps 명령어의 기본 사용법은 매우 간단합니다. 터미널에서 단순히 ps를 입력하면 현재 터미널 세션에서 실행 중인 프로세스 목록을 출력합니다.

$ ps
  PID TTY          TIME CMD
 1234 pts/0    00:00:00 bash
 5678 pts/0    00:00:00 ps

 

 

3. 주요 옵션 설명

ps 명령어는 다양한 옵션을 제공하여 프로세스 정보를 상세히 확인할 수 있습니다. 주요 옵션은 다음과 같습니다.

  • -e 또는 -A: 모든 프로세스를 표시합니다.
  • -f: 풀 포맷으로 출력합니다.
  • -u [사용자명]: 특정 사용자의 프로세스를 표시합니다.
  • -p [PID]: 특정 PID의 프로세스를 표시합니다.
$ ps -e
  PID TTY          TIME CMD
    1 ?        00:00:01 systemd
    2 ?        00:00:00 kthreadd
    3 ?        00:00:00 rcu_gp
    4 ?        00:00:00 rcu_par_gp

 

 

 

 

4. 필터링과 정렬

ps 명령어는 출력 결과를 필터링하거나 정렬할 수 있는 기능을 제공합니다. 이를 통해 필요한 프로세스 정보를 더 쉽게 찾을 수 있습니다.

예를 들어, 특정 프로세스를 검색하고 싶다면 grep 명령어와 함께 사용할 수 있습니다.

$ ps -e | grep bash
 1234 pts/0    00:00:00 bash

또한, CPU 사용량에 따라 프로세스를 정렬하고 싶다면 --sort 옵션을 사용할 수 있습니다.

$ ps -e --sort=-%cpu
  PID TTY          TIME CMD
 5678 ?        00:01:23 chrome
 1234 ?        00:00:45 firefox

 

 

5. 고급 사용법

ps 명령어는 고급 사용자들을 위한 다양한 기능을 제공합니다. 예를 들어, 특정 프로세스 트리를 확인하거나 사용자 정의 형식으로 출력을 구성할 수 있습니다.

특정 프로세스 트리를 확인하려면 --forest 옵션을 사용할 수 있습니다.

$ ps -e --forest
  PID TTY          TIME CMD
    1 ?        00:00:01 systemd
   10 ?        00:00:00  └─ sshd
  100 ?        00:00:00      └─ bash

사용자 정의 형식으로 출력을 구성하려면 o 옵션을 사용할 수 있습니다.

$ ps -eo pid,comm,%cpu,%mem
  PID COMMAND          %CPU %MEM
    1 systemd           0.0  0.1
 1234 bash              0.0  0.1
 5678 ps                0.0  0.0

 

 

6. 결론

ps 명령어는 리눅스 시스템에서 프로세스를 확인하고 관리하는 데 필수적인 도구입니다. 기본 사용법부터 고급 활용법까지 다양한 옵션을 통해 시스템의 상태를 효과적으로 모니터링할 수 있습니다. 이 가이드를 통해 ps 명령어의 다양한 기능을 익히고, 시스템 관리에 활용해 보세요.