Linux/모니터링

top 명령

미나리나물 2013. 3. 31. 15:16

top 명령은 CPU의 활용량, 프로세서의 상태, 메모리 활용량과 같은 거의 모든 정보를 보여주는 유용한 툴입니다.

top 명령은 단독으로 실행 가능하며, 옵션을 사용 할 수도 있습니다.

명령 실행 결과는 아래와 같습니다.


====================================================================================================

top - 13:36:34 up 23 min,  3 users,  load average: 0.00, 0.00, 0.00

Tasks: 105 total,            2 running,            103 sleeping,                0 stopped,                0 zombie

Cpu(s):    0.0%us,     0.3%sy,     0.0%ni,    98.7%id,     0.0%wa,     0.0%hi,     1.0%si,     0.0%st

Mem:   1026064k total,           454996k used,           571068k free,            23768k buffers

Swap:  2096472k total,                  0k used,          2096472k free,           308884k cached


  PID    USER      PR    NI     VIRT     RES     SHR    S    %CPU    %MEM    TIME+     COMMAND

     1      root      15       0    10372      756       636    S        0.0           0.1    0:00.21     init

     2      root      RT     -5          0         0          0    S        0.0           0.0    0:00.00     migration/0

     3      root      34      19          0         0          0    S        0.0           0.0    0:00.00     ksoftirqd/0

     4      root      RT     -5          0         0          0    S        0.0           0.0    0:00.00     watchdog/0

     5      root      10      -5          0         0          0    S        0.0           0.0    0:00.56     events/0

     6      root      10      -5          0         0          0    S        0.0           0.0    0:00.00     khelper

====================================================================================================


위쪽 항목의 각 항목은 다음과 같습니다.
top : 현재 시간, uptime(서버가 실행되고 얼마나 지났나), 현재 로그인 한 유저 수, 로드 에버리지 1분 평균, 5분 평균, 15분 평균
      (로드 에버리지란? 작업 대기시간을 말함. 값이 1이라면 1분동안 평균 1개의 프로세스가 대기상태임을 나타냄. 보통 5정도면 서버가 부하를 받는다고
       생각하고, 10~15라면 과부하로 판단함)
Tasks : 전체프로세스 수(total), 현재 실행중인 프로세스(running), 유휴상태 프로세스(sleeping), 정지상태 프로세스(stopped), 좀비 프로세스(zombie)
Cpu(s) : 사용자가 사용중인 프로세스(us), 시스템이 사용하는 CPU 사용률(sy), NICE정책에 의해 사용되는 CPU 사용률(ni),
             사용되지 않은 CPU의 미사용률(id), 입출력 대기 상태의 사용률(wa), 하드웨어 인터럽트 CPU 사용률(hi), 소프트웨어 인터럽트 CPU 사용률(si)
             Steal CPU 사용률(st)
Mem : 전체 물리적 메모리(total), 사용중인 메모리(used), 여유 메모리(free), 버퍼링된 메모리(buffers)
Swap : 전체 스왑 메모리(total), 사용중인 스왑 메모리(used), 여유 스왑 메모리(free), 캐싱 메모리(cached)


아래쪽의 각 항목은 다음과 같습니다.

PID : 프로세서 아이디

USER : 사용자 아이디 (해당 프로세서를 수행한 사용자 아이디를 말함)

PR : 우선 작업 순위 (-20 ~ 20)

NI : 작업의 nice(작업우선순위) 값. 값이 음수일 경우에는 매우 높은 우선순위를 뜻함

VIRT : 프로세서가 사용한 가상 메모리의 총 크기(kb). VIRT = RES + SWAP

RES : 실제 사용중인 물리 메모리의 총 크기

SHR : 공유 메모리의 총 크기. 쉽게말해 다른 프로세스와 공유할 수 있는 메모리의 총 크기

S : 해당 프로세서의 상태 (D:중단 될 수 없는 유휴(sleep) 상태, R:실행 상태 , S:유휴(sleep) 상태 , T:Trace 또는 중단 된 상태 , Z:좀비 상태)

%CPU : CPU 사용량

%MEM : 메모리 사용량

TIME+ : 프로세스가 CPU를 점유한 누적 시간

COMMAND : 명령어 정보


top 명령어 실행 후 커맨드를 입력 할 수 있는데, 실행 상태에서 h를 누르면 명령어 도움말이 뜹니다.


  Z,B      전역: Z : 컬러 맵핑 변경(z를 누르면 컬러로 보여주는데 그때 색을 설정); B : 강조 켜고 끔

  l,t,m     (상단 정보에서)요약을 켜고 끔 : l : 평균 로드값(제일 위쪽) 토글; t : Tasks/CPU 정보 토글; m : 메모리 정보 토글

  1,I        1 : 상단 통계창에 CPU별 정보를 출력 (멀티코어CPU의 경우 번호가 늘어남); I : Irix/Solaris 모드 변경


  f,o       원하는 항목 기준으로 데이터를 정렬해 보여줌; f : 추가 또는 제거; 'o' 보여지는 순서를 변경(소문자는 아래로, 대문자는 위로)

  F or O  현재 필드의 정렬 기준을 보여줌.

  <,>,G   정렬 필드 그룹 이동(<,>는shift와 함께 사용). G를 누르면 그룹간 숫자로 이동 가능.

  R,H      R : 정렬 기준을 오름차순으로 할 지 내림차순으로 할 지 변경; 

 H : 쓰레드 정보를 보여줄 지 여부를 결정. 기본은 프로세서 정보만 제공.

  c,i,S     c : 전체 명령어 경로를 화면이 허락하는 데까지 출력; i : 수행중인 프로세스나 쓰레드 출력;

 S : 이미 종료된 자식 프로세스에서 CPU를 사용한 시간까지 출력.

  x,y       x : 현재 정렬 기준 항목의 열을 하이라이트 해줌; y : 상단 작업 목록 화면에서 실행 중(running) 상태로 나타나는 프로세스를 하이라이트 해줌.

  z,b      z : 컬러/모노 변경; b : 강조/되돌리기 (오로지 x 나 y 를 사용했을 때)

  u        특정 유저만 보여주기

  n or #  보여지는 라인 수 설정 (0으로 설정한다면 모든 줄 다 보여줌)


  k,r        k : 프로세서 죽이기; r : nice(작업우선순위) 재설정

  d or s   업데이트 시간 설정 (기본은 3초)

  W         현재 사용중인 설정 저장.

  q          나감

  A          정렬 필드 그룹을 모두 보여줌

  P          CPU 사용량의 순서대로 정렬

  T          실행 시간이 오래된 순서대로 정렬

Space 나 Enter    정보 갱신


'Linux > 모니터링' 카테고리의 다른 글

Sysstat 설치  (0) 2013.04.06
vmstat 명령어  (0) 2013.03.31
free 명령  (0) 2013.03.31