Creative Saplings

30 Linux 프로세스 모니터링을위한 유용한 ‘ps 명령’예제

1월 30, 2021
No Comments

ps (프로세스 상태)는 선택 항목에 관한 정보를보기위한 기본 Unix / Linux 유틸리티입니다. 시스템에서 실행중인 프로세스 : / proc 파일 시스템의 가상 파일에서이 정보를 읽습니다. Linux 시스템에서 무슨 일이 일어나고 있는지 이해하는 데 도움이되도록 특별히 프로세스 모니터링 하에서 시스템 관리를위한 중요한 유틸리티 중 하나입니다.

출력을 조작하기위한 많은 옵션이 있지만 작은 것을 찾을 수 있습니다. 일상적인 사용에 실질적으로 유용합니다.

또한 읽기 : Linux의 프로세스에 대해 알아야 할 모든 것

이 기사에서는 ps 명령의 30 가지 유용한 예를 살펴 보겠습니다. Linux 시스템에서 실행중인 활성 프로세스를 모니터링합니다.

ps는 각 정보 열의 의미를 나타내는 제목 줄이있는 출력을 생성합니다. ps man에서 모든 레이블의 의미를 찾을 수 있습니다. 페이지.

현재 셸의 모든 프로세스 나열

1. 인수없이 ps 명령을 실행하면 현재 셸에 대한 프로세스가 표시됩니다.

$ ps 
현재 실행중인 프로세스 나열

모든 프로세스를 다른 형식으로 인쇄

2. Linux 시스템의 모든 활성 프로세스를 일반 (Unix / Linux) 형식으로 표시합니다.

$ ps -AOR$ ps -e
표준 형식으로 프로세스 나열

3. 모든 프로세스를 BSD 형식으로 표시합니다.

$ ps auOR$ ps axu
BSD 형식으로 프로세스 나열

4. 전체 형식 목록을 수행하려면 -f 또는 -F 플래그를 추가하세요.

$ ps -efOR$ ps -eF
긴 목록 형식으로 프로세스 나열

사용자 실행 프로세스 표시

5. 소유 한 모든 프로세스 (ps 명령 실행자,이 경우 루트)를 선택하고 다음을 입력 할 수 있습니다.

$ ps -x 

6. 실제 사용자 ID (RUID) 또는 이름으로 사용자의 프로세스를 표시하려면 -U 플래그를 사용하십시오.

$ ps -fU tecmintOR$ ps -fu 1000
ID별로 사용자 프로세스 나열

7. 유효 사용자 ID (EUID) 또는 이름으로 사용자 프로세스를 선택하려면 -u 옵션을 사용하십시오.

$ ps -fu tecmintOR$ ps -fu 1000

루트로 실행되는 모든 프로세스 인쇄 (실제 및 유효 ID)

8. 아래 명령을 사용하면 루트 사용자 권한 (실제 & 유효 ID)으로 실행중인 모든 프로세스를 사용자 형식으로 볼 수 있습니다.

$ ps -U root -u root 
루트 사용자 실행 프로세스 표시

디스플레이 그룹 프로세스

9. 특정 그룹 (실제 그룹 ID (RGID) 또는 이름)이 소유 한 모든 프로세스를 나열하려면 다음을 입력하십시오.

$ ps -fG apacheOR$ ps -fG 48
디스플레이 그룹 프로세스

10. 유효 그룹 이름 (또는 세션)이 소유 한 모든 프로세스를 나열하려면 다음을 입력합니다.

$ ps -fg apache

PID 및 PPID 별 프로세스 표시

11. 다음과 같이 PID별로 프로세스를 나열 할 수 있습니다.

$ ps -fp 1178
PID 별 프로세스 나열

12. PPID로 프로세스를 선택하려면 다음을 입력하십시오.

$ ps -f --ppid 1154
PPID 별 목록 프로세스

13. PID 목록을 사용하여 선택합니다.

$ ps -fp 2226,1154,1146
목록 PID 별 프로세스

TTY 별 프로세스 표시

14. tty로 프로세스를 선택하려면 다음과 같이 -t 플래그를 사용합니다.

$ ps -t pst/0$ ps -t pst/1$ ps -ft tty1
TTY별로 프로세스 나열

프로세스 트리 인쇄

15. 프로세스 트리는 시스템의 프로세스가 서로 연결되는 방식을 보여줍니다. 부모가 종료 된 프로세스는 init (또는 systemd)에 의해 채택됩니다.

$ ps -e --forest 
프로세스 트리 나열

16. 이와 같이 주어진 프로세스에 대한 프로세스 트리를 인쇄 할 수도 있습니다.

$ ps -f --forest -C sshdOR$ ps -ef --forest | grep -v grep | grep sshd 
프로세스의 목록 트리보기

인쇄 프로세스 스레드

17. 프로세스의 모든 스레드를 인쇄하려면 -H 플래그를 사용합니다. 그러면 LWP (경량 프로세스) 및 NLWP (경량 프로세스 수) 열이 표시됩니다.

$ ps -fL -C httpd
프로세스 스레드 나열

사용자 지정 출력 형식 지정

-o 또는 –format 옵션을 사용하여 ps를 사용하면 아래와 같이 사용자 정의 출력 형식을 만들 수 있습니다.

18. 모든 형식 지정자를 나열하려면 L 플래그를 포함합니다.

$ ps L

19. 아래 명령을 사용하면 PID, PPID, 사용자 이름 및 프로세스 명령을 볼 수 있습니다.

$ ps -eo pid,ppid,user,cmd
이름으로 프로세스 나열

20. 다음은 파일 시스템 그룹, nice 값, 시작 시간 및 프로세스 경과 시간을 보여주는 사용자 지정 출력 형식의 또 다른 예입니다.

$ ps -p 1154 -o pid,ppid,fgroup,ni,lstart,etime
프로세스 ID 정보 나열

21. PID를 사용하여 프로세스 이름을 찾으려면

$ ps -p 1154 -o comm=
PID를 사용하여 프로세스 찾기

상위 및 하위 프로세스 표시

22. 이름으로 특정 프로세스를 선택하려면 -C 플래그를 사용합니다. 그러면 모든 하위 프로세스도 표시됩니다.

$ ps -C sshd
상위 하위 프로세스 찾기

23. 표준 출력 또는 파일에서 PID를 읽어야하는 스크립트를 작성할 때 유용한 프로세스의 모든 인스턴스의 모든 PID를 찾습니다.

$ ps -C httpd -o pid=
모든 프로세스 PID 찾기

24. 프로세스 실행 시간을 확인하십시오.

$ ps -eo comm,etime,user | grep httpd

아래 출력은 HTTPD 서비스가 1 시간 48 분 17 초 동안 실행되었음을 보여줍니다.

프로세스 가동 시간 찾기

문제 해결 Linux 시스템 성능

예를 들어 비정상적으로 느린 경우와 같이 시스템이 정상적으로 작동하지 않는 경우 다음과 같이 시스템 문제 해결을 수행 할 수 있습니다.

26. Linux에서 가장 높은 메모리 및 CPU 사용량으로 가장 많이 실행되는 프로세스를 찾습니다.

$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | headOR$ ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head
가장 많이 실행되는 프로세스 찾기

27. Linux 프로세스 / 응답하지 않는 애플리케이션 또는 높은 CPU 시간을 소비하는 프로세스를 종료하려면

먼저 응답하지 않는 프로세스 또는 애플리케이션의 PID를 찾습니다.

$ ps -A | grep -i stress

그런 다음 kill 명령을 사용하여 즉시 종료합니다.

$ kill -9 2583 2584
프로세스 찾기 및 종료

보안 정보 인쇄

28. 이와 같은 보안 컨텍스트 (특히 SELinux 용)를 표시합니다.

$ ps -eMOR$ ps --context
SELinux 컨텍스트 찾기

29. 이 명령을 사용하여 사용자 정의 형식으로 보안 정보를 표시 할 수도 있습니다.

$ ps -eo euser,ruser,suser,fuser,f,comm,label
사용자 별 SELinux 컨텍스트 나열

Watch Utility를 사용하여 실시간 프로세스 모니터링 수행

30. 마지막으로, ps는 정적 정보를 표시하므로 watch 유틸리티를 사용하여 아래 명령과 같이 매초마다 표시되는 반복적 인 출력으로 실시간 프로세스 모니터링을 수행 할 수 있습니다 (목표를 달성하기 위해 사용자 정의 ps 명령 지정).

$ watch -n 1 "ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head"
실시간 프로세스 모니터링

중요 : ps는 정적 정보 만 표시합니다. 자주 업데이트되는 출력을 보려면 htop과 같은 도구를 사용할 수 있습니다. top and glances : 마지막 두 개는 실제로 Linux 시스템 성능 모니터링 도구입니다.

다음 관련 기사를 읽어 보는 것도 좋습니다.

  1. Linux에서 PID 번호를 사용하여 프로세스 이름을 찾는 방법
  2. Linux에서 가장 높은 메모리 및 CPU 사용량으로 상위 실행 프로세스 찾기
  3. Linux에서 프로세스를 종료하기위한 Kill, Pkill 및 Killall 명령
  4. Linux에서 실행중인 프로세스를 찾고 종료하는 방법
  5. 백그라운드에서 Linux 명령을 시작하고 터미널에서 프로세스를 분리하는 방법

Articles
Previous Post

PMC (한국어)

Next Post

Yosemite Hikes : 요세미티 국립 공원에서 발을 딛는 최고의 장소

답글 남기기 답글 취소하기

최신 글

  • 2020 년 세계 최고의 사진 학교
  • 주권 시민이 반정부 철학을 도로로 가져옴
  • 치장 벽토 수리 비용 가이드
  • Muckrakers (한국어)
  • 정밀 종양학

보관함

  • 2021년 2월
  • 2021년 1월
  • 2020년 12월
  • 2020년 11월
  • 2020년 10월
  • 2020년 9월
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어
Proudly powered by WordPress | Theme: Fmi by Forrss.