Swapfile

1 minute read

Управление размером swap-файла

Вчера на работе попросили написать небольшую инструкцию для увеличения swap-файла, но размер файл можно как увеличивать так и уменьшать в случае необходимости. Информация в заметке актуальна для ubuntu версий 14 и 16 а также centos 7.

Во многих ОС swap представлен не в виде отдельного раздела на диске, а в виде файла. Зачастую файл расположен в рутовой директории /swap. В случае отсутсвия такого файла его всегда можно создать.

Для изменения размера swap требуются следующие действия:

Необходимо узнать тип и расположение swap при помощи команды:

swapon -s

вывод может быть например таким:

swapon -s
Filename                Type        Size    Used    Priority

“Пустой” вывод будет означать, что swap в системе отсутсвует.

Также вывод команды может быть таким:

swapon -s
Filename                Type        Size    Used    Priority
/dev/xvda5                                 partition    1046524    4568    -1

Это значит что для swap в системе сейчас используется раздел №5 вашего диска /dev/xvda, в случае если бы выхотели увеличить размер swap не трогая текущий раздел диска, просто учтите что в дальнейшем swap-файл будет суммироваться с текущим разделом.

или вывод команды может быть таким:

swapon -s
Filename                Type        Size    Used    Priority
/swap                                   file        1048572    0    -1

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

Отключить swap

swapoff -a

Изменить размер swap-файла

sudo dd if=/dev/zero of=/swap bs=1M count=1024

где count есть желаемый размер, например 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 для автозагрузки swap после перезагрузки сервера:

echo "/swapfile swap swap defaults 0 0"| sudo tee -a /etc/fstab

Categories:

Updated: