Hur man kontrollerar minnesanvändning i Linux

när felsökning av system eller programavmattning eller dåligt beteende är en av de första sakerna att kontrollera systemminneanvändningen.

den här artikeln förklarar hur man kontrollerar RAM-användning i Linux med flera olika kommandon.

gratis kommando #

freeär det vanligaste kommandot för att kontrollera minnesanvändningen för ett Linux-system. Den visar information om det totala, använda och fria minnet.

generellt,free åberopas med-h alternativ som betyder skriva ut utdata i läsbart format:

free -h
 total used free shared buff/cache availableMem: 3936 1087 252 130 2596 2427Swap: 0 0 0

Här är vad varje kolumn betyder:

  • total-den totala mängden minne som kan användas av applikationerna.
  • använt minne. Det beräknas som: used = total - free - buffers - cache
  • gratis – Gratis / oanvänt minne.
  • delad-denna kolumn kan ignoreras; den visas endast för bakåtkompatibilitet.
  • buff / cache – det kombinerade minnet som används av kärnbuffertarna och sidcachen och plattorna. Detta minne kan återvinnas när som helst om det behövs av applikationerna.
  • tillgängligt – en uppskattning av minnet som är tillgängligt för att starta nya applikationer, utan att byta.

kommandotfree skriver ut information för det fysiska minnet och systembytet.

Toppkommando #

top är ett kommandoradsverktyg som visar realtidsinformation om de processer som körs. Det visar också systemöversikten, inklusive minnesanvändning.

för att åberopa kommandot skriver du bara top:

free -h

utgången kommer att se ut så här:

kontrollera minnesanvändning med top

utmatningens rubrik innehåller information om systemets totala, fria och använda fysiska och bytesminne.

kolumnen%MEM innehåller information om den använda delen av det tillgängliga fysiska minnet för varje pågående process.

/ proc/meminfo #

det enklaste sättet att kontrollera RAM-minnesanvändningen är att visa innehållet i /proc/meminfo virtuell fil. Den här filen används avfreetopps och andra systeminformationskommandon.

använd less eller catför att visa innehållet i /proc/meminfo fil:

cat /proc/meminfo

filen innehåller en stor mängd information om systemminne och swap användning:

MemTotal: 4030592 kBMemFree: 401804 kBMemAvailable: 2507504 kB...

informationen från/proc/meminfo filen kan analyseras och användas i skalskript.

Ps_mem Script #

ps_mem är ett Python-skript som rapporterar RAM-minnesanvändning per program. Det fungerar med både Python 2 och 3 och kan installeras med pip:

sudo pip3 install ps_mem

Running ps_mem kräver administratörsbehörighet:

sudo ps_mem

utgången kommer att innehålla minnesanvändningen för varje program som körs i stigande ordning:

 Private + Shared = RAM usedProgram... 11.9 MiB + 20.2 MiB = 32.1 MiBnginx (4) 8.2 MiB + 42.4 MiB = 50.6 MiBsystemd-journald 55.8 MiB + 307.2 MiB = 363.0 MiBphp-fpm7.4 (6)233.9 MiB + 234.0 MiB = 467.9 MiBredis-server578.2 MiB + 578.6 MiB = 1.1 GiBmysqld--------------------------------- 2.2 GiB=================================

det här skriptet är användbart när du vill ta reda på vilket program som körs tar det mesta av ditt systemminne.

slutsats #

Vi har visat dig flera kommandon som du kan använda för att kontrollera systemminneanvändningen.

Related Posts

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *