Документация
VPS

Как включить swap-file на VPS

Создание, активация и постоянное включение swap. Настройка swappiness.

3 мин

Как включить swap-file на VPS

Многие облачные VPS поставляются без swap — это оптимизация под латенси, но при пике памяти OOM-killer убьёт ваш процесс. Swap-file добавляется за минуту и часто спасает.

Проверить, есть ли swap уже

swapon --show
free -h

Если раздел Swap: показывает 0B — swap отсутствует.

Создать swap-file

Размер обычно = размер RAM (максимум 2×RAM). Для 4 GB VPS:

fallocate -l 4G /swapfile
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile

Если fallocate не сработал (некоторые ФС не поддерживают) — используйте dd:

dd if=/dev/zero of=/swapfile bs=1M count=4096 status=progress

Проверить, что swap активен

swapon --show
# должен показать /swapfile 4G
free -h
# Swap: 4Gi 0B 4Gi

Постоянное включение (после ребута)

Добавьте в /etc/fstab:

/swapfile none swap sw 0 0

Проверьте, что не сломали fstab: mount -a — должен отработать без ошибок.

Настройка swappiness

По умолчанию vm.swappiness=60 — довольно агрессивно. Для серверов с БД снизьте до 10:

echo 'vm.swappiness=10' >> /etc/sysctl.conf
sysctl -p

Это значит: используй RAM максимально, в swap уходи только когда без него никак.

Когда swap не спасает

Swap работает медленно (даже на NVMe — в 100-1000× медленнее RAM). Он даёт буфер во время пика, а не постоянное решение. Если swap заполняется каждый день — пора апгрейдить RAM.

Удалить swap

swapoff /swapfile
rm /swapfile
# и удалите строку из /etc/fstab

Что дальше