logo

Очистити кеш Linux

У цьому підручнику ми дізнаємося, як очистити кеш оперативної пам’яті в Linux і очистити простір підкачки.

Як і всі інші операційні системи, GNU/Linux також реалізувала систему керування пам’яттю. Хоча управління пам'яттю в Linux набагато ефективніше і навіть частіше використовується, ніж в інших операційних системах. Однак у деяких випадках, коли ви хочете контролювати керування пам’яттю або якщо є один або кілька процесів, які споживають оперативну пам’ять вашої системи. У такому випадку ми хочемо зупинити це; Linux надає кілька способів очищення (очистити кеш оперативної пам'яті).

Очистити кеш Linux

Як очистити кеш в Linux?

Майже в кожній системі Linux є три способи очищення кешу. Деякі з них можна чудово використовувати, не перериваючи жодних поточних процесів або послуг. Нижче наведено три способи:

  1. Очистити лише PageCache
  2. Очистити зубці та іноди
  3. Очистити dentries та inodes, очистити PageCache

Ми детально розглянемо всі три способи, а також побачимо їх практичну реалізацію:

1. Очистити тільки PageCache-

Цей метод є одним із найбезпечніших способів очищення кешу Linux, оскільки він може очистити кеш без знищення будь-яких поточних операцій, програм і служб. Кажуть, що це найбезпечніший спосіб очищення кешу, оскільки його можна використовувати у виробництві, і він очищає лише PageCache. У цьому методі використовуються такі команди:

Команда

кинути кидає в java
 # sync ; echo 1 > proc/sys/vm/drop_caches 

Пояснення:

У наведеній вище команді ' синхронізація ' використовується для очищення буфера файлової системи, а команда відокремлюється за допомогою ' ; ' виконується в послідовному порядку.

Однак оболонка чекає на виконання чи завершення кожної команди перед початком виконання наступної команди, доступної в послідовності.

The drop_caches використовуються для промивання або очищення кешу без знищення або впливу на будь-яку іншу запущену програму чи служби, як це також чітко зазначено в документації ядра. ' луна ' команда записує файли.

Кроки для очищення PageCache за допомогою терміналу:

Крок 1 - Відкрийте термінал у Linux і введіть наступну команду та натисніть enter. Після виконання команди відобразиться інформація про пам’ять системи, як показано в прикладі:

Команда

 free 

Команда вище використовується для відображення обсягу використаної пам’яті та інших факторів, таких як загальна доступна пам’ять, пам’ять підкачки тощо. Ми можемо використати це ' безкоштовно ' безпосередньо перед і після використання кожного методу.

Необхідно використовувати команду 'free' до і після виконання фактичної команди, щоб ми могли легко побачити або виявити зміни у розподілі пам'яті. Розглянемо приклад, щоб зрозуміти, як насправді працює весь процес:

приклад

Очистити кеш Linux

2. Очистити зуби та іноди-

Цей метод використовується для очищення пам’яті від dentries та inodes. Це так само, як перший метод, але дещо відрізняється, оскільки він використовується для очищення пам’яті від dentries та inodes замість очищення пам’яті PageCache. Тим не менш, це дуже схоже на перший метод, який ми обговорили вище. Команда, яка використовується в цьому методі, наведена нижче:

Команда

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

Розглянемо приклад, щоб зрозуміти, як реалізувати цей метод:

приклад

Очистити кеш Linux

3. Очистити dentries та inode, Clear PageCache

Це один з найефективніших методів. Тим не менш, традиційно не рекомендується використовувати його, доки ви не знаєте, що робите, оскільки він не вважається найбезпечнішим у використанні, особливо у виробництві. Команда, яка використовується в цьому методі, використовує «echo 3 >», який одночасно очищає PageCache, dentries та inodes.

Команда:

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

Щоб більш детально зрозуміти, як це насправді працює, розглянемо наведений приклад:

приклад:

Очистити кеш Linux

Примітка: не рекомендується використовувати його у виробництві, якщо ви не знаєте, що робите, тому що він миттєво очищає PageCache та dentries, а також inodes, як ми вже обговорювали вище.

Поміняти місце

Загалом, простір підкачки використовується, коли використання фізичної пам’яті майже на піку. Отже, коли і якщо системі потрібно більше ресурсів пам’яті, а фізична оперативна пам’ять заповнюється, усі неактивні сторінки переносяться до простору пам’яті підкачки.

Однак пам'ять підкачки також допомагає системі як невеликий, але ефективний обсяг оперативної пам'яті. Проте, безсумнівно, не рекомендується розглядати Swap Space як Physical Ram.

Як очистити простір підкачки в Linux?

Щоб очистити пам'ять підкачки у вашій системі, вам просто потрібно вимкнути підкачку. Це перемістить усі дані з пам'яті обміну назад в оперативну пам'ять. Це також означає, що ви повинні бути впевнені, що у вашій системі достатньо оперативної пам’яті для підтримки цієї операції.

Простий спосіб зробити це — запустити '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

Примітка. Може попросити вас ввести пароль, оскільки нам потрібно запустити цю команду з правами суперкористувача (користувача root).

Перевірка

Щоб переконатися, що значення обміну успішно оновлено, введіть таку команду та натисніть кнопку Enter:

пріоритет оператора java
 cat /proc/sys/vm/swappiness 

Вихід

Очистити кеш Linux

Як ви бачите у вихідних даних, ми успішно оновили значення свопу до 40.

Очистити простір обміну

Щоб очистити простір підкачки, процес досить простий, тому що нам це просто потрібно цикл вимкнено Swap, завдяки якому всі дані або неактивні сторінки повертаються в оперативну пам'ять з простору пам'яті Swap. Після того, як ви вимкнете своп, ви повинні зачекати 30 секунд і перезапустити або знову перезапустити простір свопу.

Корисні команди:

Ось деякі основні команди, які допоможуть нам очистити простір обміну:

Очистити кеш Linux

Кроки для очищення Swap Memory

Давайте подивимося, як використовувати ці команди для очищення простору підкачки або пам’яті:

Крок 1. Відкрийте термінал, натиснувши ' Ctrl+Alt+ T ' на клавіатурі.

Крок 2. Коли термінал відкриється, введіть ' sudo -i ', оскільки нам може знадобитися привілеї суперкористувача щоб виконати наведені вище команди:

Очистити кеш Linux

Крок 3. Введіть команду 'free -m', щоб переглянути використання пам'яті раніше цикл вимкнено в Обмін :

Очистити кеш Linux

Крок - 4 Тепер введіть ' Swapoff -а ' і натисніть Enter, щоб вимкнути Swap, як показано нижче:

Очистити кеш Linux

Крок 5. Після цикл вимкнено , Swap чекає щонайменше 40 секунд.

Крок 6. Тепер введіть 'swap-a' і натисніть enter, щоб повторно ввімкнути Swap. Щоб побачити різницю (або зміни) у використанні пам’яті, запустіть команду «free-m» ще раз, як показано нижче:

Очистити кеш Linux

Сподіваємось, це допоможе вам очистити пам’ять підкачки вашої системи, якщо ви коли-небудь опинитеся в такій ситуації.