НА шоу красная строка vmcom и vmlim.Что это значит?

find [dirname] -depth -type f -exec shred -n1 {} \;

Это выполняет поиск в глубину файлов в каталоге [dirname], затем работает shred -n1 команда на каждом файле. При удалении файлов и/или каталогов, добавляя -depth поскольку значение по умолчанию является хорошей привычкой, даже при том, что оно не строго необходимо для этого случая. При выполнении этого вида команды с rm -rf вместо shred, -depth необходим, чтобы гарантировать, что каталоги не удалены, прежде чем содержание каталогов предпринято, чтобы быть удаленным (таким образом порождение ошибок).

15
07.01.2013, 01:38
3 ответа

Ответ на основной запрос приведен ниже - но сначала предупреждение относительно предложения Мирры:
  • Будьте осторожны с этим:
  • In : /proc/sys/vm/overcommit_memory я пытаюсь туда положить 2.
  • В этом случае, даже когда физическая память доступна, все процессы, запрашивающие память у операционной системы, когда vmcom больше vmlim, получат ошибки (я получил много ошибок и сбоев в основных системных приложениях, таких как compiz). А благодаря:
  • vmlim = SWAP_size + 0.5 * RAM_size.
  • где 0.5 (50%) - значение по умолчанию для параметра /proc/sys/vm/overcommit_ratio можно легко получить множество ошибок как я.
  • Ответ на главный вопрос: лучше вернуть изменения в параметре overcommit_memory обратно к значению по умолчанию (0 для меня (Ubuntu 12.04 LTS), но может быть 1 для других ОС). Согласно великой статье мы можем вычислить память, реально используемую процессами:
  • MemoryUsed ~ tot - (cache + buff + free) ~ 23.6G - ( 6.7G + 0.067G + 0.136G) ~ 16.7G
  • Таким образом, только 16.7G реально используется процессами (из 23.6G установленной оперативной памяти) и красная строка на выходе atop может быть проигнорирована.

    .
  • 6
    27.01.2020, 19:50

    Что atop говорит Вам, то, что Ваша система превышает возможности памяти, как описано:

    http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/vm/overcommit-accounting;hb=HEAD

    Предотвратить чрезмерные обязательства, в /proc/sys/vm/overcommit_memory можно установить 2.

    1
    27.01.2020, 19:50

    Справочная страница поверх помогает объяснить, что на самом деле означают числа.

    Память

    Если выделенная виртуальная память превышает предел («vmcom» и «vmlim» в строке SWP), строка SWP окрашивается из-за чрезмерного выделения системы.

    SWP

    Обмен информацией о занятии и перегрузке.

    Эта строка содержит общий объем пространства подкачки на диске («tot») и объем свободного пространства подкачки («free»).

    Кроме того, выделенное пространство виртуальной памяти («vmcom») и максимальный предел выделенного пространства («vmlim», который по умолчанию размер подкачки плюс 50% объема памяти). Выделенное пространство зарезервированное виртуальное пространство для всех выделений личного пространства памяти для процессов. Ядро только проверяет, является ли выделенное пространство превышает лимит, если настроена строгая обработка переполнения (vm.overcommit_memory равно 2).

    https://linux.die.net/man/1/atop

    1
    27.01.2020, 19:50

    Теги

    Похожие вопросы