U ovom vodiču naučit ćemo kako očistiti RAM predmemoriju u Linuxu i očistiti Swap prostor.
Kao i svi drugi operativni sustavi, GNU/Linux također ima implementiran sustav upravljanja memorijom. Iako je upravljanje memorijom u Linuxu mnogo učinkovitije i čak mnogo korišteno od drugih operativnih sustava. Međutim, u nekim slučajevima kada želite kontrolirati upravljanje memorijom ili ako postoji jedan ili više procesa koji troše RAM vašeg sustava. U tom slučaju želimo to zaustaviti; Linux pruža nekoliko načina za ispiranje (čišćenje ram cache memorije).
Kako očistiti predmemoriju u Linuxu?
Gotovo u svakom Linux sustavu postoje tri metode za brisanje predmemorije. Neki od njih mogu se izvanredno koristiti bez prekidanja tekućih procesa ili usluga. Ova tri načina su sljedeća:
- Očisti samo PageCache
- Očistite zube i inode
- Očisti zublje i inode, Izbriši PageCache
Detaljno ćemo razmotriti sve tri metode i vidjeti njihovu praktičnu primjenu:
1. Očisti samo PageCache-
Ova je metoda jedan od najsigurnijih načina za čišćenje predmemorije Linuxa jer može očistiti predmemoriju bez prekidanja tekućih operacija, aplikacija i usluga. Kaže se da je ovo najsigurniji način čišćenja predmemorije jer se može koristiti u proizvodnji, a čisti samo PageCache. U ovoj metodi koriste se sljedeće naredbe:
Naredba
# sync ; echo 1 > proc/sys/vm/drop_caches
Obrazloženje:
U gornjoj naredbi, ' sinkronizacija ' koristi se za ispiranje međuspremnika datotečnog sustava, a naredba je odvojena pomoću ' ; ' izvršavaju se na sekvencijalan način.
Međutim, ljuska čeka da se svaka naredba izvrši ili prekine prije nego započne izvršavanje sljedeće naredbe dostupne u nizu.
zvijezda topologija
The drop_caches koriste se za ispiranje ili čišćenje predmemorije bez uništavanja ili utjecaja na bilo koju drugu pokrenutu aplikaciju ili uslugu, kao što je to također jasno spomenuto u dokumentaciji kernela. ' jeka ' naredba obavlja posao pisanja u datoteke.
Koraci za brisanje PageCache-a pomoću terminala:
Korak 1 - Otvorite terminal u Linuxu i upišite sljedeću zadanu naredbu i pritisnite enter. Nakon što se naredba izvrši, prikazat će informacije o memoriji sustava, kao što je prikazano u primjeru:
Naredba
free
Gornja naredba koristi se za prikaz koliko je memorije iskorišteno i za prikaz drugih faktora kao što je ukupna dostupna memorija, swap memorija, itd. Možemo koristiti ovo ' besplatno ' naredba neposredno prije i poslije dok koristite svaku metodu.
Prije i nakon izvršenja stvarne naredbe potrebno je koristiti naredbu 'free' kako bismo lakše vidjeli ili otkrili promjene u dodjeli memorije. Pogledajmo primjer da shvatimo kako cijeli proces zapravo funkcionira:
usporediti s nizom
Primjer
2. Očistite zube i inode-
Ova se metoda koristi za brisanje memorije zubaca i inodova. To je isto kao i prva metoda, ali malo drugačija jer se koristi za brisanje memorije zubaca i inodesa umjesto brisanja memorije PageCache-a. Ipak, vrlo je sličan prvoj metodi o kojoj smo raspravljali gore. Naredba koja se koristi u ovoj metodi data je u nastavku:
Naredba
# sync ; echo 2 > proc / sys / vm / drop_caches
Pogledajmo primjer da bismo razumjeli kako implementirati ovu metodu:
Primjer
3. Očistite dentries i inode, Clear PageCache
To je jedna od najučinkovitijih metoda. Ipak, tradicionalno se ne preporuča koristiti dok ne znate što radite jer se ne smatra najsigurnijim za korištenje, pogotovo u proizvodnji. Naredba koja se koristi u ovoj metodi koristi 'echo 3 >' koja istovremeno čisti PageCache, dentries i inodes.
Naredba:
# sync ; echo 3 > / porc / sys / vm / drop_caches
Da biste detaljnije razumjeli kako to zapravo radi, razmotrite navedeni primjer:
Primjer:
Napomena: Ne preporuča se koristiti ga u proizvodnji osim ako ne znate što radite jer će trenutno očistiti PageCache i dentries, inode također, kao što smo već spomenuli gore.
Zamijeni prostor
Općenito, swap prostor se koristi kada je iskorištenost fizičke memorije gotovo na vrhuncu. Dakle, kada i ako sustav treba više memorijskih resursa i fizički ram se napuni, sve neaktivne stranice se prenose u swap memorijski prostor.
Međutim, swap memorijski prostor također pomaže sustavu kao mala, ali učinkovita količina Ram-a. Ipak, bez sumnje se ne preporuča smatrati Swap Space fizičkim ovnom.
Kako očistiti swap prostor u Linuxu?
Za brisanje swap memorije na vašem sustavu, jednostavno trebate isključiti Swap. Ovo će premjestiti sve podatke iz swap memorije natrag u RAM. To također znači da morate biti sigurni da imate dovoljno RAM-a u svom sustavu za podršku ove operacije.
Jednostavan način da to učinite je da pokrenete 'free-m' da vidite što se koristi u Swapu, RAM-u, a zatim onemogućite Swap.
Nakon što ga isključite, trebali biste pričekati 30 sekundi ili više kako biste imali neko vrijeme da se operacija završi, a zatim ponovno uključite Swap. Ovo briše predmemoriju swap memorije i ponovno je omogućuje, ali prije brisanja Swapa, trebali biste vidjeti trenutnu (ili zadanu) postavku vašeg sustava.
Da biste vidjeli trenutnu postavku swappinessa vašeg sustava, trebate samo otvoriti terminal upotrijebiti sljedeću naredbu kao što je prikazano u izlazu:
cat /proc/sys/vm/swappiness
Izlaz
Kao što vidite, trenutna vrijednost Swappiness našeg sustava je '60' sekundi. Međutim, ako je želite promijeniti, možete je postaviti bilo gdje između 0 i 100. Proces uređivanja (ažuriranja) ove vrijednosti prilično je jednostavan. Sve, trebate upisati sljedeću naredbu u terminalu i pritisnuti enter:
Naredba:
sudo sysctl vm.swappiness=x
(Ovdje je x swap vrijednost koju želimo postaviti)
Kao što možete vidjeti u gore danom izlazu, trenutna swap vrijednost (ili zadana vrijednost) našeg sustava je 60. Pokušajmo promijeniti swap vrijednost na 40.
1. Otvorite terminal pritiskom na Ctrl+Alt+T na tipkovnici.
2. Nakon što se terminal otvori, upišite sljedeću naredbu i pritisnite enter, kao što je prikazano na slici ispod:
sudo sysctl vm.swappiness=40
Izlaz
Napomena: Može od vas tražiti da unesete lozinku jer moramo pokrenuti ovu naredbu s privilegijama superUser (root user).
Verifikacija
sortiranje umetanjem u Javi
Da biste provjerili je li swap vrijednost uspješno ažurirana, upišite sljedeću naredbu i pritisnite gumb Enter:
cat /proc/sys/vm/swappiness
Izlaz
Kao što možete vidjeti u izlazu, uspješno smo ažurirali swap vrijednost na 40.
Očistite prostor za razmjenu
Da biste očistili swap prostor, postupak je prilično jednostavan jer to jednostavno moramo isključiti ciklus Swap, zahvaljujući kojem se svi podaci ili neaktivne stranice iz Swap memorijskog prostora prebacuju natrag u RAM. Nakon što isključite Swap, morate pričekati 30 sekundi i morati ponovno pokrenuti ili ponovno kružiti na swap prostoru.
Korisne naredbe:
Ovo su neke osnovne naredbe koje će nam pomoći u čišćenju Swap prostora:
Koraci za brisanje Swap memorije
Pogledajmo kako koristiti ove naredbe za brisanje swap prostora ili memorije:
Korak 1. Otvorite terminal pritiskom na ' Ctrl+Alt+ T ' na tipkovnici.
Korak 2. Kada se terminal otvori, upišite ' sudo -i ' jer bismo mogli zahtijevati privilegije superkorisnika za pokretanje gore navedenih naredbi:
Korak 3. Upišite naredbu 'free -m' kako biste vidjeli iskorištenost memorije prije isključiti ciklus the Zamjena :
java indeks od
Korak - 4 Sada upišite ' Zamjena -a ' naredbu i pritisnite enter da biste isključili Swap kao što je prikazano u nastavku:
Korak 5. Nakon što isključiti ciklus , Swap čeka najmanje 40 sekundi.
Korak 6. Sada upišite 'swap-a' i pritisnite enter da biste ponovno omogućili Swap. Da vidite razliku (ili promjenu) u upotrebi memorije, pokrenite naredbu 'free-m' još jednom, kao što je prikazano u nastavku:
Nadamo se da će vam ovo pomoći da očistite swap memoriju vašeg sustava ako se ikad nađete u takvoj situaciji.