다중 사용자 Linux 시스템에서 얼마나 많은 메모리를 사용하고 있는지 알 수 있습니까? 내가 많은 메모리를 사용하고 잠재적으로 다른 사람에게 불편을 끼치고 있는지 알고 싶습니다. 필요한 경우 프로세스를 종료할 수 있습니다.
다른 질문에서 이 작업이 가능하다는 것을 보았지만 sa -m
해당 서버에서 해당 명령에 액세스할 수 없는 것 같습니다.
편집하다:sudo 액세스 권한이 없어서 물건을 설치할 수 없습니다. 서버는 CentOS입니다.
답변1
ps
다음과 함께 사용하여 awk
사용자의 실제 메모리 사용량을 찾을 수 있습니다 .
ps -U root --no-headers -o rss | awk '{ sum+=$1} END {print int(sum/1024) "MB"}'
root
여기서는 출력에 사용된 메모리를 인쇄합니다 .
답변2
나는 smem이 귀하의 경우에 더 나은 도구라고 생각합니다.
smem을 설치하고 시도해 보세요
smem -uk
데비안을 사용하는 경우 다음을 사용하여 설치할 수 있습니다.
apt-get install smem
서버에 아무것도 설치할 수 없는 경우 다음을 시도해 볼 수 있습니다.
ps haux | awk -v user=$USER '$1 ~ user { sum += $4} END { print user, sum; }'
$USER는 환경 변수이므로 설정할 필요가 없습니다.