반응형

리눅스 리소스 모니터링 명령어 정리 (top, htop, gotop)
리눅스 서버 운영의 기본은 “서버 리소스 상태를 실시간으로 읽어내는 능력”입니다. CPU 사용률, 메모리 점유율, 프로세스 부하, IO 대기율, 스왑 사용량, 시스템 부하(Load Average) 등을 분석하면 장애 징후를 사전에 파악하고 병목 현상을 빠르게 해결할 수 있습니다.
이 글에서는 리눅스에서 가장 널리 사용되는 리소스 모니터링 명령어 top, htop, gotop을 중심으로, 자주 사용하는 옵션과 함께 실무 기준으로 정리했습니다.
1. top — 가장 기본이자 필수 명령어
top은 리눅스 리소스 모니터링의 표준 도구로, 모든 시스템에 기본 포함되어 있습니다.
기본 실행
top
- 1초 단위 기본 업데이트
- CPU·메모리·스왑·프로세스·로드값 확인 가능
자주 쓰는 단축키
- 1 : CPU 코어별 사용량 표시
- M : 메모리 사용량 기준 정렬
- P : CPU 사용량 기준 정렬
- T : 시간(Time) 기준 정렬 (누적 CPU 소비량)
- k : 프로세스 종료 (PID 입력 필요)
- h : 도움말
- shift + > 또는 < : 정렬 기준 이동
자주 쓰는 실행 옵션
- top -n 1 : 한 번만 출력 후 종료
- top -b : 배치 모드(스크립트에서 사용)
- top -d 2 : 2초 간격 갱신
- top -o %MEM : 메모리 기준 초기 정렬
top -b -n 1 | head -20
→ 서버 상태 스냅샷을 로그로 남길 때 유용
2. htop — 컬러 UI & 실시간 인터랙티브 모니터링
htop은 top을 더 직관적이고 시각적으로 개선한 도구입니다. 컬러 막대 그래프와 인터랙티브 UI 덕분에 실무에서 가장 많이 사용되는 리소스 모니터링 툴 중 하나입니다.
설치
# RHEL / CentOS / Rocky / Alma
sudo yum install -y htop
# Ubuntu / Debian
sudo apt install -y htop
특징
- CPU 코어 사용량을 각각 실시간 그래프로 표시
- 마우스 조작 지원
- PID 클릭 종료 가능
- 정렬/필터링 UI 제공
- 기본 top보다 시각적 정보가 풍부함
자주 사용하는 기능
- F6 (Sort) : 정렬 기준 선택
- F5 (Tree) : 프로세스 트리 보기
- F9 (Kill) : 프로세스 종료
- F3 (Search) : 프로세스 검색
실무 팁
htop --sort-key=PERCENT_MEM
→ 메모리 누수가 의심될 때 매우 유용
3. gotop — 터미널 기반 그래픽 리소스 모니터링
gotop은 go 언어로 개발된 고성능 리소스 모니터링 툴로, 애니메이션 기반의 매우 깔끔한 UI가 특징입니다.
설치
- GitHub Release로 설치
wget https://github.com/xxx/gotop/releases/download/latest/gotop-linux-amd64
chmod +x gotop-linux-amd64
sudo mv gotop-linux-amd64 /usr/local/bin/gotop
특징
- htop보다 빠르고 가벼움
- CPU/메모리 그래프가 실시간 애니메이션으로 표현
- 디스크 IO, 네트워크 사용량도 그래픽으로 시각화
- 컬러 테마 다양
자주 사용하는 옵션
- gotop -c : CPU 그래프 색상 변경
- gotop -f : 전체 화면 모드
- gotop -m : 최소 UI 모드
4. 기타 유용한 모니터링 명령어
4-1. vmstat — CPU / IO / 메모리 병목 확인
vmstat 1
- CPU run queue
- IO wait
- 메모리 스왑 사용 여부
4-2. iostat — 디스크 IO
iostat -x 1
- r/s, w/s
- svctm
- await
4-3. free — 메모리 상세 정보
free -h
4-4. nload / iftop — 네트워크 실시간 사용량
- nload : 단순 Rx/Tx 그래프
- iftop : IP·Port 단위 실시간 네트워크 사용량
5. 어떤 명령어를 언제 사용하면 좋을까?
- CPU 과부하 의심 → top, htop, gotop
- 메모리 누수 의심 → htop (PERCENT_MEM 정렬)
- 디스크 IO 병목 → iostat -x, atop
- 네트워크 트래픽 분석 → iftop, nload
- 스크립트 자동 수집 → top -b -n 1 / vmstat / sar
리눅스 서버 운영에서 가장 중요한 것은 “지표의 의미를 읽을 수 있는 능력”입니다. 위 명령어들을 상황에 맞게 조합해 활용하면 장애 대응과 성능 분석 속도가 크게 향상됩니다.
반응형
LIST
'지식 공유 > Server' 카테고리의 다른 글
| 서버 보안: PAM 모듈로 접근 제어·인증 강화 (0) | 2025.11.11 |
|---|---|
| KISA 기반 Rocky Linux 9 보안취약점 점검 (1) | 2025.11.10 |
| GDB를 이용한 코어 덤프(core dump) 분석 가이드 (0) | 2025.11.07 |
| Linux 커널 부팅 로그 분석 - ACPI, BIOS, Watchdog, Perf 관련 메시지 정리 (1) | 2025.11.07 |
| Rocky Linux 8.9 - THP(Transparent Huge Pages)로 인한 커널 I/O 교착 및 비정상 재부팅 원인 (1) | 2025.11.03 |
