사용자별 RAM 사용량을 확인할 수 없습니다.

사용자별 RAM 사용량을 확인할 수 없습니다.

최근에 내 서버에 연결된 사용자당 RAM 사용량을 확인하고 싶었지만 방법을 찾을 수 없었습니다. 어떤 방법을 제안해주세요.

답변1

어때?

 ps aux | grep $USER | awk '{memory +=$4}; END {print memory }'
  • ps aux: BSD 구문을 사용하여 시스템의 모든 프로세스를 확인합니다.
  • $USER현재 사용자입니다. 다른 사람이 필요하면 실제 이름으로 변경하세요.

이제 마법 같은 부분을 살펴보겠습니다.

  • awk는 memory라는 변수를 생성하고 출력의 열 4를 추가하며 ps auxU $USER, 종료되면 계산된 양을 인쇄합니다.

추가: 그래픽 방식.

Smem 메모리 보고 도구

smem은 Linux 시스템의 메모리 사용량에 대한 수많은 보고서를 제공할 수 있는 도구입니다. 기존 도구와 달리 smem은 가상 메모리 시스템의 라이브러리와 애플리케이션이 사용하는 메모리 양을 보다 의미 있게 나타내는 PSS(Proportional Set Size)를 보고할 수 있습니다.

물리적 메모리의 많은 부분이 일반적으로 여러 애플리케이션에서 공유되기 때문에 RSS(Resident Set Size)로 알려진 메모리 사용량의 표준 측정은 메모리 사용량을 상당히 과대평가합니다. 대신 PSS는 각 공유 영역에 대한 각 응용 프로그램의 "공정한 점유율"을 측정하여 현실적인 측정값을 제공합니다.

smem에는 많은 기능이 있습니다:

시스템 개요 목록 프로세스별 목록, 매핑, 프로세스별 사용자 필터링, 매핑 또는 여러 데이터 소스의 사용자 구성 가능 열 구성 가능한 출력 단위 및 백분율 구성 가능한 헤더 및 합계 /proc에서 실시간 데이터 읽기 디렉토리 미러 또는 압축된 타르볼에서 데이터 스냅샷 읽기 경량 캡처 임베디드 시스템 내장 차트 생성 도구 smem에는 몇 가지 요구 사항이 있습니다.

  • 합리적으로 현대적인 커널(> 2.6.27 정도)
  • 비교적 최신 버전의 Python(2.4 정도)
  • 차트 생성을 위한 matplotlib 라이브러리(선택 사항, 자동 감지)

smem 사용

  • 사용자 중심 보기 표시: smem -u (자세한 내용은 링크에서)'

설치:

소프트웨어 센터를 통해 설치

관련 정보