※ How to use the "top" command in Linux?
안녕하세요. 듀스트림입니다.
오늘은 시스템 운영에서 빠질 수 없는 top 명령어 사용법에 대해 살펴보겠습니다.
1. 목적: CPU, 메모리, 프로세스 사용률 등 시스템 상태를 실시간으로 모니터링
2. 기본 출력 구성
요약 정보 (Summary area)
- uptime: 시스템 작동 시간.
- load average: 최근 1, 5, 15분간 CPU 평균 부하.
→ 1.00 = 한 코어의 완전한 사용 (예: 4코어 시스템에서 4.00 이상은 과부하). - tasks: 현재 실행 중, 대기 중, 중지된, 좀비 프로세스 개수.
- %CPU(s): CPU 사용 비율.
→ us: 사용자 공간에서의 CPU 사용량.
→ sy: 시스템 공간에서의 CPU 사용량.
→ ni: Nice 값으로 인해 조정된 CPU 사용량.
→ id: 유휴 상태 비율.
→ wa: I/O 대기 비율.
→ hi: 하드웨어 인터럽트.
→ si: 소프트웨어 인터럽트.
→ st: 시스템이 다른 가상화 호스트에 의해 대기 중인 시간. - Mem: 메모리 사용량.
→ total: 총 메모리.
→ free: 여유 메모리.
→ used: 사용 중인 메모리.
→ buff/cache: 버퍼/캐시로 사용 중인 메모리.
→ avail Mem: 실제로 사용할 수 있는 메모리 (버퍼/캐시 포함). - Swap: 스왑 사용량.
→ total: 총 스왑 메모리 (0.0 total이면 스왑이 설정되지 않은 상태).
프로세스 정보 (Task area)
- PID: 프로세스 ID.
- USER: 프로세스를 실행한 사용자.
- PR: 프로세스 우선순위.
→ 20: 일반적인 우선순위.
→ -20: 높은 우선순위 (RCU 프로세스). - NI: Nice 값 (우선순위 조정).
→ 0: 기본값.
→ 낮은 Nice 값은 높은 우선순위를 의미. - VIRT: 가상 메모리 사용량 (단위: KB).
- RES: 실제 메모리 사용량 (단위: KB).
- %CPU: 프로세스의 CPU 점유율.
→ 단일 스레드 프로세스가 하나의 코어를 최대 사용 시 100%
→ 멀티 스레드 프로세스가 4개의 코어를 전부 사용 시 400%
→ 멀티 스레드 프로세스가 8개의 코어를 전부 사용 시 800% - %MEM: 프로세스의 메모리 점유율.
- TIME+: CPU 사용 시간.
- COMMAND: 실행 중인 명령어 또는 프로세스 이름.
3. 활용 예시
▸ CPU 집약적 프로세스 찾기
top -o %CPU
▸ 메모리 사용량 분석
top -o %MEM
▸ 특정 사용자 필터링
top -u username
▸ 프로세스 종료
k → PID 입력 → 신호 번호 (기본: 15)
▸ 우선순위 변경
r → PID 입력 → 새로운 Nice 값 (-20 ~ 19)
이정도만 알면 top을 활용한 모니터링은 문제없으실거에요!
오늘은 여기까지~!
다음 포스팅도 기대해주세요 :)
'Linux' 카테고리의 다른 글
Linux: 심볼릭 링크와 하드 링크 (0) | 2025.01.16 |
---|---|
Linux: ulimit(open files, core file size) 리소스 제한 변경 방법 (0) | 2025.01.11 |
도커(Docker): 명령어 사전 (0) | 2024.12.16 |
도커(Docker): 사용법 (1) | 2024.12.16 |
Linux: Oracle VirtualBox를 사용하여 VM에 Linux 설치 (35) | 2024.12.15 |