// ssd vps

Как настроить swap-файл на Linux VPS: практическое руководство

August 08, 2026 · by CLIQHOST

Как настроить swap-файл на Linux VPS: практическое руководство

Каждый системный администратор хотя бы раз сталкивался с пугающим сообщением Out of Memory (OOM). Процессы падают, приложения зависают, сервер становится недоступным. Быстрое и эффективное решение в таких ситуациях — настройка swap-файла.

В этом руководстве вы узнаете, что такое swap, когда и зачем он нужен, и как пошагово настроить его на VPS SSD или VPS NVMe под управлением Ubuntu или Debian.


Что такое swap и почему он важен?

Swap — это область хранилища (раздел диска или файл), которую операционная система использует как расширение оперативной памяти. Когда физическая RAM полностью занята, ядро Linux перемещает наименее используемые страницы памяти на диск, освобождая место для активных процессов.

Основные преимущества:
- Предотвращает сбои из-за нехватки RAM
- Позволяет запускать ресурсоёмкие приложения на VPS с минимальными ресурсами
- Даёт время для диагностики и масштабирования

Недостатки, которые стоит учитывать:
- Диск (даже SSD/NVMe) медленнее оперативной памяти
- Чрезмерное использование swap снижает производительность
- Swap не является заменой недостаточного объёма RAM

Правило: Swap — это страховочная сетка, а не долгосрочное решение. Если сервер постоянно использует swap, пора перейти на тарифный план с большим объёмом памяти.


Проверьте текущее состояние swap

Прежде чем что-либо настраивать, проверьте состояние памяти и swap:

free -h

Пример вывода:

              total        used        free      shared  buff/cache   available
Mem:          1.9Gi       800Mi       300Mi        20Mi       850Mi       1.0Gi
Swap:           0B          0B          0B

Если строка Swap показывает 0B, значит swap не настроен. Также можно выполнить:

swapon --show

Если команда не возвращает ничего — продолжайте следующие шаги.


Сколько swap нужно?

Общие рекомендации для современных систем:

Объём RAM Рекомендуемый swap
< 2 ГБ 2× RAM (например, 4 ГБ)
2–8 ГБ Равен RAM (4–8 ГБ)
8–64 ГБ Минимум 4 ГБ, максимум 8 ГБ
> 64 ГБ Swap необязателен, ситуативно

Для VPS NVMe с 2 ГБ RAM оптимальный размер swap — 2–4 ГБ.


Шаг 1 — Создайте swap-файл

Используйте fallocate для быстрого выделения пространства (или dd, если fallocate недоступен):

sudo fallocate -l 2G /swapfile

Или с помощью dd:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

Проверьте, что файл создан:

ls -lh /swapfile

Шаг 2 — Установите правильные права доступа

Swap-файл должен быть доступен только для root, иначе Linux откажется его активировать:

sudo chmod 600 /swapfile

Проверка:

ls -lh /swapfile
# -rw------- 1 root root 2.0G ...

Шаг 3 — Отформатируйте файл как swap

sudo mkswap /swapfile

Ожидаемый вывод:

Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
no label, UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Шаг 4 — Активируйте swap

sudo swapon /swapfile

Подтвердите активацию:

swapon --show
free -h

Строка Swap должна показывать настроенный объём.


Шаг 5 — Сделайте swap постоянным (сохранение после перезагрузки)

Вышеуказанная активация временная. После перезагрузки swap исчезнет. Чтобы сохранить его, добавьте запись в /etc/fstab:

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Проверьте, что запись добавлена:

cat /etc/fstab | grep swap

Теперь при каждой перезагрузке вашего Linux VPS swap будет активироваться автоматически.


Шаг 6 — Настройте параметр swappiness

Swappiness определяет, насколько агрессивно ядро Linux использует swap вместо RAM. Значение по умолчанию — 60, диапазон от 0 до 100.

  • 0 = ядро максимально избегает swap
  • 10–20 = рекомендуется для веб-серверов (WordPress, Node.js и т.д.)
  • 60 = значение по умолчанию Ubuntu/Debian
  • 100 = ядро активно использует swap

Для веб-сервера на VPS SSD рекомендуем значение 10:

sudo sysctl vm.swappiness=10

Чтобы сохранить после перезагрузки:

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf

Шаг 7 — Настройте cache pressure

Параметр vfs_cache_pressure управляет тем, насколько быстро ядро освобождает кэш inode и dentry:

sudo sysctl vm.vfs_cache_pressure=50
echo 'vm.vfs_cache_pressure=50' | sudo tee -a /etc/sysctl.conf

Значение по умолчанию — 100. Снижение до 50 сохраняет больше кэша в памяти, что полезно для нагруженных веб-серверов.


Как отслеживать использование swap?

Регулярный мониторинг поможет понять поведение сервера:

# Общее использование памяти и swap
free -h

# Процессы по потреблению RAM
ps aux --sort=-%mem | head -10

# Статистика swap
vmstat -s | grep -i swap

# Непрерывный мониторинг (обновление каждые 2 секунды)
watch -n 2 'free -h && swapon --show'

Если swap постоянно загружен более чем на 50%, это сигнал: пора увеличить объём RAM. Ознакомьтесь с доступными тарифами VPS NVMe для быстрого обновления.


Как отключить или удалить swap?

Если вы увеличили RAM или swap больше не нужен:

# Деактивировать swap
sudo swapoff /swapfile

# Удалить запись из /etc/fstab (отредактируйте вручную)
sudo nano /etc/fstab

# Удалить файл
sudo rm /swapfile

Swap на SSD vs HDD: что нужно знать

На VPS с SSD или NVMe-хранилищем (как в тарифах VPS SSD и VPS NVMe от CLIQHOST) swap работает значительно быстрее, чем на обычном HDD. Низкая латентность SSD делает пагинацию памяти гораздо менее болезненной для приложений.

Однако ресурс записи SSD ограничен. Поэтому:
- Держите swappiness низким (10–20)
- Используйте swap как страховку, а не как основную RAM
- Мониторьте износ SSD командой smartctl


Устранение типичных ошибок

Ошибка: «swapon: /swapfile: insecure permissions 0644»

sudo chmod 600 /swapfile

Ошибка: «fallocate failed: Operation not supported»

Некоторые файловые системы (например, Btrfs) не поддерживают fallocate для swap. Используйте dd:

sudo dd if=/dev/zero of=/swapfile bs=1M count=2048

Swap не активируется после перезагрузки

Проверьте синтаксис /etc/fstab:

sudo mount -a
# При ошибке — исправьте строку в fstab

Заключение

Настройка swap-файла на Linux VPS — одна из самых простых и эффективных мер для повышения стабильности сервера. Несколько команд — и ваши приложения защищены от сбоев, вызванных нехваткой памяти.

Если swap постоянно задействован в продакшн-среде, команда CLIQHOST готова помочь с консультацией и миграцией на более мощный тариф. Ознакомьтесь с нашими предложениями VPS SSD и VPS NVMe — высокая производительность и надёжность для любых задач.

SHARE
// Что говорят наши клиенты

Что говорят наши клиенты

Реальные отзывы клиентов, которые доверяют CLIQHOST за производительность, надёжность и профессиональную техническую поддержку.

★★★★★

"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."

AM
Andrei M.
eCommerce owner · Chișinău
★★★★★

"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."

EV
Elena V.
Web agency · Bălți
★★★★★

"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."

DC
Dmitri C.
SaaS founder · Chișinău