[Linux] vmstat 명령어 (시스템 상태)

2024. 9. 13. 09:51·Linux

vmstat 명령어

시스템의 성능 상태를 모니터링하는 명령어로, CPU, 메모리, 스왑, 디스크 I/O, 시스템 프로세스 등에 대한 정보를 제공

$ vmstat

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0 145664 101084      0 170864   10   73   326    87   92  218  0  2 97  0  0
  • procs: 프로세스
    • r (run queue): 실행 대기 중인 프로세스 수
    • b (blocked queue): 메모리 자원이나 디스크 I/O에 의해 대기 중인 프로세스 수
  • memory: 메모리 (KB 단위)
    • swpd: 사용된 스왑 메모리 양
    • free: 사용 가능한 여유 메모리 양
    • buff: 버퍼로 사용 중인 메모리 양
    • cache: 캐시로 사용 중인 메모리 양
  • swap: 스왑 (KB 단위)
    • si: 디스크에서 메모리로 스왑 in된 양
    • so: 메모리에서 디스크로 스왑 out된 양
  • io: 입출력
    • bi: 블록 디바이스로부터 전송 받은 블록의 수
    • bo: 블록 디바이스에 전송한 블록의 수
  • system: 시스템 활동
    • in: 초당 인터럽트 수
    • cs: 초당 문맥 전환(context switches) 수
  • cpu: CPU 사용률
    • us (user): 프로세스의 사용자(user) 영역에서의 CPU 사용률
    • sy (system): 시스템(kernel) 영역에서의 CPU 사용률
    • id (idle): 사용하고 있지 않는 CPU 비율
    • wa (iowait): I/O가 완료되기를 기다리고 있는 CPU 비율
    • st (steal time): CPU를 VM에서 사용하여 대기하는 CPU 비율

vmstat 옵션

주기적으로 출력: 1초 마다 출력

$ vmstat 1

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0 162816  96436      0 141896    3   25   126    30   70  160  0  1 99  0  0
 0  0 162816  96376      0 141896    0    0     0     0   57  133  0  1 99  0  0
 1  0 162816  96376      0 141896    0    0     0     0   78  144  2  0 98  0  0

 

n번만 출력: 1초 간격으로 5번 출력

$ vmstat 1 5

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0 162816  96436      0 141896    3   25   127    30   70  160  0  1 99  0  0
 0  0 162816  96376      0 141896    0    0     0     0  128  220  2  1 97  0  0
 2  0 162816  96344      0 141896    0    0     0     0   79  158  0  2 98  0  0
 2  0 162816  96344      0 141896    0    0     0     0   57  126  1  0 99  0  0
 0  0 162816  96344      0 141896    0    0     0     0   55  125  0  1 99  0  0

 

-t 옵션: 현재 시간도 포함해서 출력

$ vmstat -t

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- -----timestamp-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st                 PDT
 3  0 162816  95952      0 141868    3   20   102    24   67  154  0  1 99  0  0 2024-09-10 01:06:52

 

-S 옵션: 메모리와 스왑의 출력 단위 지정 (k=KB, m=MB)

$ vmstat -S m

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  0    166     98      0    145    0    0   125    30   70  160  0  1 99  0  0

 

-a 옵션: 활성 메모리와 비활성 메모리도 포함해서 출력

$ vmstat -a

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 5  0 162816  95604 141480 102628    2   19    95    23   66  152  0  1 99  0  0
  • inact: 비활성 메모리 크기
    • 비활성 메모리: 사용되지 않은 메모리로, 이전에 사용되었지만 지금은 사용하지 않는 데이터가 저장되어 있음, 언제든지 다른 작업에 사용될 수 있는 메모리
  • active: 활성 메모리 크기
    • 활성 메모리: 현재 사용 중인 메모리로, 자주 액세스되는 데이터가 저장되어 있음

 

-d 옵션: 디스크 I/O 통계를 출력

$ vmstat -d

disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
nvme0n1  33394   1774 1946880   28674   8960  39108  467312   14902      0     37
sr0       10      0       4       1      0      0       0       0      0      0
  • disk-: 디스크 장치의 이름
  • reads: 읽기 관련 통계
    • total: 디스크에서 읽은 총 횟수
    • merged: 여러 읽기 작업이 하나로 병합된 횟수
    • sectors: 읽은 섹터 수
    • ms: 읽기 작업에 소요된 시간(ms)
  • writes (쓰기 관련 통계):
    • total: 디스크로 쓴 총 횟수
    • merged: 여러 쓰기 작업이 하나로 병합된 횟수
    • sectors: 쓴 섹터 수
    • ms: 쓰기 작업에 소요된 시간(ms)
  • IO (입출력 작업 상태):
    • cur: 현재 진행 중인 I/O 작업 수
    • sec: I/O 작업에 소요된 시간(seconds) ****

 

참고:

https://waspro.tistory.com/155#google_vignette

https://precommer.tistory.com/4

'Linux' 카테고리의 다른 글

[Linux] 사용자 관리 명령어 & 패키지 매니저 & 마운트  (0) 2024.12.04
[Linux] 파일 관련 명령어 & 출력 명령어  (0) 2024.11.22
[Linux] df, du 명령어 (디스크 사용량)  (0) 2024.09.13
[Linux] free 명령어 (메모리 상태)  (3) 2024.09.13
[Linux] top 명령어 (시스템 및 프로세스 상태)  (0) 2024.09.13
'Linux' 카테고리의 다른 글
  • [Linux] 사용자 관리 명령어 & 패키지 매니저 & 마운트
  • [Linux] 파일 관련 명령어 & 출력 명령어
  • [Linux] df, du 명령어 (디스크 사용량)
  • [Linux] free 명령어 (메모리 상태)
Doodo
Doodo
  • Doodo
    Doodo
    Doodo
  • 전체
    오늘
    어제
    • 분류 전체보기 (192)
      • CS (17)
        • Network (11)
        • Database (6)
      • Language (19)
        • Python (11)
        • SQL (6)
        • R (2)
      • Linux (17)
      • DevOps (35)
        • Git (7)
        • Docker (8)
        • Kubernetes (9)
        • GCP (4)
        • AWS (7)
      • Data Engineering (50)
        • 책 리뷰 (14)
        • Airflow (35)
        • Redis (1)
      • DBMS (21)
        • CUBRID (21)
      • ML & DL (2)
      • 코딩테스트 (24)
      • 프로젝트 (7)
        • 서울시 대기현황 데이터 적재 프로젝트 (4)
        • CryptoStream (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
Doodo
[Linux] vmstat 명령어 (시스템 상태)
상단으로

티스토리툴바