ps : 프로세스 관리 및 모니터링
ps는 시스템의 현재 실행 중인 프로세스를 조회하는 명령어로, grep, awk 등과 결합하여 특정 프로세스나 조건에 맞는 프로세스를 필터링할 때 사용된다.
1. 특정 프로세스 검색: ps -ef | grep "프로세스명"
$ ps -ef | grep "apache"
apache와 관련된 모든 프로세스를 확인하여 CPU 점유율이 높은 프로세스나 비정상적으로 실행 중인 프로세스를 탐지
2. 상위 CPU 사용량 프로세스 추출
$ ps aux --sort=-%cpu | head -n 5
시스템 리소스를 과도하게 사용하는 상위 5개의 프로세스를 추출
3. PPID가 1인 프로세스(시스템에서 직접 실행된 프로세스)만을 출력
ps -ef | awk '$3 == 1'
awk를 사용하여 특정 부모 프로세스 하위의 프로세스만 필터링할 수 있다
4. 실행 시간 순서대로 정렬
ps -ef --sort=start_time
프로세스의 시작 시간에 따라 정렬하여 오래된 프로세스부터 확인
5. 메모리 사용률 높은 순으로 정렬
ps -ef --sort=-%mem | head -n 10
메모리 사용률이 높은 상위 10개의 프로세스를 출력
6. PID로 특정 프로세스 조회:: ps -ef | awk '$2 == PID'
ps -ef | awk '$2 == 1234'
7. 1시간 이상 실행 중인 프로세스 검색
ps -eo pid,etime,cmd | awk '$2 ~ /[0-9]+:[0-9]{2}:[0-9]{2}/'
순서대로 PID, 프로세스가 실행된 후 경과한 시간 (일:시:분:초), cmd또는 프로세스명
8. 특정 시간대에 시작된 프로세스 확인
ps -eo pid,stime,cmd | grep "10:00"
stime 필드를 사용하여 10:00에 시작된 프로세스를 조회
'Server > Linux' 카테고리의 다른 글
useradd 명령어 (0) | 2024.11.03 |
---|---|
Linux netstat 명령어 (0) | 2024.11.03 |
서버 용량 확인 및 관리 (MYSQL) (0) | 2024.10.19 |
MySQL 바이너리 로그(Binary Log) 관리 (0) | 2024.10.19 |
Ubuntu에서 패키지를 설치하거나 관리할 때 주로 사용하는 명령어 (0) | 2024.10.19 |