어떤 프로그램이 너무 많은 메모리를 사용하고 있는지 어떻게 알 수 있습니까?


59

우분투가 최근에 충돌했습니다. 메모리가 부족하기 때문에 free -m명령을 실행하고 메모리 사용량이 실제로 높다는 것을 알았습니다 . 그래서 top범인을 찾기 위해 달려 갔지만 표시된 프로세스는 메모리의 1.5 % 미만을 사용하고있었습니다. 어떤 프로그램이 우분투 충돌 / 메모리 부족을 일으키는 지 어떻게 알 수 있습니까? 다음은 출력입니다.

shafee@shafee-pc:~$ free -m
             total       used       free     shared    buffers     cached
Mem:          3824       3714        110          0        978       1954
-/+ buffers/cache:        780       3044
Swap:           99          0         99

shafee@shafee-pc:~$ top
top - 02:12:14 up  1:24,  2 users,  load average: 0.16, 0.42, 1.49
Tasks: 182 total,   1 running, 181 sleeping,   0 stopped,   0 zombie
Cpu(s):  2.9%us,  1.9%sy,  0.3%ni, 79.3%id, 15.5%wa,  0.0%hi,  0.2%si,  0.0%st
Mem:   3916708k total,  3803848k used,   112860k free,  1002308k buffers
Swap:   102396k total,        0k used,   102396k free,  2001852k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
 4200 root      20   0  289m  53m  38m S    2  1.4   1:06.45 Xorg               
 5590 shafee    20   0 19348 1368  956 R    2  0.0   0:00.01 top                
    1 root      20   0 24124 2136 1264 S    0  0.1   0:02.05 init               
    2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd           
    3 root      20   0     0    0    0 S    0  0.0   0:24.23 ksoftirqd/0        
    6 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/0        
    7 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/1        
    9 root      20   0     0    0    0 S    0  0.0   0:00.11 ksoftirqd/1        
   11 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/2        
   13 root      20   0     0    0    0 S    0  0.0   0:03.89 ksoftirqd/2        
   14 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/3        
   16 root      20   0     0    0    0 S    0  0.0   0:00.16 ksoftirqd/3        
   17 root       0 -20     0    0    0 S    0  0.0   0:00.00 cpuset             
   18 root       0 -20     0    0    0 S    0  0.0   0:00.00 khelper            
   19 root       0 -20     0    0    0 S    0  0.0   0:00.00 netns              
   21 root      20   0     0    0    0 S    0  0.0   0:00.01 sync_supers        
shafee@shafee-pc:~$

아니면 110MB의 사용 가능한 메모리가있는 것이 정상입니까? 그리고 다른 문제와 관련이 있습니까?


스왑이 충분하지 않은 것 같습니다. RAM 크기의 약 2 배인 권장
Marco Ceppi

답변:


74

free잘못 출력을 읽고 있습니다. Linux Kernel은 자체 메모리 관리를 많이 수행하여 실제 필요한 것보다 더 많은 것을 할당합니다. 따라서 실제 "Free Memory"는 3044실제 "Free"열에 있으며 +/- Buffers/cache실제로는 780MB 만 사용됩니다.

기본적 top으로 CPU 소비를 기준으로 정렬됩니다. Shift+ M를 눌러 소비 된 메모리의 백분율을 기준으로 정렬하여 커널에 할당 된 메모리를 사용하는 소프트웨어를 더 잘 파악할 수 있습니다.


free -m
             total       used       free     shared    buffers     cached
Mem:          7873       3916       3956          0        231       1117
-/+ buffers/cache:       2567       5305
Swap:        12401          0      12401

그리고 메모리가 정렬 된 상단 :

top - 17:05:18 up 2 days,  1:40,  4 users,  load average: 0.21, 0.14, 0.11
Tasks: 237 total,   1 running, 234 sleeping,   0 stopped,   2 zombie
Cpu(s):  1.6%us,  0.8%sy,  0.1%ni, 96.7%id,  0.8%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8062420k total,  4013632k used,  4048788k free,   237204k buffers
Swap: 12699644k total,      292k used, 12699352k free,  1144752k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                          
 1632 root      20   0  884m 240m 6532 S    0  3.1   1:20.17 java                                                                                                                                                                             
 3911 marco     20   0 1011m 165m  22m S    0  2.1   9:20.62 chrome                                                                                                                                                                           
 3852 marco     20   0  770m 162m  45m S    0  2.1  14:59.59 chrome                                                                                                                                                                           
 1091 root      20   0  491m 160m 118m S    3  2.0  29:19.44 Xorg                                                                                                                                                                             
 1747 marco     20   0  659m 108m  34m S    1  1.4  18:43.92 compiz                                                                                                                                                                           
 3964 marco     20   0 1113m  99m  21m S    0  1.3  18:51.88 chrome                                                                                                                                                                           
 1759 marco     20   0  668m  94m  21m S    0  1.2   2:27.42 nautilus                                                                                                                                                                         
 3046 marco     20   0  788m  86m  26m S    0  1.1   1:22.96 evolution                                                                                                                                                                        
 1793 marco     20   0  647m  85m  18m S    0  1.1   0:12.74 shutter                                                                                                                                                                          
 1791 marco     20   0  404m  85m  13m S    0  1.1   5:19.51 bitcoin                                                                                                                                                                          
 2938 marco     20   0  809m  78m  31m S    0  1.0   1:01.07 empathy                                                                                                                                                                          
 9630 marco     20   0  265m  73m  19m S    1  0.9  12:41.52 skype                                                                                                                                                                            
 9618 marco     20   0  914m  64m  21m S    0  0.8   1:14.04 chrome                                                                                                                                                                           
 1777 marco     20   0  432m  64m  14m S    0  0.8   1:45.96 pastie

마지막으로 실제 소프트웨어가 무엇인지 진단하는 데 도움이되도록 -c플래그를 맨 ​​위에 전달하십시오 top -c. 실행중인 명령의 전체 경로, 이름 및 매개 변수가 제공됩니다.


thanks : / 내 충돌이 다른 것과 관련이있는 것 같습니다.
shxfee

1
@Shafee 그런 다음 새로운 질문을 열어 충돌 원인을 설명하고 관련 로그 파일 또는 세부 정보를 제공하여 충돌 해결에 도움이 될 수 있는지 확인할 수 있습니다.
Marco Ceppi

1
와. 또 새로운 것을 배웠습니다 .... 아직도 마르코를 건배합니다!
andybleaden



3

응용 프로그램 gnome-system-monitor를 시작할 수 있습니다. 어떤 응용 프로그램에서 사용되는 램의 양과 CPU 사용량도 확인하는 것이 가장 좋습니다. 예를 들어 비디오 등을 변환하려는 경우 프로세스의 우선 순위를 더 빠르게 실행하도록 변경할 수 있습니다.


1
ec2 cmd 줄에 gnome-system-monitor가 없습니다. 대안이 있습니까?
Siddharth

3
@Siddharth 당신은 htop더 좋은 버전의 top을 사용할 수 있습니다 . CPU 또는 RAM 사용량을 기준으로 정렬하려면 F6을 누르십시오.
rosch

@Siddharth GUI를 사용하지 않고 시스템에 gnome-system-monitor를 설치할 수 있습니다 (하지만 약간의 종속성을 설치합니다). 그런 다음 Linux 클라이언트가있는 한 X 전달을 통해 실행할 수 있습니다.
Kris Jace

1

에서 쿠분투 난 그냥 누르 Ctrl- Esc, 메모리, CPU ... : 다음 관심의 필드를 사용하여 물건을 분류

여기에 이미지 설명을 입력하십시오


0

이것은 좋은 질문이지만 정보는 사용 가능한 메모리가 많다는 것을 보여줍니다. 그래도 메모리 사용량을 모니터링해야합니다.

내가 가장 좋아하는 시스템 모니터는 conky메모리 디스플레이입니다.

Conky.gif

총 메모리 라인은 7.4GiB 중 2.5GiB가 사용 중임을 나타냅니다.

자세한 메모리 라인은 다음을 보여줍니다.

  • Web Content7 %의 메모리를 사용하고 있습니다. 이것은 Firefox 서브 프로그램입니다.
  • Firefox 자체가 메모리의 7 %를 사용하고 있습니다
  • ffmpeg3 %의 메모리를 사용하고 있습니다. 이것은이다 .gif레코더 peek우리가보고있는 비디오를 제작.

Conky는 고도로 구성 가능하며 모든 사람의 데스크탑이 다르게 보입니다. 당신은 구글 conky과 787 천 명중을 얻을 수 있습니다 .

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