top 및 ps 명령을 사용하여 각 프로세스의 디스크 사용량을 얻을 수 있습니까?

top 및 ps 명령을 사용하여 각 프로세스의 디스크 사용량을 얻을 수 있습니까?

터미널에서 위 명령을 사용하여 디스크 사용량을 얻을 수 있는지 알아보려고 하는데 운이 없습니다. 누구든지 도와줄 수 있나요? 그렇지 않은 경우 top/ps와 동일한 작업을 수행하지만 동일한 디스크 사용량을 사용하는 데 사용할 수 있는 다른 명령이 있습니까?

감사해요

답변1

여기서 디스크 사용량에는 두 가지 의미가 있습니다.

디스크 공간 사용량은 dudf명령으로 요약됩니다. 이 df명령은 마운트된 파티션의 총 디스크 크기, 사용량 및 여유 공간을 요약합니다. 이 du명령은 디렉터리 및 파일별 총 디스크 사용량을 요약합니다.

및 와 같은 도구를 사용하여 특정 시간 간격 동안의 디스크 I/O 대역폭 iostat사용량을 표시할 수 있습니다 atop.

iostat명령은 각 디스크의 총 실시간 디스크 활동을 표시합니다. 기본적으로 시작 이후 평균을 표시하지만 시간 간격을 지정하고 해당 간격 동안 발생한 상황을 표시할 수도 있습니다.

atop명령은 iostat가 표시하는 것과 유사한 통계도 표시하지만 루트로 실행하는 경우isk 모드(누르기 d)는 프로세스별 디스크 I/O 사용률을 표시합니다.

프로세스는 디스크 공간을 사용하지 않고 파일은 사용하기 때문에 프로세스의 디스크 공간 활용은 의미가 없습니다. 프로세스의 디스크 공간은 무엇을 의미합니까? 실행 파일의 크기를 말씀하시는 건가요? 실행 파일 및 공유 라이브러리의 크기는 무엇입니까? 열린 파일 크기? 이러한 파일은 단일 프로세스에 속하지 않지만 해당 파일을 사용하는 모든 프로세스에서 공유됩니다. 디스크 블록 읽기 및 쓰기는 통계로 제공되지만 동일한 블록을 여러 번 읽고 쓸 수 있으므로 사용된 디스크 공간에 거의 영향을 미치지 않으며 이 통계에는 스와핑 및 요청된 페이징의 데이터도 포함됩니다.

관련 정보