når feilsøking system eller program nedgang eller dårlig oppførsel, en av de første tingene å sjekke er systemminnebruk.
denne artikkelen forklarer hvordan DU kontrollerer RAM-bruk I Linux ved hjelp av flere forskjellige kommandoer.
Gratis Kommando #
free
er den mest brukte kommandoen for å sjekke minnebruken Til Et Linux-system. Den viser informasjon om totalt, brukt og ledig minne.
generelt, free
er påberopt med -h
her er hva som skjer:
free -h
total used free shared buff/cache availableMem: 3936 1087 252 130 2596 2427Swap: 0 0 0
hver kolonne betyr:
- total-den totale mengden minne som kan brukes av programmene.
- brukt-Brukt minne. Det beregnes som:
used = total - free - buffers - cache
- free-Gratis / Ubrukt minne.
- delt-denne kolonnen kan ignoreres; den vises bare for bakoverkompatibilitet.buff/cache-det kombinerte minnet som brukes av kjernebuffere og sidebuffer og plater. Dette minnet kan gjenvinnes når som helst ved behov av programmene.
- tilgjengelig-et estimat av minnet som er tilgjengelig for å starte nye applikasjoner uten å bytte.
kommandoenfree
skriver ut informasjon for det fysiske minnet og systembyttet.
Topp Kommando #
top
er et kommandolinjeverktøy som viser sanntidsinformasjon om kjørende prosesser. Det viser også system sammendrag, inkludert minnebruk.
for å påkalle kommandoen skriv bare top
:
free -h
utgangen vil se slik ut:
overskriften på utgangen inneholder informasjon om systemets totale, frie og brukte fysiske minne og bytt minne.
kolonnen%MEM
gir informasjon om den brukte delen av det tilgjengelige fysiske minnet for hver kjørende prosess.
/proc/meminfo #
den enkleste måten å sjekke ram-minnebruken på er å vise innholdet i/proc/meminfo
virtuell fil. Denne filen brukes av free
top
ps
og andre systeminformasjonskommandoer.
Bruk less
eller cat
for å vise innholdet i/proc/meminfo
fil:
cat /proc/meminfo
filen inneholder en stor mengde informasjon om systemer minne og bytte bruk:
MemTotal: 4030592 kBMemFree: 401804 kBMemAvailable: 2507504 kB...
informasjonen fra /proc/meminfo
filen kan analyseres og brukes i shell skript.
ps_mem Script #
ps_mem
er Et Python-skript som rapporterer RAM-minnebruk per program. Det fungerer med Både Python 2 og 3 og kan installeres med pip
:
sudo pip3 install ps_mem
Kjører ps_mem
krever administratorrettigheter:
sudo ps_mem
utgangen vil inkludere minnebruken til hvert kjørende program i stigende rekkefølge:
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=================================
dette skriptet er nyttig når du vil finne ut hvilket kjørende program som tar mesteparten av systemminnet.
Konklusjon #
vi har vist deg flere kommandoer som du kan bruke til å sjekke systemminnebruken.