kun vianmääritysjärjestelmä tai sovellus hidastuu tai käyttäytyy huonosti, yksi ensimmäisistä tarkistettavista asioista on järjestelmän muistin käyttö.
tässä artikkelissa kerrotaan, miten RAM-muistin käyttö Linuxissa voidaan tarkistaa useiden eri komentojen avulla.
vapaa komento #
free
on yleisimmin käytetty komento Linux-järjestelmän muistinkäytön tarkistamiseen. Se näyttää tietoja kokonaismuistista, käytetystä ja vapaasta muistista.
yleensä free
vedotaan -h
vaihtoehto, joka tarkoittaa tulosteen tulostamista ihmisluettavassa muodossa:
free -h
total used free shared buff/cache availableMem: 3936 1087 252 130 2596 2427Swap: 0 0 0
tässä mitä jokainen sarake tarkoittaa:
- yhteensä-sitä muistin kokonaismäärää, jota sovellukset voivat käyttää.
- käytetty muisti. Se lasketaan seuraavasti:
used = total - free - buffers - cache
- vapaa – vapaa / käyttämätön muisti.
- jaettu – tämä sarake voidaan jättää huomiotta; se näytetään vain taaksepäin yhteensopivuudesta.
- buff / cache – ytimen puskureiden ja sivukätkön ja-laattojen käyttämä yhdistetty muisti. Tämä muisti voidaan palauttaa milloin tahansa, jos Sovellukset sitä tarvitsevat.
- käytettävissä – arvio muistista, joka on käytettävissä uusien sovellusten käynnistämiseen vaihtamatta.
free
komento tulostaa tietoja fyysiselle muistille ja järjestelmän vaihdolle.
top Command #
top
on komentorivityökalu, joka näyttää reaaliaikaista tietoa käynnissä olevista prosesseista. Se näyttää myös järjestelmän yhteenvedon, mukaan lukien muistin käytön.
kutsuaksesi komennon yksinkertaisesti kirjoita top
:
free -h
lähtö näyttää jokseenkin tältä:
tulosteen otsikko sisältää tiedot järjestelmän kokonaisuudesta, vapaasta sekä käytetystä fyysisestä ja swap-muistista.
%MEM
sarake antaa tietoa käytettävissä olevan fyysisen muistin käytetystä osuudesta kussakin suoritusprosessissa.
/proc/meminfo #
yksinkertaisin tapa tarkistaa RAM-muistin käyttö on näyttää /proc/meminfo
virtuaalitiedoston sisältö. Tätä tiedostoa käyttävät free
top
ps
ja muut järjestelmän tietokomennot.
käytä less
tai cat
nähdäksesi /proc/meminfo
tiedoston sisällön:
cat /proc/meminfo
tiedosto sisältää suuren määrän tietoa järjestelmien muistista ja swap-käytöstä:
MemTotal: 4030592 kBMemFree: 401804 kBMemAvailable: 2507504 kB...
/proc/meminfo
tiedosto voidaan jäsentää ja sitä voidaan käyttää komentotulkin skripteissä.
ps_mem Script #
on Python-skripti, joka raportoi ohjelmakohtaisen RAM-muistin käytöstä. Se toimii sekä Python 2: lla että 3: lla ja voidaan asentaa pip
:
sudo pip3 install ps_mem
ajaminen ps_mem
vaatii järjestelmänvalvojan oikeudet:
sudo ps_mem
lähtö sisältää jokaisen käynnissä olevan ohjelman muistinkäytön nousevassa järjestyksessä:
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=================================
Tämä skripti on hyödyllinen, kun haluat selvittää, mikä käynnissä oleva ohjelma vie suurimman osan järjestelmämuististasi.
johtopäätös #
olemme näyttäneet useita komentoja, joilla voit tarkistaa järjestelmän muistin käytön.