어떤 프로세스가 모든 메모리를 차지하고 있는지 찾는 방법은 무엇입니까?


답변:


103

내부 top에서 다음을 시도 할 수 있습니다.

  • SHIFT+를 누르십시오f
  • % MEM에 해당하는 문자를 누릅니다
  • 프레스 ENTER

시도해 볼 수도 있습니다.

$ ps -eo pmem,pcpu,vsize,pid,cmd | sort -k 1 -nr | head -5

메모리 사용량에 따라 상위 5 개의 프로세스가 제공됩니다.


18
Linux에서 간단히 누르면 M실제 메모리 사용량 (RES 열)을 기준으로 정렬됩니다. * BSD에서 top -o res또는을 실행하십시오 top -o size. 그러나 htop 은 훨씬 더 좋고 메모리보다 더 많은 메모리를 소비하지 않습니다 (그러나 기본 도구 세트의 일부가 아니므로 설치하지 않았을 수 있습니다).
Gilles

2
을 눌러 s정렬 %MEM하고 나서 탈출을 위해 최고를 기록했습니다.
브라이스 Guinta

11

당신이 그것을 설치 htop 한 경우 일단 시작하면 f6, down arrow(to MEM%)를 눌러 enter메모리별로 정렬 할 수 있습니다 .


6

일단 top시작을 눌러 F정렬 필드 화면으로 전환합니다. 왼쪽에 나열된 키를 눌러 나열된 필드 중 하나를 선택하십시오. 당신은 아마 원하는 N에 대한MEM%


2
MEM %를 원할 경우 'M'을 누르면 위에서 설명한 것과 동일하게 수행됩니다. 'c'는 프로세스 목록에 명령 행 매개 변수를 추가하며 문제에 대한 정보를 제공 할 수 있습니다.
wag

6

Solaris에서 필요한 명령은 다음과 같습니다.

prstat -a -s size

내림차순 프로세스 이미지 크기 순으로 모든 프로세스가 나열됩니다. 후자는 상주하는 실제 메모리 사용이 아니라 OS가 프로세스에 커밋 한 메모리를 기반으로합니다.

Solaris에서 사용할 수있는 "최상위"버전이 있지만 표준 설치의 일부는 아닙니다.


5

한 가지 좋은 대안은 top입니다 htop. 그것을 확인하십시오, 그것은 일반 상단보다 훨씬 사용자 친화적입니다.


1

이 명령은 최상위 메모리 소비 프로세스를 식별합니다.

ps -A --sort -rss -o pid,pmem:40,cmd:500 | head -n 6 | tr -s " " ";z"

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.