Что такое swap и как его отключить в Ubuntu/Linux

Что такое swap и как его отключить в Ubuntu/Linux

Я много раз читал в сети, что swappiness следует уменьшить или отключить. Так ли это, что это делает? У меня 2 ГБ оперативной памяти, нужно ли мне отключить swappiness?

решение1

В соответствии сВикипедия:-

Swappiness — это параметр ядра Linux, который управляет относительным весом, придаваемым подкачке памяти времени выполнения, в отличие от удаления страниц из кэша страниц системы. Swappiness может быть установлен в диапазоне от 0 до 100 включительно. Низкое значение заставляет ядро ​​избегать подкачки, более высокое значение заставляет ядро ​​пытаться использовать пространство подкачки. Значение по умолчанию — 60, и для большинства настольных систем установка его на 100 может повлиять на общую производительность, тогда как установка его на более низкое значение (даже на 0) может уменьшить задержку ответа.


В соответствии сУбунту Вики:-

Пространство подкачки — это область на жестком диске, которая является частью виртуальной памяти вашего компьютера, которая представляет собой комбинацию доступной физической памяти (ОЗУ) и пространства подкачки. Пространство подкачки временно хранит страницы памяти, которые неактивны. Пространство подкачки используется, когда ваша система решает, что ей нужна физическая память для активных процессов, а неиспользуемой физической памяти недостаточно. Если системе требуется больше ресурсов памяти или пространства, неактивные страницы физической памяти затем перемещаются в пространство подкачки, тем самым освобождая эту физическую память для других целей. Обратите внимание, что время доступа к разделу подкачки больше, поэтому не считайте его полной заменой физической памяти. Пространство подкачки может быть выделенным разделом подкачки (рекомендуется), файлом подкачки или комбинацией разделов подкачки и файлов подкачки.

Как я вижу из моего графика,Убунтуиспользует гораздо больше swap, чем должен. Вы можете легко отключить/уменьшить swapppiness, как это должно быть сделано в системах с более чем2ГБизБАРАНкоторые не используются для задач с высоким потреблением памяти, таких как редактирование аудио/видео/изображений высокой четкости,

Ваша система тормозит, потому что Swappiness установлен на значение по умолчанию, и он записывает данные на жесткий диск, который1000 размедленнее, чем писатьБАРАН.

Чтобы проверить текущее значение Swappiness,

cat /proc/sys/vm/swappiness

или

sysctl vm.swappiness

Чтобы временно отключить или установить Swappiness, в терминале ( Ctrl+ Alt+ T),

sudo swapoff -a

или

sysctl -w vm.swappiness=10

Чтобы сделать это навсегда, добавьте следующие строки в свой /etc/sysctl.confфайл, используя sudo nano /etc/sysctl.conf:

# CHANGE SWAP
vm.swappiness=x

Здесь xможет быть любое число от0к100где:-

    0 = disable swap
    1 = minimum swap
   10 = recommended for >2GB
   60 = Linux Default for Swap
  100 = Maximum Swap, for >1GB Ram

Вам не следует устанавливать значение swappiness равным0если только вы не уверены, что никогда не израсходуете всю свою оперативную память, в противном случаеНедостаточно памяти(OOM) Killer включится и начнет убивать процессы, использующие оперативную память.

Вотеще немного информации.

Связанный контент