logo

Tyhjennä Linuxin välimuisti

Tässä opetusohjelmassa opimme tyhjentämään RAM-välimuistin Linuxissa ja puhdistamaan Swap-tilan.

Kuten kaikki muutkin käyttöjärjestelmät, myös GNU/ Linux on ottanut käyttöön muistinhallintajärjestelmän. Vaikka Linuxin muistinhallinta on paljon tehokasta ja jopa paljon käytettyä kuin muut käyttöjärjestelmät. Kuitenkin joissakin tapauksissa, joissa haluat hallita muistin hallintaa tai jos yksi tai useampi prosessi kuluttaa järjestelmäsi RAM-muistia. Tällaisessa tapauksessa haluamme lopettaa sen; Linux tarjoaa muutamia tapoja huuhdella (tyhjennä RAM-välimuisti).

Tyhjennä Linuxin välimuisti

Kuinka tyhjentää välimuisti Linuxissa?

Lähes jokaisessa Linux-järjestelmässä on kolme menetelmää välimuistin tyhjentämiseksi. Joitakin näistä voidaan käyttää erinomaisesti keskeyttämättä käynnissä olevia prosesseja tai palveluita. Kolme tapaa ovat seuraavat:

  1. Tyhjennä vain PageCache
  2. Tyhjennä hampaat ja inodit
  3. Tyhjennä hammastukset ja inodit, tyhjennä PageCache

Käsittelemme yksityiskohtaisesti kaikkia kolmea menetelmää ja näemme myös niiden käytännön toteutuksen:

1. Tyhjennä vain PageCache-

Tämä menetelmä on yksi turvallisimmista tavoista puhdistaa Linuxin välimuisti, koska se voi tyhjentää välimuistin tappamatta käynnissä olevia toimintoja, sovelluksia ja palveluita. Tämän sanotaan olevan turvallisin tapa puhdistaa välimuisti, koska sitä voidaan käyttää tuotannossa, ja se puhdistaa vain PageCachen. Tässä menetelmässä käytetään seuraavia komentoja:

Komento

 # sync ; echo 1 > proc/sys/vm/drop_caches 

Selitys:

Yllä olevassa komennossa ' synkronointi ' käytetään tiedostojärjestelmän puskurin tyhjentämiseen ja komento erotetaan komennolla ' ; ' suoritetaan peräkkäin.

Komentotulkki kuitenkin odottaa jokaisen komennon suorittamista tai lopettamista ennen kuin se aloittaa seuraavan sekvenssissä olevan komennon suorittamisen.

The drop_caches käytetään välimuistin huuhtelemiseen tai puhdistamiseen tappamatta tai vaikuttamatta muihin käynnissä oleviin sovelluksiin tai palveluihin, kuten myös ytimen dokumentaatiossa selvästi mainitaan. ' kaiku '-komento kirjoittaa tiedostoihin.

Vaiheet PageCachen tyhjentämiseksi terminaalilla:

Vaihe 1 - Avaa pääte Linuxissa ja kirjoita seuraava annettu komento ja paina Enter. Kun komento on suoritettu, se näyttää tiedot järjestelmän muistista, kuten esimerkissä näkyy:

mikä on kirjainkoko sql:ssä

Komento

 free 

Yllä olevaa komentoa käytetään näyttämään kuinka paljon muistia on käytetty ja näyttämään muita tekijöitä, kuten käytettävissä olevan muistin kokonaismäärä, vaihtomuisti jne. Voimme käyttää tätä ' vapaa '-komento juuri ennen ja jälkeen, kun käytät kutakin menetelmää.

On välttämätöntä käyttää 'free'-komentoa ennen varsinaisen komennon suorittamista ja sen jälkeen, jotta voimme helposti nähdä tai havaita muutokset muistin varauksessa. Katsotaanpa esimerkkiä ymmärtääksesi, kuinka koko prosessi todella toimii:

Esimerkki

Tyhjennä Linuxin välimuisti

2. Tyhjennä hampaat ja inodes-

Tätä menetelmää käytetään muistin tyhjentämiseen hampaista ja inodeista. Se on aivan kuten ensimmäinen menetelmä, mutta hieman erilainen, koska sitä käytetään tyhjentämään muisti dentryistä ja inodeista sekä PageCachen muistin tyhjentämisen sijaan. Silti se on paljon kuin ensimmäinen menetelmä, josta olemme keskustelleet edellä. Tässä menetelmässä käytetty komento on annettu alla:

Komento

merkkijonoarvo
 # sync ; echo 2 > proc / sys / vm / drop_caches 

Katsotaanpa esimerkkiä tämän menetelmän toteuttamisen ymmärtämiseksi:

Esimerkki

Tyhjennä Linuxin välimuisti

3. Tyhjennä dentries ja inodes, tyhjennä PageCache

Se on yksi tehokkaimmista menetelmistä. Siitä huolimatta, että sitä ei perinteisesti suositella käytettäväksi ennen kuin tiedät mitä olet tekemässä, koska sitä ei pidetä turvallisimpana käyttää, etenkään tuotannossa. Tässä menetelmässä käytetty komento käyttää 'echo 3 >' -komentoa, joka puhdistaa PageCachen, dentries- ja inode-tiedostot samanaikaisesti.

Komento:

 # sync ; echo 3 > / porc / sys / vm / drop_caches 

Ymmärtääksesi tarkemmin, kuinka se todella toimii, harkitse annettua esimerkkiä:

Esimerkki:

Tyhjennä Linuxin välimuisti

Huomautus: Sitä ei suositella käytettäväksi tuotannossa, ellet tiedä mitä olet tekemässä, koska se puhdistaa välittömästi PageCachen ja dentryt sekä inodet, kuten olemme jo käsitelleet yllä.

Vaihda tilaa

Yleensä swap-tilaa käytetään, kun fyysisen muistin käyttöaste on melkein huipussaan. Joten kun ja jos järjestelmä tarvitsee lisää muistiresursseja ja fyysinen ram täyttyy, kaikki passiiviset sivut siirretään swap-muistitilaan.

Kuitenkin myös swap-muistitila auttaa järjestelmää pienenä mutta tehokkaana RAM-määränä. Silti epäilemättä ei ole suositeltavaa pitää Swap Spacea fyysisenä ramina.

Kuinka tyhjentää sivutustila Linuxissa?

Tyhjentääksesi järjestelmän swap-muistin, sinun on yksinkertaisesti poistettava Swap-toiminto. Tämä siirtää kaikki tiedot vaihtomuistista takaisin RAM-muistiin. Se tarkoittaa myös, että sinun on oltava varma, että järjestelmässäsi on tarpeeksi RAM-muistia tämän toiminnon tukemiseksi.

Helppo tapa tehdä tämä on suorittaa 'vapaa-m' -komento nähdäksesi, mitä Swapissa käytetään, RAM-muistia ja poista sitten Swap käytöstä.

Kun olet sammuttanut sen, odota vähintään 30 sekuntia, jotta toiminto valmistuu, ja kytke sitten Swap takaisin päälle. Tämä tyhjentää swap-muistin välimuistin ja ottaa sen uudelleen käyttöön, mutta ennen Swap-toiminnon tyhjentämistä sinun pitäisi nähdä järjestelmäsi nykyinen (tai oletusasetus).

Nähdäksesi nykyisen järjestelmän vaihtoasetuksen, sinun tarvitsee vain avata pääte käyttämällä seuraavaa komentoa tulosteen mukaisesti:

 cat /proc/sys/vm/swappiness 

Lähtö

Tyhjennä Linuxin välimuisti

Kuten näet, järjestelmämme nykyinen Swappiness-arvo on '60' sekuntia. Jos kuitenkin haluat muuttaa sitä, voit asettaa sen mihin tahansa väliltä 0 - 100. Tämän arvon muokkaaminen (päivitys) on melko yksinkertainen. Kaikki, sinun on kirjoitettava seuraava komento terminaaliin ja paina enter:

Komento:

 sudo sysctl vm.swappiness=x 

(Tässä x on swap-arvo, jonka haluamme asettaa)

apple emojit Androidissa

Kuten yllä annetusta lähdöstä näet, järjestelmämme nykyinen swap-arvo (tai oletusarvo) on 60. Yritetään muuttaa swap-arvo arvoon 40.

1. Avaa pääte painamalla Ctrl+Alt+T näppäimistöllä.

Tyhjennä Linuxin välimuisti

2. Kun pääte avautuu, kirjoita seuraava komento ja paina enteriä alla olevan kuvan mukaisesti:

 sudo sysctl vm.swappiness=40 

Lähtö

Tyhjennä Linuxin välimuisti

Huomautus: Se saattaa pyytää sinua antamaan salasanan, koska meidän on suoritettava tämä komento superUser (root user) -oikeuksilla.

Todentaminen

Varmistaaksesi, että swap-arvo on päivitetty onnistuneesti, kirjoita seuraava komento ja paina Enter-painiketta:

 cat /proc/sys/vm/swappiness 

Lähtö

Tyhjennä Linuxin välimuisti

Kuten tulosteessa näkyy, olemme onnistuneesti päivittäneet swap-arvon arvoon 40.

Tyhjennä vaihtotila

Swap-tilan tyhjentäminen prosessi on melko yksinkertainen, koska meidän on yksinkertaisesti tarpeen pyöräile pois Swap, jonka vuoksi kaikki tiedot tai passiiviset sivut siirretään takaisin RAM-muistiin Swap-muistitilasta. Kun olet lopettanut Swap-tilan, sinun on odotettava 30 sekuntia ja käynnistettävä uudelleen tai siirryttävä swap-tilaan uudelleen.

Hyödyllisiä komentoja:

Nämä ovat joitain peruskomentoja, jotka auttavat meitä puhdistamaan vaihtotilaa:

Tyhjennä Linuxin välimuisti

Vaihemuistin tyhjennysohjeet

Katsotaanpa, kuinka näitä komentoja käytetään sivutustilan tai muistin tyhjentämiseen:

Vaihe 1. Avaa pääte painamalla ' Ctrl+Alt+T ' näppäimistöllä.

Vaihe 2. Kun terminaali avautuu, kirjoita ' sudo -i ' komento, koska saatamme vaatia pääkäyttäjän oikeudet suorittaaksesi yllä annetut komennot:

Tyhjennä Linuxin välimuisti

Vaihe 3. Kirjoita 'free -m' -komento nähdäksesi muistin käytön ennen pyöräile pois the Vaihtaa :

javascript silmukalle
Tyhjennä Linuxin välimuisti

Vaihe - 4 Kirjoita nyt Vaihto -a '-komento ja paina Enter-näppäintä sammuttaaksesi Swap-toiminnon alla olevan kuvan mukaisesti:

Tyhjennä Linuxin välimuisti

Vaihe 5. Jälkeen pyöräile pois , Swap odottaa vähintään 40 sekuntia.

Vaihe 6. Kirjoita nyt 'swap-a' ja ota Swap uudelleen käyttöön painamalla Enter. Jos haluat nähdä eron (tai muutoksen) muistin käytössä, suorita 'free-m' -komento vielä kerran alla olevan kuvan mukaisesti:

Tyhjennä Linuxin välimuisti

Toivottavasti tämä auttaa sinua tyhjentämään järjestelmäsi swap-muistin, jos joskus joudut tällaiseen tilanteeseen.