Сброс файлового кэша linux

Сброс файлового кэша linux

Начиная с Linux ядра 2.6.16 появилась возможность принудительной очистки системных кэшей:

Чистим pagecache:
echo 1 > /proc/sys/vm/drop_caches

Чистим dentrie и inode кэши:
echo 2 > /proc/sys/vm/drop_caches

Чистим pagecache, dentrie и inode кэши:
echo 3 > /proc/sys/vm/drop_caches

После выполнения операции необходимо запустить команду sync

Ответить | Правка | Cообщить модератору

Оглавление

  • Как очистить кэш файловой системы в Linux ядре, const86, 20:29 , 09-Сен-07, (1)
    • Как очистить кэш файловой системы в Linux ядре, Антон, 12:23 , 10-Сен-07, (4)
      • Как очистить кэш файловой системы в Linux ядре, const86, 18:44 , 10-Сен-07, (5)
  • Как очистить кэш файловой системы в Linux ядре, weec, 11:25 , 10-Сен-07, (2)
  • Как очистить кэш файловой системы в Linux ядре, Аноним, 12:18 , 10-Сен-07, (3)
  • Как очистить кэш файловой системы в Linux ядре, Александр, 14:36 , 20-Сен-07, (7)
    • Как очистить кэш файловой системы в Linux ядре, tarantin, 16:41 , 20-Сен-07, (8)
      • Как очистить кэш файловой системы в Linux ядре, Аноним, 16:59 , 20-Окт-08, (12)
    • Как очистить кэш файловой системы в Linux ядре, TomB, 22:37 , 20-Июн-10, (16)
      • Как очистить кэш файловой системы в Linux ядре, linux0id, 05:35 , 23-Окт-13, ( 24 )
  • Как очистить кэш файловой системы в Linux ядре, name, 01:51 , 26-Сен-07, (9)
    • Как очистить кэш файловой системы в Linux ядре, Тузик, 23:17 , 02-Окт-07, (10)
  • Как очистить кэш файловой системы в Linux ядре, CISCO, 05:55 , 31-Янв-08, (11)
  • Как очистить кэш файловой системы в Linux ядре, pavlinux, 20:26 , 20-Окт-08, (13)
  • Как очистить кэш файловой системы в Linux ядре, Анатолий, 19:09 , 08-Фев-10, (14)
  • Как очистить кэш файловой системы в Linux ядре, ZayDen, 19:27 , 16-Мрт-10, (15)
  • Как очистить кэш файловой системы в Linux ядре, Серга, 15:50 , 23-Июн-10, (17)
  • Раздел полезных советов: Как очистить кэш файловой системы в. , Дмитрий, 13:21 , 13-Апр-11, (18)
  • Как очистить кэш файловой системы в Linux ядре, Владимир, 16:15 , 13-Июл-11, (19)
  • Как очистить кэш файловой системы в Linux ядре, Дмитрий, 23:48 , 29-Ноя-11, (20)
    • Как очистить кэш файловой системы в Linux ядре, weec, 08:52 , 30-Ноя-11, ( 21 )
  • Как очистить кэш файловой системы в Linux ядре, Alex, 14:47 , 22-Янв-12, ( 22 )
    • Как очистить кэш файловой системы в Linux ядре, Сергей Савельев, 12:24 , 24-Дек-12, ( 23 )
  • Как очистить кэш файловой системы в UBUNTU , олег, 19:40 , 28-Май-14, ( 25 )

Сообщения по теме [Сортировка по времени | RSS]

Полезная фича для бенчмарков файловых систем. А ещё для чего-нибудь может пригодиться?

1. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от const86 (ok) on 09-Сен-07, 20:29
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Антон (??) on 10-Сен-07, 12:23

>Полезная фича для бенчмарков файловых систем. А ещё для чего-нибудь может пригодиться?

Например, иногда для выполнения программы нужно сразу много памяти и очень соблазнительно взять ее из дискового кэша который до метров двухсот вырос. Мгновенно он не уменьшится, только через некоторое время, а нужно прямо сейчас иначе предстоит долгое наблюдение за своппингом.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от const86 (ok) on 10-Сен-07, 18:44

Не замечал подобных явлений.
Вот например, свободной памяти почти нет, большой дисковый кеш. В свопе пусто. Запускаю толстую прогу. Кеш сразу уменьшается, прога умещается в оперативку, своп по-прежнему пустой. «Что я делаю не так?» 🙂
Вообще, по личным наблюдениям, дисковый кеш можно считать свободной памятью. Потому что прежде, чем лезть в своп, система пожертвует кешем.
Может, если vm.swappiness поставить побольше. но зачем это делать?

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

2. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от weec (ok) on 10-Сен-07, 11:25

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Аноним on 10-Сен-07, 12:18

Ну как же, дефрагментатор памяти можно написать, и продавать 😉

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Александр (??) on 20-Сен-07, 14:36

Уважаемый автор!
Когда пишите документ — указывайте ссылки!
В http://linux.die.net/man/5/proc написано совершенно обратное. sync надо выполнять *до* echo.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от tarantin on 20-Сен-07, 16:41

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

12. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Аноним (??) on 20-Окт-08, 16:59

Зависит от того, по какому URL вы это читаете 🙂

>Перед выполнением операции необходимо запустить команду sync

>После выполнения операции необходимо запустить команду sync

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

16. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от TomB on 20-Июн-10, 22:37

>Уважаемый автор!
>Когда пишите документ — указывайте ссылки!
>В http://linux.die.net/man/5/proc написано совершенно обратное. sync надо выполнять *до* echo.

В самом деле sync вообще не обязательно делать, просто если сделать до echo , то после echo могжет очиститься ещё и кэш с незаписанными на диск данными.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

24 . «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от linux0id on 23-Окт-13, 05:35

> после echo могжет очиститься ещё и кэш с незаписанными на диск данными.

НЕ может.
cache ≠ buffer
Буферы записи не затрагиваются записью любого значения [1|2|3] в drop_caches, т.к. память эта относится к «dirty objects». В документации ядра про sync написано лишь затем, чтобы администратор системы получил максимальный эффект от выполненной операции.
Что будет с sync: «dirty objects» → «clean objects» → «drop caches» → «free memory»
Что будет без sync: «dirty objects» → «drop caches» → «free memory» + «dirty objects»
Т.е. без sync буферы продолжат существовать нетронутыми пока до них не дойдёт очередь в потоке ядра pdflush. Когда данные будут записаны на диск, тогда станет возможной их очистка из памяти, а sync просто принуждает записать на диск «прямо сейчас». Причём, sync нужно запускать дважды, по-хорошему.
Будет максимальное высвобождение памяти от последовательности команд:
sync && sync && echo 3 > /proc/sys/vm/drop_caches
Как-то так.

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

9. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от name (??) on 26-Сен-07, 01:51

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Тузик on 02-Окт-07, 23:17

Комманда free, колонка cached. Запустить до и после, чтобу прочувствовать разницу.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от CISCO (??) on 31-Янв-08, 05:55

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от pavlinux (ok) on 20-Окт-08, 20:26

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

14. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Анатолий (??) on 08-Фев-10, 19:09

Уважаемый АВТОР, искренне выражаю Вам свою благодарность за данную статью, очень помогла.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

15. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от ZayDen (??) on 16-Мрт-10, 19:27

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

17. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Серга on 23-Июн-10, 15:50

Спасибо огромное, теперь не придется перезагружать каждый раз сервер, а можно как-нибудь поставить ограничение кэша например на 512 мб?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. «Раздел полезных советов: Как очистить кэш файловой системы в. « + / –
Сообщение от Дмитрий (??) on 13-Апр-11, 13:21

> Начиная с Linux ядра 2.6.16 появилась возможность принудительной очистки системных кэшей:
> Чистим pagecache:
> echo 1 > /proc/sys/vm/drop_caches
> Чистим dentrie и inode кэши:
> echo 2 > /proc/sys/vm/drop_caches
> Чистим pagecache, dentrie и inode кэши:
> echo 3 > /proc/sys/vm/drop_caches
> После выполнения операции необходимо запустить команду sync
> URL: http://linux-mm.org/Drop_Caches
> Обсуждается: http://www.opennet.ru/tips/info/1455.shtml

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

19. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Владимир (??) on 13-Июл-11, 16:15

Автору СПАСИБО. Несколько лет искал эту инфу!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

20. «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Дмитрий (??) on 29-Ноя-11, 23:48

А зачем их чистить? Это же не мусор в памяти.
Память фактически свободна для процессов.
Понадобится, возьмет сколько надо.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

21 . «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от weec (??) on 30-Ноя-11, 08:52

для ситуёвин в которых нужен пустой кеш

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

22 . «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Alex (??) on 22-Янв-12, 14:47

По первой комманде выдаёт —
bash: /proc/sys/vm/drop_caches: Permission denied

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

23 . «Как очистить кэш файловой системы в Linux ядре» + / –
Сообщение от Сергей Савельев on 24-Дек-12, 12:24

Надо запускать от пользователя root

Источник

Читайте также:  Asus k53s драйвера wifi windows 10
Оцените статью