2009-10-15 5 views
0

이전 버전의 "vmstat"에서는 파티션 또는 디스크 (0 => 디스크 및> 0 => 파티션)인지 여부를 확인하기 위해 장치 부 버전이 사용되었습니다. 내가 맞지 않니? 그런 다음 커널 버전 2.6.x에서 일부 메트릭은 디스크 수준에서만 측정되었으므로 구문 분석 알고리즘은 장치와 관련된 메트릭 수 (11 메트릭 => 디스크 및 4 메트릭 => 파티션)를 기반으로했습니다.시스템 광 I/O 통계

그러나, 커널 버전 2.6.18에서 파티션 (11 개) 통계도 있습니다, 및 RAM 드라이브는 0보다 큰 부 장치 번호는 아래를 참조 있습니다

1 0 ram0 0 0 0 0 0 0 0 0 0 0 0 
    1 1 ram1 0 0 0 0 0 0 0 0 0 0 0 
    1 2 ram2 0 0 0 0 0 0 0 0 0 0 0 
    1 3 ram3 0 0 0 0 0 0 0 0 0 0 0 
    3 0 hda 364304 44416 9757168 9689046 18080864 19417076 299988386 1952073601 0 167032032 1961762954 
    3 1 hda1 170 1105 2566 2352 5 0 10 13 0 1854 2365 
    3 2 hda2 364112 43281 9754186 9686147 18080859 19417076 299988376 1952073588 0 167031121 1961760042 
253 0 dm-0 405386 0 9738418 14371284 37409328 0 299274624 2479168190 0 167053870 2493542151 
253 1 dm-1 1906 0 15248 70026 89219 0 713752 70030052 0 70247 70100078 
    22 64 hdd 0 0 0 0 0 0 0 0 0 0 0 
    2 0 fd0 0 0 0 0 0 0 0 0 0 0 0 
    9 0 md0 0 0 0 0 0 0 0 0 0 0 0 

을 내가에서 파티션을 분리 가야합니까 어떻게 이 경우 디스크? 최종 목표는 시스템의 전체 I/O를 결정하는 것입니다. 이와 관련하여 도움을 주시면 감사하겠습니다.

답변

0

흠 ... 당연히 내가 본 첫 번째 장소입니다. 그래도 만족스럽지 못했습니다. 하지만 여기에 내가 발견 한 바가 있습니다 :

- iostat -dkx을 실행하면 시스템의 모든 디스크에서 읽고 쓰는 KBytes/sec가됩니다. iostat은 복잡한 공식을 사용하여이를 수행합니다.

- 모든 2.6.x 커널에서 블록의 카운터 값을 가져 와서 차단합니다 (pgpginpgpgout). 1024로 곱하면 똑같은 대답을 얻을 수 있습니다!

1

기존 프로그램의 기능을 살펴볼 수 있습니까? dstat는 파이썬으로 작성된 좋은 것입니다. iostat은 기존의 전통적인 iostat이며 -x 출력에는 파티션이 아닌 디스크 (및 장치 매퍼 장치) 만 포함됩니다.