logo

Изчистване на кеша Linux

В този урок ще научим как да изчистим RAM кеша в Linux и да почистим пространството за размяна.

Точно както всички други операционни системи, GNU/Linux също има внедрена система за управление на паметта. Въпреки това управлението на паметта на Linux е много по-ефективно и дори много използвано в сравнение с други операционни системи. Въпреки това, в някои случаи, когато искате да контролирате управлението на паметта или ако има един или повече процеси, които изяждат RAM на вашата система. В такъв случай искаме да го спрем; Linux предоставя няколко начина за промиване (изчистване на ram кеша).

Изчистване на кеша Linux

Как да изчистите кеша в Linux?

Почти във всяка Linux система има три предоставени метода за изчистване на кеша. Някои от тях могат да се използват забележително, без да се прекъсват текущите процеси или услуги. Трите начина са както следва:

  1. Изчистване само на PageCache
  2. Изчистване на вдлъбнатини и иноди
  3. Изчистване на dentries и inodes, Clear PageCache

Ще разгледаме подробно и трите метода и ще видим тяхното практическо приложение:

1. Изчистете само PageCache-

Този метод е един от най-безопасните начини за почистване на кеша на Linux, тъй като може да изчисти кеша, без да убива текущите операции, приложения и услуги. Твърди се, че това е най-безопасният начин за почистване на кеша, тъй като може да се използва в производството и почиства само PageCache. В този метод се използват следните команди:

командване

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

Обяснение:

В горната команда, ' синхронизиране ' се използва за изчистване на буфера на файловата система и командата се разделя с ' ; ' се изпълняват по последователен начин.

Обвивката обаче изчаква всяка команда да бъде изпълнена или прекратена, преди да започне изпълнението на следващата налична команда в последователността.

The drop_caches се използват за промиване или почистване на кеша, без да убиват или засягат друго работещо приложение или услуги, както е ясно споменато и в документацията на ядрото. ' ехо ' команда върши работата по писане във файлове.

Стъпки за изчистване на PageCache с помощта на терминал:

Етап 1 - Отворете терминала в Linux и въведете следната дадена команда и натиснете enter. След като командата бъде изпълнена, тя ще покаже информацията за паметта на системата, както е показано в примера:

закони за еквивалентност

командване

 free 

Командата по-горе се използва за показване на колко памет се използва и за показване на други фактори като обща налична памет, суап памет и т.н. Можем да използваме това ' Безплатно ' команда точно преди и след, докато използвате всеки метод.

Необходимо е да се използва командата 'free' преди и след изпълнение на действителната команда, за да можем лесно да видим или открием промени в разпределението на паметта. Нека видим пример, за да разберем как всъщност работи целият процес:

Пример

Изчистване на кеша Linux

2. Ясно вдлъбнатини и inodes-

Този метод се използва за изчистване на паметта от dentries и inodes. Той е точно като първия метод, но малко по-различен, тъй като се използва за изчистване на паметта от dentries и inodes и двете, вместо да изчиства паметта на PageCache. Все пак много прилича на първия метод, който обсъдихме по-горе. Командата, използвана в този метод, е дадена по-долу:

командване

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

Нека видим пример, за да разберем как да приложим този метод:

Пример

np означава
Изчистване на кеша Linux

3. Изчистване на dentries и inodes, Clear PageCache

Това е един от най-ефективните методи. Въпреки това традиционно не се препоръчва да се използва, докато не разберете какво правите, тъй като не се счита за най-безопасното за използване, особено в производството. Командата, използвана в този метод, използва „echo 3 >“, който едновременно почиства PageCache, dentries и inodes.

команда:

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

За да разберете по-подробно как всъщност работи, разгледайте дадения пример:

Пример:

Изчистване на кеша Linux

Забележка: Не се препоръчва да го използвате в производството, освен ако не знаете какво правите, защото незабавно ще почисти PageCache и dentries, както и inodes, както вече обсъдихме по-горе.

Разменете място

По принцип пространството за суап се използва, когато използването на физическата памет е почти на върха. Така че, когато и ако системата се нуждае от повече ресурси на паметта и физическата RAM се напълни, всички неактивни страници се прехвърлят в пространството на паметта за размяна.

Въпреки това, пространството за суап памет също помага на системата като малко, но ефективно количество RAM. И все пак, несъмнено не се препоръчва да се разглежда Swap Space като Physical Ram.

Как да изчистя суап пространство в Linux?

За да изчистите паметта за суап на вашата система, трябва просто да изключите суапа. Това ще премести всички данни от суап паметта обратно в RAM. Това също означава, че трябва да сте сигурни, че имате достатъчно RAM във вашата система, за да поддържа тази операция.

Лесен начин да направите това е да стартирате 'free-m' команда, за да видите какво се използва в Swap, RAM и след това да деактивирате Swap.

След като го изключите, трябва да изчакате 30 секунди или повече, за да оставите известно време операцията да завърши, и след това да включите Swap отново. Това изчиства кеша на суап паметта и го активира отново, но преди да изчистите суапа, трябва да видите текущата (или по подразбиране) настройка на вашата система.

За да видите текущата настройка на swappiness на вашата система, трябва само да отворите терминала, като използвате следната команда, както е показано в изхода:

 cat /proc/sys/vm/swappiness 

Изход

Изчистване на кеша Linux

Както можете да видите, текущата стойност на Swappiness на нашата система е '60' секунди. Въпреки това, ако искате да го промените, можете да го зададете някъде между 0 и 100. Процесът на редактиране (актуализиране) на тази стойност е доста прост. Всичко, трябва да въведете следната команда в терминала и да натиснете enter:

команда:

 sudo sysctl vm.swappiness=x 

(Тук x е суаповата стойност, която искаме да зададем)

Както можете да видите в дадения по-горе резултат, текущата стойност на суап на нашата система (или стойност по подразбиране) е 60. Нека опитаме да променим стойността на суап на 40.

1. Отворете терминала, като натиснете Ctrl+Alt+T на клавиатурата.

Изчистване на кеша Linux

2. След като терминалът се отвори, въведете следната команда и натиснете enter, както е показано на изображението по-долу:

 sudo sysctl vm.swappiness=40 

Изход

Изчистване на кеша Linux

Забележка: Може да ви помоли да въведете паролата, тъй като трябва да изпълним тази команда с привилегиите на superUser (root потребител).

Проверка

За да проверите дали стойността на суап е актуализирана успешно, въведете следната команда и натиснете бутона за въвеждане:

 cat /proc/sys/vm/swappiness 

Изход

Изчистване на кеша Linux

Както можете да видите в изхода, ние успешно актуализирахме стойността на суап до 40.

Изчистете пространството за размяна

За да изчистите суап пространството, процесът е доста прост, защото просто трябва изключете цикъла Swap, поради което всички данни или неактивни страници се прехвърлят обратно в RAM от пространството на Swap паметта. След като изключите Swap, трябва да изчакате 30 секунди и трябва да рестартирате или да преминете отново в swap пространството.

Полезни команди:

Това са някои основни команди, които ще ни помогнат при почистването на Swap Space:

Изчистване на кеша Linux

Стъпки за изчистване на Swap Memory

Нека видим как да използваме тези команди за изчистване на суап пространство или памет:

Етап 1. Отворете терминала, като натиснете ' Ctrl+Alt+ T ' на клавиатурата.

Стъпка 2. След като терминалът се отвори, въведете „ sudo -i ' команда, защото може да изискваме привилегии на суперпотребител за да изпълните дадените по-горе команди:

Изчистване на кеша Linux

Стъпка 3. Въведете командата 'free -m', за да видите преди това използването на паметта изключете цикъла на Размяна :

Изчистване на кеша Linux

Стъпка - 4 Сега въведете „ Swapoff -a ' и натиснете enter, за да изключите Swap, както е показано по-долу:

Изчистване на кеша Linux

Стъпка 5. След изключете цикъла , Swap изчаква поне 40 секунди.

сравнение в низ

Стъпка 6. Сега въведете 'swap-a' и натиснете enter, за да активирате отново Swap. За да видите разликата (или промяната) в използването на паметта, изпълнете командата 'free-m' още веднъж, както е показано по-долу:

Изчистване на кеша Linux

Надяваме се, че това ще ви помогне да изчистите суап паметта на вашата система, ако някога попаднете в подобна ситуация.