각 프로세스의 총 디스크 공간 활용도 계산

각 프로세스의 총 디스크 공간 활용도 계산

각 프로세스가 소비하는 디스크 공간의 양을 결정하는 가장 좋은 방법을 찾고 있습니다. 내가 아는 한 내 앞에는 단 하나의 선택만이 남아 있었다. 즉, 모든 프로세스의 출력을 가져와 write_bytes함께 추가합니다. /proc/<pid>/io그러나 나는 이것을 함으로써 내가 얻은 총액이 df -h내가 받은 것과 일치하지 않는다는 것을 발견했습니다.

답변1

다음과 같은 파이프라인을 사용하겠습니다.

iotop -qqq -b -Paok -n 2 -d 30 | sort -n -k6 -r | head -n 20

옵션:

-qqq:제목과 요약을 인쇄하지 않습니다
-b. : 배치 모드
-P: 모든 Therads가 아닌 프로세스만 표시합니다
-a. :누적 I/O
-k:결과를 킬로바이트로 인쇄합니다
-n 2. :내가 아는 한 실행 횟수는 처음 이후여야 합니다. >= 마지막 실행 2회 1초 미만
-d 30: 실행 간 지연(이 경우 총 실행이라고도 함), 대략
| sort -n -k6 -r: 열 6(총 쓰기)을 기준으로 숫자로 정렬 및 역순
| head -n 20: 상위 20개만 표시 OK

노트: 사용된 전체 물리적 공간이 아닌 프로세스가 작성한 데이터의 양만 표시합니다. 프로세스가 동일한 20KB 파일에 초당 한 번씩 지속적으로 쓰는 경우 결국 20KB의 공간을 사용하게 되지만 30초 안에 총 600KB를 씁니다. 이 경우 내 프로세스가 기록하는 디렉터리를 모니터링합니다.du

답변2

당신이 사용할 수있는오토프. 그러면 각 프로세스의 실시간 디스크 사용량이 표시됩니다. CentOS/Fedora를 사용한다고 가정하면 이 작업을 수행할 수 있습니다.

$ sudo yum install iotop

그럼 그냥 전화하세요 iotop.

관련 정보