Подробный гайд: Настройка swap на сервере Astra Linux с 32 ГБ ОЗУ

Настройка swap на сервере Astra Linux с 32 ГБ ОЗУ: оптимальный размер подкачки, создание файла, тюнинг swappiness и советы по безопасности системы.

2026.10.31                  


Подробный гайд: Настройка swap на сервере Astra Linux с 32 ГБ ОЗУПодробный гайд: Настройка swap на сервере Astra Linux с 32 ГБ ОЗУ Для сервера под управлением Astra Linux с 32 ГБ оперативной памяти выбор объема подкачки (swap) зависит от рабочих нагрузок, но существуют устоявшиеся рекомендации, обеспечивающие баланс между стабильностью и экономией дискового пространства.


1. Рекомендуемый объем swap для 32 ГБ ОЗУ

* Оптимальный размер: 4–8 ГБ.

Согласно рекомендациям для enterprise-дистрибутивов Linux (включая RHEL/Debian, на которых базируется Astra Linux), для систем с 16–64 ГБ ОЗУ минимальный рекомендуемый размер swap составляет 4 ГБ. Для большинства серверных задач с 32 ГБ ОЗУ этого достаточно, чтобы обработать внезапные пики потребления памяти без падения служб.



* Минимальный размер: 2–3 ГБ.

В документации Astra Linux указывается, что базовым начальным выбором может быть объем 2–3 ГБ с последующим уточнением по итогам эксплуатации. Однако для сервера с 32 ГБ ОЗУ это может быть маловато при работе с тяжелыми базами данных или виртуализацией.

* Гибернация:

Если сервер не уходит в спящий режим (что типично для серверов), создавать swap равным объему ОЗУ (32 ГБ) не нужно.


2. Проверка текущего состояния подкачки

Перед внесением изменений проверьте, есть ли уже активный swap и какой у него размер:

# Проверка общего объема памяти и swap
free -h

# Детальная информация об активных областях подкачки
swapon --show

3. Способ А: Создание файла подкачки (Рекомендуется)

Использование файла подкачки предпочтительнее раздела, так как его размер можно легко изменить без переразметки диска. Этот способ отлично работает на SSD и в виртуальных машинах.

Шаг 1. Создайте файл нужного размера (в примере — 4 ГБ):

sudo fallocate -l 4G /swapfile

Если команда fallocate выдает ошибку (например, на некоторых файловых системах), используйте dd:

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

Шаг 2. Установите строгие права доступа (только для root, это важно для безопасности):

sudo chmod 600 /swapfile

Шаг 3. Отформатируйте файл как swap-пространство:

sudo mkswap /swapfile

Шаг 4. Активируйте файл подкачки:

sudo swapon /swapfile

Шаг 5. Добавьте запись в /etc/fstab для автоматического подключения при загрузке:

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

4. Способ Б: Использование выделенного раздела подкачки

Если при установке Astra Linux вы создали отдельный раздел для swap, или у вас есть неразмеченное пространство на диске.

Шаг 1. Найдите имя свободного раздела (например, /dev/sda3):

sudo fdisk -l
# или
lsblk

Шаг 2. Отформатируйте раздел как swap:

sudo mkswap /dev/sdXn   # замените sdXn на имя вашего раздела

Шаг 3. Активируйте раздел:

sudo swapon /dev/sdXn

Шаг 4. Добавьте запись в /etc/fstab (лучше использовать UUID для надежности):

# Узнайте UUID раздела
sudo blkid /dev/sdXn

# Добавьте в fstab (замените UUID на реальный)
echo 'UUID=ваш-uuid-раздела none swap sw 0 0' | sudo tee -a /etc/fstab

5. Оптимизация производительности (настройка swappiness)

Параметр swappiness определяет, насколько агрессивно ядро Linux будет использовать swap. Значение варьируется от 0 до 100.

  • По умолчанию в большинстве дистрибутивов оно равно 60, что для сервера с 32 ГБ ОЗУ слишком много (система начнет сбрасывать данные на диск, даже когда свободной оперативной памяти еще много).

* **Рекомендуемое значение для сервера:

10 или 20**. Это заставит систему использовать swap только в случае реальной нехватки физической памяти.


Проверка текущего значения:

cat /proc/sys/vm/swappiness

Временное изменение (до перезагрузки):

sudo sysctl vm.swappiness=10

Постоянное изменение:

Добавьте параметр в конец файла /etc/sysctl.conf:

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

6. Особенности безопасности в Astra Linux Special Edition (SE)

Если вы используете Astra Linux Special Edition с высокими требованиями к защищенности (например, уровни "Орел" или "Воронеж"), учтите следующее:

  1. Утечка данных: При сбросе страниц памяти в swap конфиденциальные данные (ключи, пароли) могут быть записаны на диск в открытом виде.
  2. Рекомендации:

    • По возможности используйте шифрованный swap-раздел (например, через LUKS), чтобы данные подкачки были защищены.
    • В некоторых политиках безопасности требуется настройка очистки swap при выключении системы. Это можно реализовать через добавление параметра ядра или скрипта, выполняющего swapoff -a и mkswap при shutdown.
    • Убедитесь, что права на файл подкачки строго ограничены (chmod 600), как показано в шаге 2 инструкции выше.

7. Как удалить или изменить размер swap-файла

Если вам потребовалось изменить размер (например, увеличить с 4 ГБ до 8 ГБ):

# 1. Отключаем текущий swap
sudo swapoff /swapfile

# 2. Удаляем старый файл
sudo rm /swapfile

# 3. Создаем новый нужного размера (например, 8G)
sudo fallocate -l 8G /swapfile

# 4. Повторяем шаги настройки: права, форматирование, активация
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

Запись в /etc/fstab при этом изменять не нужно, так как путь к файлу остается тем же.


Важно

Для сервера Astra Linux с 32 ГБ ОЗУ создайте swap-файл размером 4–8 ГБ, снизьте параметр vm.swappiness до 10, и убедитесь, что настройки соответствуют политикам информационной безопасности вашей организации (особенно в версии Special Edition).


Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.


Статью подготовил: Аверко Денис Сергеевич @Nymexis г. Омск (специалист по ЗИ)

Комментарии

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