Linux

[Linux] ps -ef VS ps aux

비번변경 2023. 4. 21. 19:18

개요

보통 프로세스 정보를 확인할 때 ps -ef를 주로 사용한다. 최근 Python으로 프로세스 모니터링 방법을 확인하는데 ps aux 명령어를 추천하는 글을 봤는데 두 명령어 옵션에 차이가 있는지 정리한다.

 

 

ps -ef

linux 매뉴얼에 따르면 표준 구문, UNIX을 이용해 시스템 상의 모든 프로세스를 확인할 때는 아래의 명령어를 제시하고 있다.

ps -e
ps -ef
ps -eF
ps -ely

 

각 옵션은 다음과 같다.

  • -e : 모든 프로세스를 선택한다. -A와 동일하다.
  • -f : 목록을 full format으로 출력한다.
  • -F : 목록을 full format으로 출력한다. -f와 동일하다.
  • -l :  목록을 long format으로 출력한다.
  • -y : 플래그를 표시하지 않고, ADDR 대신 RSS(실제 메모리 크기)를 표시한다. -l 옵션에서만 사용할 수 있다.

 

실행 결과

 

 

ps aux

linux 매뉴얼에 따르면 DSD 구문을 이용해 시스템 상의 모든 프로세스를 확인할 때는 아래의 명령어를 제시하고 있다.

ps ax
ps axu

 

각 옵션은 다음과 같다.

  • a : 터미널과 연관된 모든 프로세스 출력. x 옵션과 같이 사용하면 모든 프로세스를 출력한다.
  • x : 사용자에 의해 소유된 모든 프로세스 출력. a 옵션과 같이 사용하면 모든 프로세스를 출력한다.
  • u : user-oriented format으로 출력

 

실행 결과

 

 

ps -ef VS ps aux

두 명령어 모두 모든 프로세스를 보여주지만 프로세스에 대한 출력 정보가 조금 다르다.

ps -ef는 PID, PPID를 확인할 수 있기 때문에 프로세스의 식별 정보, 프로세스의 부모-자식 관계를 보기 좋다.

ps aux는 %CPU, %MEM, VSZ(가상 메모리 크기), RSS(실제 메모리 크기), STAT(프로세스 상태) 정보와 같은 프로세스 상태를 보기에 적합하다.

 

 

참고 문서

https://man7.org/linux/man-pages/man1/ps.1.html

https://unipro.tistory.com/238