Swap — механизм виртуальной памяти, при котором отдельные фрагменты памяти (обычно неактивные) перемещаются из ОЗУ во вторичное хранилище, освобождая ОЗУ для загрузки активных фрагментов памяти.
Просмотр текущих сведений о swap
Перед осуществлением каких-либо действий со swap выполните следующую команду, чтобы узнать его текущие тип и расположение:
swapon -s
Если команда не выводит никакой информации совсем либо выводит только заголовки таблицы, без данных в ней, например:
Filename Type Size Used Priority
— это означает, что swap в системе отсутствует. Выполнение шагов, описанных в данной инструкции, позволит вам его создать.
Также вывод может содержать данные, подобные этим:
Filename Type Size Used Priority
/dev/vda5 partition 1046524 4568 -1
Это означает, что для swap используется раздел vda5 вашего диска. Если вы хотите увеличить размер swap, с помощью данной инструкции вы сможете создать swap-файл, и общий размер swap в системе будет суммироваться с текущим разделом.
Еще один вариант вывода команды:
Filename Type Size Used Priority
/swap file 1048572 0 -1
Такой вывод означает, что для swap используется файл /swap. Вы можете изменить его размер с помощью данной инструкции (при этом можно не выполнять пункт 6, т.к. запись о swap в файле /etc/fstab уже существует).
Создание и изменение swap
Для изменения размера swap или для создания swap-файла при его отсутствии выполните следующие действия.
- В первую очередь отключите swap:
swapoff -a
- Далее измените размер swap-файла. Если файл отсутствует в системе, эта же команда позволит его создать:
sudo dd if=/dev/zero of=/swap bs=1M count=1024
Укажите в качестве count необходимый размер swap, например, 512 или 1024 или 4096.
- Подготовьте swap-файл:
chmod 600 /swap && mkswap /swap
- Включите swap:
swapon /swap
- Проверьте результат:
swapon -s
Пример вывода команды:
Filename Type Size Used Priority
/swap file 1048572 0 -1
- Чтобы внесенные изменения были применены при следующей загрузке сервера, нужно добавить информацию о swap в файл
/etc/fstab. Для этого выполните команду:
echo "/swap none swap sw 0 0"| sudo tee -a /etc/fstab