desember 17, 2021

hvordan sjekke minneutnyttelse I Linux

 Se ALLE GNU / Linux relaterte FAQ

Hvordan sjekker jeg minneutnyttelse I Linux ved hjelp av kommandolinje og GUI-alternativer?
vi har fysisk RAM SOM 16GB og bytte minne. Swap-minne er ikke noe annet enn diskplass som gjør At Linux-datamaskinen kan kjøre flere programmer samtidig enn det som passer inn i systemminnet (RAM). Denne siden forklarer ulike kommandoer for å sjekke minnebruk og utnyttelse I Linux ved hjelp av kommandolinje – og GUI-verktøy.

ANNONSE

Kommandoer for å sjekke minneutnyttelse I Linux

Linux-systemet ditt må kjøre på et optimalt nivå. Minne spiller en kritisk rolle I Et Linux-system. En utvikler eller erfaren sysadmin må vite den totale mengden gratis og brukt fysisk, inkludert bytte minne i serveren. Det ville være best hvis du holdt øye med buffere og cacher som brukes av kjernen også.

/proc/meminfo-filen

/proc / meminfo-filen rapporterer statistikk om minnebruk På Linux. Bruk kommandoen cat / less kommando eller grep kommando / egrep kommando som følger på Linux-boksen:
cat /proc/meminfo
more /proc/meminfo

hvordan sjekke minneutnyttelse I Linux
Hver linje i/proc / meminfo-filen består av et parameternavn, etterfulgt av et kolon, parameterverdien og en alternativ måleenhet. For eksempel, «kB».

Forstå minneutnyttelsesparametere

felt beskrivelse tabell
Parameter Beskrivelse
MemTotal Total brukbar RAM (dvs., fysisk RAM minus noen få reserverte biter og kjernen binær kode).
MemFree summen Av LowFree+HighFree.
MemAvailable (siden Linux 3.14) et estimat av hvor mye minne som er tilgjengelig for å starte nye programmer, uten å bytte.
Buffere Relativt midlertidig lagring for rå diskblokker som ikke skal bli enormt store(20MB eller så).
Bufret hurtigbuffer i minnet for filer som leses fra disken(sidebufferen). Inkluderer Ikke SwapCached.
SwapCached Minne som en gang ble byttet ut, byttes tilbake, men er fortsatt også i byttefilen.
Aktiv Minne som har blitt brukt mer nylig og vanligvis ikke gjenvunnet med mindre det er absolutt nødvendig.
Inaktivt Minne som har blitt mindre nylig brukt. Det er mer kvalifisert til å bli gjenvunnet til andre formål.
HighTotal Total mengde highmem. Highmem er alt minne over ~860 MB fysisk minne. Highmem områder er for bruk av bruker-plass programmer, eller for siden cache. Kjernen må bruke triks for å få tilgang til dette minnet, noe som gjør det tregere å få tilgang enn lowmem.
HighFree Mengde gratis highmem.
LowFree Mengde gratis lowmem.
SwapTotal Total mengde bytteplass tilgjengelig.
SwapFree mengde bytteplass som for øyeblikket er ubrukt.
Dirty Minne som venter på å bli skrevet tilbake til disken.
Writeback Minne som aktivt skrives tilbake til disken.
AnonPages ikke-filstøttede sider kartlagt i sidetabeller for brukerplass.
Kartlagt Filer som er kartlagt i minnet (med mmap(2)), for eksempel biblioteker.
Shmem mengde minne som forbrukes i tmpfs (5) filsystemer.
KReclaimable kernel allokeringer som kjernen vil forsøke å gjenvinne under minne press. Inkluderer SReclaimable (under), og andre direkte tildelinger med en shrinker.
Slab hurtigbuffer for Datastrukturer i kjernen. (Se slabinfo (5).)
SReclaimable Del Av Skive, som kan gjenvinnes, for eksempel cacher.
SUnreclaim Del Av Platen, som ikke kan gjenvinnes på minnetrykk.
KernelStack mengde minne allokert til kjernestabler.
PageTables mengde minne dedikert til det laveste nivået av sidetabeller.
NFS_Unstable nfs-sider sendt til serveren, men ikke forpliktet til stabil lagring.
Bounce Minne brukt til blokkenhet «bounce buffere».
WritebackTmp Minne som BRUKES av FUSE for midlertidige writeback-buffere.
CommitLimit dette er den totale mengden minne som er tilgjengelig for å bli tildelt på systemet, uttrykt i kilobyte. Denne grensen overholdes bare hvis streng overcommit-regnskap er aktivert (modus 2 i / proc / sys / vm / overcommit_memory). Grensen beregnes i henhold til formelen beskrevet under / proc/sys/vm / overcommit_memory.
Committed_AS mengden minne som for tiden er tildelt på systemet. Det engasjerte minnet er summen av alt minnet som har blitt tildelt av prosesser, selv om det ikke har blitt» brukt » av dem fra og med. En prosess som tildeler 1 GB minne (ved hjelp av malloc(3) eller lignende), men berører BARE 300 MB av det minnet, vises som bare 300 MB minne, selv om det har adresseplassen som er tildelt for HELE 1 GB. Denne 1gb er minne som har blitt «forpliktet» TIL AV VM og kan brukes når som helst ved tildelingsprogrammet. Med streng overcommit aktivert på systemet (modus 2 i / proc / sys / vm / overcommit_memory), vil tildelinger som overstiger CommitLimit ikke tillates. Dette er nyttig hvis man trenger å garantere at prosesser ikke vil mislykkes på grunn av mangel på minne når minnet har blitt tildelt.
VmallocTotal Total størrelse på vmalloc-minneområde.
VmallocUsed Mengde vmalloc-område som brukes. Siden Linux 4.4 er dette feltet ikke lenger beregnet, og er hardkodet som 0. Se / proc / vmallocinfo.
Vmallocchunk Største sammenhengende blokk av vmalloc-området som er gratis. Siden Linux 4.4 er dette feltet ikke lenger beregnet og er hardkodet som 0. Se / proc / vmallocinfo.
LazyFree Viser mengden minne merket av madvise (2) MADV_FREE.
AnonHugePages ikke-fil støttet store sider kartlagt i bruker-plass sidetabeller.
ShmemHugePages Minne brukt av delt minne (shmem) og tmpfs (5) tildelt med store sider
ShmemPmdMapped Delt minne kartlagt i bruker plass med store sider.
CmaTotal Totalt cma (Sammenhengende Minnetildeler) sider.
CmaFree gratis cma (Sammenhengende Minneallokator) sider.
HugePages_Total størrelsen på bassenget av store sider.
HugePages_Free antall store sider i bassenget som ennå ikke er tildelt.
HugePages_Rsvd dette er antall store sider som en forpliktelse til å tildele fra bassenget er gjort, men ingen tildeling er ennå gjort. Disse reserverte store sidene garanterer at et program vil kunne tildele en stor side fra bassenget av store sider ved feiltid.
HugePages_Surap dette er antall store sider i bassenget over verdien i /proc / sys/vm / nr_hugepages. Maksimalt antall overskudd store sider styres av /proc/sys/vm / nr_overcommit_hugepages.
Hugepagesize størrelsen på store sider.
DirectMap4k Antall byte RAM lineært kartlagt av kjernen i 4kb sider.
DirectMap4M Antall byte RAM lineært kartlagt av kjernen I 4 MB sider.
DirectMap2M Antall byte RAM lineært kartlagt av kjernen I 2 MB sider.
DirectMap1G x86 med CONFIG_X86_64 og CONFIG_X86_DIRECT_GBPAGES aktivert.

vi kan filtrere ut filen ved hjelp av grep kommandoen eller egrep kommandoen som følger:
grep -E --color 'Mem|Cache|Swap' /proc/meminfo
Linux proc meminfo file

Bruke gratis kommando for å sjekke brukt og ledig minneutnyttelse

utgangen av /proc / meminfo er kraftig, men ikke brukervennlig. Derfor må vi bruke den frie kommandoen. Den frie kommandoen viser mengden ledig og brukt minne I Linux-systemet. For eksempel:
free
Vil du se menneskelig lesbar utgang? Prøv:
free -h
free --human

Eksempel på utganger:

 total used free shared buff/cache availableMem: 94Gi 15Gi 672Mi 428Mi 78Gi 77GiSwap: 0B 0B 0B
de viste kolonnene er som følger:
Kolonne Beskrivelse
totalt totalt installert minne
brukt Brukt minne (beregnet som total-free-buffers-cache)
gratis Ubrukt minne (MemFree og SwapFree i / proc / meminfo)
delt Minne brukes mest av tmpfs (Shmem i / proc / meminfo)
buffere Minne som brukes av kjernebuffere (Buffere i / proc / meminfo)
cache Minne som brukes av sidebufferen og plater (Cached og SReclaimable i / proc / meminfo)
buff / cache Summen av buffere og cache
tilgjengelig Estimering av hvor mye minne som er tilgjengelig for å starte nye applikasjoner, uten å bytte.

vi kan gjenta utskrift gratis kommandoutgang hvert n sekund. For eksempel, skriv ut hvert 5. sekund og avslutt etter ti slike repetisjoner (teller) på skjermen:
free -s 5 -c 10
Vi kan styre produksjonen av fri kommando som følger:
free
free -k
free -g
free -m

Kontrollere fri kommando utgang
Alternativ Vis utdata i
-b, –byte
–kilo kilobyte
–mega megabyte
–giga gigabyte
–tera terabyte
–peta petabyte
-k, –kibi kibibytes
-m, –mebi mebibytes
-g, — gibi gibibytes
–tebi tebibytes
–pebi pebibytes

vmstat-kommandoen

vmstat-kommandoen er kraftig, og den viser informasjon Om Linux-maskinvare, for eksempel:

  • Prosesser
  • Minne
  • Sideveksling
  • Blokker IO
  • Feller
  • Disker
  • CPU-aktivitet

Åpne terminalen Og skriv inn følgende kommando:
vmstat
Eksempel økt fra Min Ubuntu Linux desktop:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 11434840 2567516 10238916 0 0 26 75 142 55 13 5 82 0 0

Pass-w for å se bred utgang på skjermen:
vmstat -w

procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu-------- r b swpd free buff cache si so bi bo in cs us sy id wa st 0 0 0 11405404 2567988 10324528 0 0 26 75 142 58 13 5 82 0 0
FELTBESKRIVELSE FOR VM-MODUS (Minne og Bytte)
Felt Beskrivelse
swpd mengden virtuelt minne som brukes.
gratis mengden ledig minne.
buff mengden minne som brukes som buffere.
cache mengden minne som brukes som cache.
inact mengden inaktivt minne. (- et alternativ)
aktiv mengden aktivt minne. (- et alternativ)
si mengde minne byttet inn fra disk (/s).
mengde minne byttet til disk (/s).

topp-og htop-kommando

topp-og htop-kommandoene gir en dynamisk sanntidsvisning av Et kjørende Linux-system. Dette inkluderer informasjon om:

Patreon støttespillere bare guider 🤓
  • Ingen annonser og sporing
  • dyptgående guider for utviklere og sysadmins På Opensourceflare✨
  • Bli med I Min Patreon for å støtte uavhengige innholdsskapere og begynn å lese de nyeste veiledningene:
    • hvordan sette Opp Redis sentinel cluster På Ubuntu Eller Debian Linux
    • Hvordan Sette OPP SSH-Nøkler Med YubiKey Som tofaktorautentisering (U2F/FIDO2)
    • hvordan sette Opp Mariadb Galera cluster På Ubuntu Eller Debian Linux
    • en podman – opplæring for nybegynnere-del I (kjør Linux-beholdere uten Docker Slik Beskytter Du Linux mot rogue usb-enheter ved Hjelp Av Usbguard
    • Hvis Domenet DITT IKKE SENDER E-POST, Må Du Angi Disse Dns-Innstillingene for å unngå spoofing og phishing

Registrer Deg Hos patreon ➔

  • Maskinvare og CPU utnyttelse
  • Linux oppetid
  • Minne og bytte utnyttelse
  • systemprosesser og mer

vær oppmerksom på at htop ikke er installert som standard. Men du kan enkelt installere Den på CentOS, Debian, Ubuntu og andre operativsystemer.

Kjør følgende kommando:
top
htop

Rapporter minnebruk med delt minne delt proporsjonalt

smem-verktøyet rapporterer:

  • Fysisk minnebruk tar hensyn til delte minnesider. Unshared minne er rapportert SOM USS (Unik Set Size).
  • Delt minne deles jevnt mellom prosessene som deler dette minnet.
  • uss (unshared memory) pluss en prosess andel delt minne rapporteres SOM Pss (Proporsjonal Set Size).
  • USS og PSS inkluderer bare fysisk minnebruk. De inkluderer ikke minne som har blitt byttet ut til disk.
  • Minne kan rapporteres av en prosess, av en bruker, ved tilordning eller hele systemet. Både tekstmodus og grafisk utgang er tilgjengelig.

man kan installere smem ved hjelp av apt kommandoen / apt-get kommandoen På En Debian / Ubuntu Linux:
sudo apt install smem
Kjør det som følger:
smem
# show whole system #
smem -w
# show meme usage about specifc user #
smem -u vivek
smem -u nginx
# get help #
man smem
smem --help

User Count Swap USS PSS RSS vivek 139 0 7593240 8210344 13017360

Kontrollere minneutnyttelse I Linux ved HJELP AV GUI

System Monitor er EN GUI Linux-app som viser deg hvilke programmer som kjører og hvor mye prosessortid, minne og diskplass som brukes. Vi kan åpne Systemmonitoren fra Aktivitetsoversikten. Trykk på super-tasten på tastaturet. Du kan se dine vinduer og programmer i oversikten. Du kan også bare begynne å skrive for å søke i programmene dine, for Eksempel System Monitor. Kategorien Ressurser forteller deg hvor mye av datamaskinens minne (RAM) som brukes. Slik kontrollerer du hvilke prosesser som bruker mest minne: Klikk På Prosesser-fanen. Klikk Kolonneoverskriften Minne for å sortere prosessene i henhold til minnebruk.

se dokumentasjonen for mer informasjon.

Oppsummering

du lærte Å finne Linux minne (RAM) utnyttelse På Linux VED HJELP AV GUI og cli verktøy.

🐧 Få de siste veiledningene På Linux, Åpen Kildekode & DevOps via
RSS-feed ➔ Ukentlig nyhetsbrev ➔

ANNONSE

Kategori Liste Over Unix-og Linux-kommandoer
last ned ledere wget
Dokumentasjon hjelp * mandb * man * pinfo
Diskplass analysatorer df * duf * ncdu * pydf
Filbehandling cat * cp * mindre * mkdir * mer * tre
Brannmur Alpine Awall • CentOS 8 • OPENSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04
Linux Skrivebordsprogrammer Skype * Spotify * VLC 3
Moderne verktøy bat • exa
Nettverksverktøy
OpenVPN CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04
Pakkebehandling apk * apt
Prosesser Ledelse bg * chroot * cron * fornekte • fg * blikk • gtop * iotop * jobber * killall * drepe * pidof * pstree * pwdx * tid * vtop
Søker ag * grep * whereis * which
Shell builtins compgen * ekko * printf
tekstbehandling klipp • rev
Brukerinformasjon grupper * id * lastcomm • siste * lid / libuser-lid • logname * medlemmer * brukere * whoami * hvem * w
WireGuard VPN Alpint • CentOS 8 • Debian 10 • Brannmur • Ubuntu 20.04

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.