Подробный гайд: Настройка 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 с высокими требованиями к защищенности (например, уровни "Орел" или "Воронеж"), учтите следующее:
- Утечка данных: При сбросе страниц памяти в swap конфиденциальные данные (ключи, пароли) могут быть записаны на диск в открытом виде.
- Рекомендации:
- По возможности используйте шифрованный 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).
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.