Использование swap пространства

Инициализированная swap область вступает в действие только после запуска команды swapon(8). Эта команда передает ядру информацию, говорящую о том, что swap может использоваться. В качестве параметра указывается путь к swap области, так для указания временного swap файла следует выполнить следующую команду:

ttyp5 root ~  $ swapon /usr/tmp/temporary-swap-file
ttyp5 root ~  $

Swap области могут устанавливаться автоматически путем указания их в файле /etc/fstab:

/dev/hda8 swap swap defaults

Запускаемые при загрузке системы командные файлы выполнят команду swap -a, которая установит все swap области, указанные в файле /etc/fstab. Поэтому команда swapon обычно используется для установки дополнительной swap области.

Для получения информации об использовании swap областей применяется команда free(1), которая показывает общий объем используемого swap пространства. Подобная информация доступна через команду top(1) или файловую систему proc, файл /proc/meminfo. Однако достаточно сложно получить информацию об использовании отдельной swap области.

Swap область может быть отключена после выполнения команды swapoff(8). Обычно в этом нет необходимости, за исключением временных swap областей. Сначала все страницы, находящиеся в этой области, записываются обратно в память; если они не помещаются в физическую память, то они записываются в какую-либо другую swap область. Если же виртуальной памяти не хватает для сохранения всех страниц, то происходит сбой системы. С помощью команды free следует проверять наличие свободной памяти перед отключением swap области.

Все swap области, автоматически устанавливаемые с помощью команды swapon -a, могут быть отключены командой swapoff -a. Для определения отключаемых областей используется файл /etc/fstab. Все swap области, установленные вручную, остаются задействованными.

Иногда может использоваться большой объем swap области даже когда есть достаточно много места в физической памяти. Это, например, может произойти когда с одной стороны требуется swap область, а затем большой процесс, занимающий много физической памяти, завершает свою работу и освобождает память. Данные, записанные в swap область, не переносятся обратно в память до тех пор, пока они не потребуются, поэтому физическая память может оставаться неиспользуемой на длительное время.

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

Примечание:
Цифра в скобках указывает на раздел в руководстве man, где можно найти детальное описание данной команды.