이 문서는 리눅스 top 명령어에 대한 정보를 공유하기 위해 작성되었다.
top 명령어는 CPU, Memery 등 시스템의 전반적인 상태를 파악할 수 있게 해주는 명령어로 실행 시, 기본 3초 간격으로 화면을 갱신하여 보여준다.
top 주요 정보
- 11:37:26 up : top 정보 제공 시간
- 141 days : 서버 구동 시간
- 2 users : 접속 사용자 수
- load average : 3개 숫자 차례대로 1분, 5분, 15분 간의 평균 실행/대기 중인 프로세스의 수를 나타냄 (CPU 코어수 보다 적으면 문제 없음)
- Tasks : 프로세스 개수
- %Cpu(s) : CPU 정보
- MiB Mem, Swap : 메모리 사용량
top 프로세스 목록 정보
- PID : 프로세스 ID
- USER : 실행 유저
- PR : 프로세스 Priority 값 - 0 최고순위, 20, 일반적인 우선순위, 39 - 최하우선순위
- NI : 프로세스 Nice
- VIRT : 프로세스가 할당된 가상 메모리 전체 (단위 KiB, 실제로 할당되지 않은 가상 공간으로 물리 메모리를 의미하지 않음. 해당 값이 크다고 해도 큰 문제는 없음)
- RES : 현재 프로세스가 사용하고 있는 물리 메모리 (단위 KiB)
- SHR : 다른 프로세스와 공유하고 있는 메모리 (단위 KiB)
- S : 프로세스 상태
D = 무중단 Sleep 상태 (Uninterruptible Sleep)
I = Idle
R = Running
S = Sleeping
T = 작업 제어 신호(Job Control Signal)에 의해 중지됨
t = Trace 중 디버거에 의해 중지됨
Z = Zombie
- %CPU
- %MEM : RAM에서 RES가 차지하는 비율
- TIME+ : 프로세스가 사용한 총 CPU 시간
- COMMAND : 프로세스를 실행한 명령어 또는 관련 프로그램의 이름
top 유용한 명령어
명령어 | 설명 |
---|---|
1 | CPU 코어별 사용 현황 |
m | 메모리 사용률 시각화 |
Shift + p | CPU 사용률이 높은 프로세스 나열 |
Shift + m | 메모리 사용률이 높은 프로세스 나열 |
Shift + t | 수행 시간이 긴 프로세스 나열 |
k | kill 할 PID 입력 가능 |
H | 상단의 Tasks를 기준을 쓰레드로 변경 |
u | 모니터링 할 계정 선택하여 해당 권한 프로세스 감시 |