Файл подкачки в Ubuntu

Swap — место на жестком диске, используемое, когда объем физической оперативной памяти (ОЗУ/RAM) заполнен. Другими словами — это пространство подкачки. В GNU/Linux для подкачки может использоваться как раздел диска, так и файл. В данной статье я расскажу, как создать именно файл подкачки для Ubuntu. Это может быть полезным на сервере, работающем в виртуальной машине, где отсутствует раздел swap.

 

Создание файла подкачки

Дальнейшие команды должны выполняться в терминале.

Создадим файл размером 1 ГБ:

sudo fallocate -l 1G /swap

При необходимости можно заменить 1G на 2G.

Далее нужно задать права доступа на созданный файл /swap так, чтобы он был доступен только пользователю root:

sudo chmod 600 /swap

Форматируем файл для подкачки используя утилиту mkswap:

sudo mkswap /swap

Подключаем файл подкачки (активируем его):

sudo swapon /swap

Чтобы проверить — подключен ли файл можно выполнить команду:

swapon -s

и команду отображения количества свободной и используемой памяти в системе:

free -h

Для того, чтобы файл подключался автоматически после перезагрузки системы его нужно прописать в fstab:
Откроем файл /etc/fstab с помощью текстового редактора, например nano:

sudo nano /etc/fstab

и добавим в конец строку:

/swap swap swap defaults 0 0

Настройка значения swappiness

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

Если говорить подробнее, то значение swappiness определяет процент занятости оперативной памяти после которого будет использована подкачка. Но это не прямое указание на процент, а наоборот — нужно отнять от 100 значение swappiness, чтобы узнать порог процента занятости ОЗУ. Например, если установить значение swappiness равное 60, то нужно отнять от ста — шестьдесят (100-60), получится 40%.

По умолчанию значение swappines установлено на 60. Проверить текущее значение можно с помощью команды:

cat /proc/sys/vm/swappiness

Какое же значение выбрать? Для домашнего ПК, если используется быстрый жесткий диск или SSD, можно оставить значение по умолчанию, но для большей производительности лучше выбрать значение поменьше, например 20. Для сервера лучше сразу выбрать значение поменьше — 10.

Чтобы установить данное значение нужно выполнить команду:

sudo sysctl vm.swappiness=10

И, наконец, для того, чтобы это значение не сбрасывалось после перезагрузки нужно добавить его в файл /etc/sysctl.conf.

Откроем файл /etc/sysctl.conf с помощью редактора nano и допишем в конец строку vm.swappiness=10:

sudo nano /etc/sysctl.conf

Как удалить файл подкачки

Если тебе понадобится удалить файл swap, то следует выполнить действия обратные тем, что были описаны выше в статье:

  1. Деактивировать swap: sudo swapoff -v /swap
  2. Удалить из файла /etc/fstab строку /swap swap swap defaults 0 0
  3. Удалить сам созданный файл: sudo rm /swap

 

 

2 комментария к “Файл подкачки в Ubuntu”

  1. Аноним

    Приветсвую! Если вы не хотите думать об объеме SWAP, имеет смысл воспользоваться утилитой swapspace (динамический менеджер подкачки). Эта утилита работает в фоновом режиме и динамически управляет подкачкой. При необходимости swapspace автоматически создаёт дополнительные файлы подкачки требуемого размера. Неиспользуемые файлы подкачки удаляются и не занимают место. Однако, если вы работаете с секретными документами, не забудьте указать swapspace создавать SWAP-файлы на зашифрованном диске или внутри шифрованного контейнера

  2. Аноним

    Все эти настройки с vm.swappiness = 10 после Ubuntu 12.04 для лохов. Хоть ты тресни, а все-равно подкачка включается даже раньше чем оперативка заполнилась на 50%. Вот в Ubuntu 12.04 это было красота, пока оперативка не заполнилась на 90%, никакая подкачка не использовалась, а счас что они не делают не идут дела. Разрабы специально так сделали, что хоть у тебя 6, хоть 8 Гб. оперативки все-равно твой комп затормозит как в 90-е. Тьфу на все эти технологии и политику, как они уже достали. 21-й век! А все еще хуже чем в 20-м. Хоть бери и снова устанавливай Ubuntu 12.04.

Добавить комментарий

Есть, что добавить? Нет проблем! Напечатай комментарий и он будет опубликован после проверки.