가장 많은 메모리를 사용중인 프로세스를 확인하는 방법


33

freeProd 서버 중 하나를 체크인하면 70 %의 메모리가 사용되고 있음을 나타냅니다.

             total       used       free     shared    buffers     cached
Mem:     164923172  141171860   23751312          0    4555616   20648048
-/+ buffers/cache:  115968196   48954976
Swap:      8388600          0    8388600

그러나 메모리를 사용하는 프로세스를 찾지 못했습니다. top명령을 시도했으며 메모리 만 사용하는 프로세스를 표시합니다 1.1 및 5.4 %

어떤 프로세스가 메모리를 사용하고 있는지 어떻게 알 수 있습니까?

다음은 최고 명령 결과입니다.

15085 couchbas  25   0 2784m 2.4g  40m S 183.7  1.5 299597:00 beam.smp
28248 tibco     18   0  124m 100m 3440 S 20.9  0.1   2721:45 tibemsd
15334 couchbas  15   0 9114m 8.6g 3288 S  9.0  5.4  12996:28 memcached
15335 couchbas  18   0  6024  600  468 S  2.0  0.0   1704:54 sigar_port
15319 couchbas  15   0  775m 2516  944 S  0.7  0.0 269:13.41 i386-linux-godu
12167 tibco     16   0 11284 1464  784 R  0.3  0.0   0:00.04 top
12701 root      15   0  451m 427m 2140 S  0.3  0.3  18:25.02 controller
13163 root      11  -5     0    0    0 S  0.3  0.0 289:58.58 vxglm_thread


빠른 응답에 감사드립니다. 열린 모든 파일과 기억에 남는 파일을 확인할 수있는 방법이 있습니까?

1
최고 출력 을 정렬 해보십시오. 실행시 Shift + m을 누르십시오
Eenoku

답변:


50

가장 많은 메모리를 사용하는 상위 10 개의 프로세스가 표시됩니다.

ps aux --sort=-%mem | awk 'NR<=10{print $0}'

top 사용 : top을 열면 m메모리 사용량에 따라 프로세스가 짧아집니다.

그러나 이것은 문제를 해결하지 못합니다. 리눅스에서는 모든 것이 파일이나 프로세스입니다. 파일을 열면 메모리도 소모됩니다. 그래서 이것은 도움이되지 않습니다.

lsof 파일 크기 또는 바이트 단위의 파일 오프셋으로 열린 모든 파일을 제공합니다.


5
head이 awk 스크립트 대신 사용할 수 있습니다 -동일한 출력을 제공하고 많은 이상한 문자를 작성하여 자신을 저장합니다.
스티로폼은

9

램은 실제로 사용되지 않습니다. 리눅스는 기본적으로 디스크에있는 것들을 캐시하고 램의 "사용 된"섹션에 캐시하는 것을 넣습니다.

해당 RAM을 실제로 사용하는 응용 프로그램을로드하면 해당 RAM이 사용됩니다.

http://www.linuxatemyram.com/을 참조 하십시오


누가 리눅스에 대해 말했습니까?
Timothy Pulliam

영업 이익은 "I386 - 리눅스 - godu"실행중인 프로세스가
진 마이클 Celerier

6

ps 를 파이프 하고 정렬 하여 가장 많은 메모리를 사용하여 프로세스를 얻을 수 있습니다 . 또한보고자하는 다른 프로세스 세부 사항을 지정할 수 있습니다.

ps -eo pmem,pcpu,rss,vsize,args | sort -k 1 -n -r | less

추신 : 위의 내용은 메모리 열이 먼저 " sort -k 1 -n -r "이라고 가정합니다.


3

slabtop 명령을 사용하여 커널이 사용하는 슬래브 객체를 볼 수 있습니다.
또한 / proc / meminfo의 출력을 확인할 수 있습니다

출력에서이 두 줄을 찾으십시오.

Slab:              68136 kB
SReclaimable:      21208 kB 

위의 예는 커널에서 68MB의 슬래브 캐시를 사용하고 있으며 21MB를 회수 할 수 있음을 보여줍니다. 회수하려면 여기에 설명 된 기술을 사용할 수 있습니다 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html-single/Performance_Tuning_Guide/#s-memory-tunables

echo 2 > /proc/sys/vm/drop_caches  

1

대화식 분석의 경우을 사용 htop하고 기능 키 F6를 눌러 정렬 순서 (예 PERCENT_CPU: 메모리 사용률), M_RESIDENT(주거 메모리 크기, 사용 된 실제 메모리), M_SIZE(가상 메모리 크기) 또는 M_SHARE( 공유 메모리). 처음 두 가지는 관련 번호 입니다.

녹색 선은 실입니다. (대문자)를 K누르고 H숨 깁니다.

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