IT·리눅스/리눅스

☕ 리눅스 top 명령어 — 시스템 상태를 실시간으로 확인하는 방법

jmineekim 2025. 4. 23. 10:00
반응형

리눅스에서 시스템 자원 사용량을 확인할 수 있는 명령어 중 가장 자주 쓰이는 게 있다면, 바로 top 명령어 일겁니다.
CPU 사용량, 메모리 사용량, 실행 중인 프로세스 상태 등을 실시간으로 확인할 수 있는 명령어입니다.

이번 글에서는 top 명령어가 정확히 어떤 역할을 하는지, 어떤 옵션들이 있는지, 그리고 실무에서는 어떻게 활용되는지도 같이 정리해볼게요.


🍀 top 명령어란?

top 명령어는 리눅스에서 실행 중인 프로세스 목록과 시스템 자원 사용 현황을 실시간으로 보여주는 명령어입니다.

$ top

터미널에 위처럼 입력하면 아래와 같은 화면이 나타납니다.

top - 15:01:32 up  3:22,  3 users,  load average: 0.58, 0.49, 0.43
Tasks: 216 total,   1 running, 215 sleeping,   0 stopped,   0 zombie
%Cpu(s):  5.0 us,  1.2 sy,  0.0 ni, 93.4 id,  0.2 wa,  0.0 hi,  0.2 si,  0.0 st
MiB Mem :   7844.4 total,   1542.3 free,   2754.1 used,   3548.0 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   4744.5 avail Mem

이 위쪽은 전체 시스템 정보고, 아래쪽은 현재 실행 중인 프로세스 목록이 표시됩니다.


🔍 top 명령어 주요 정보 해석

간단히 주요 정보만 짚어보겠습니다.

  • load average
    최근 1, 5, 15분간의 평균 시스템 부하. CPU 코어 수보다 높다면 과부하 가능성 있음.
  • Tasks
    실행 중인 총 프로세스 수, 그 중 실행 중(running), 대기(sleeping), 중단(stopped), 좀비(zombie) 상태 개수.
  • %Cpu(s)
    CPU 사용 비율 (us: 사용자, sy: 시스템, id: 유휴 등)
  • Mem / Swap
    메모리와 스왑 사용량. 여유 공간이 적다면 성능 이슈 발생 가능.

🛠 top 명령어 옵션

top은 단순히 실행만 해도 되지만, 다양한 옵션을 통해 더 유용하게 활용할 수 있어요.

옵션 설명
-d <초> 갱신 주기를 초 단위로 설정 (기본 3초)
-n <횟수> 지정한 횟수만큼 갱신 후 종료
-b 배치 모드. 화면 없이 출력 (스크립트용으로 자주 씀)
-u <사용자> 특정 사용자의 프로세스만 표시
-p <PID> 특정 PID만 표시

예시로, 1초 간격으로 5번만 갱신하고 종료하고 싶다면

$ top -d 1 -n 5

스크립트에서 CPU 상태를 로그로 저장하고 싶다면

$ top -b -n 1 > top_log.txt

💡 실무에서의 top 사용

개발자나 운영팀에서 top 명령어를 자주 쓰는 이유는 딱 하나예요.
"지금 시스템에 무슨 일이 벌어지고 있는지 알고 싶을 때" 입니다.

1. 서버 느려졌을 때 CPU/메모리 점검

CPU 사용률이 100% 가까이 된다면 무한 루프 도는 프로세스가 있을 가능성 커요. top으로 확인하고 PID를 추적해서 해결합니다.

2. 의심스러운 프로세스 확인

top에서 M 키를 누르면 메모리 사용량 기준으로 정렬됩니다.
P 키는 CPU 사용량 기준 정렬. 이런 식으로 문제 있는 프로세스를 바로 캐치할 수 있어요.

3. 백그라운드 수집

서버 상태를 주기적으로 기록하고 싶을 땐, top -b -n 1을 크론탭에 걸어 로그로 남길 수 있습니다.

* * * * * top -b -n 1 >> /var/log/top_snapshot.log

✅ 정리

  • top은 리눅스 시스템 상태를 실시간으로 모니터링하는 강력한 도구.
  • 옵션을 적절히 활용하면 더 유용하게 쓸 수 있음.
  • 실무에선 성능 문제 진단, 프로세스 감시, 리소스 사용 파악 등에 널리 사용됨.

터미널에서 top 한 줄 입력만으로도, 시스템의 현재 상태를 빠르게 파악할 수 있어요.
자주 써보면 감이 옵니다. 지금 터미널 열어서 바로 한번 해보세요.

반응형