Подключение к VDS по SSH: PuTTY, терминал и SSH-ключи
Пошаговое руководство по SSH-подключению к Linux VDS: PuTTY, терминал, аутентификация по ключу, правило фильтрации Path Panel и советы по безопасности.
Что такое swap в Linux, как создать swap-файл, настроить swappiness, мониторинг использования swap и оптимизация производительности памяти сервера.
Swap-пространство — это виртуальная память на диске, которую операционная система использует, когда физическая RAM заполнена. Оно предотвращает сбои системы при нехватке памяти и позволяет приложениям продолжать работу. В этом руководстве рассматривается создание swap-файла, его настройка и мониторинг.
Swap не заменяет RAM; он служит лишь аварийным буфером. Постоянно высокое использование swap — признак недостаточного объёма RAM.
Swap-пространство можно создать двумя способами:
| Метод | Преимущество | Недостаток |
|---|---|---|
| Swap-раздел | Немного быстрее | Фиксированный размер |
| Swap-файл | Гибкий, изменяемый размер | Немного медленнее |
Swap-файлы предпочтительны на современных системах, так как их размер можно изменять динамически.
Когда нужен swap?
# Показать использование swap
swapon --show
# Сводка по памяти и swap
free -h
# Подробная информация о памяти
cat /proc/meminfo | grep -i swap
# Список swap-областей
cat /proc/swaps
# Создать swap-файл 2 ГБ (метод dd)
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
# Или с fallocate (быстрее)
sudo fallocate -l 2G /swapfile
# Проверить размер файла
ls -lh /swapfile
# Только root может читать/писать
sudo chmod 600 /swapfile
# Проверить права
ls -la /swapfile
# Вывод: -rw------- 1 root root 2.0G ...
# Пометить как swap-пространство
sudo mkswap /swapfile
# Активировать swap
sudo swapon /swapfile
# Проверить
swapon --show
free -h
Добавьте в /etc/fstab, чтобы swap активировался автоматически при перезагрузке:
# Добавить в /etc/fstab
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# Проверить
cat /etc/fstab | grep swap
Чтобы увеличить существующий swap-файл:
# Отключить swap
sudo swapoff /swapfile
# Создать новый файл большего размера (4 ГБ)
sudo fallocate -l 4G /swapfile
# Переформатировать
sudo mkswap /swapfile
# Снова включить
sudo swapon /swapfile
# Проверить
free -h
Swappiness — значение от 0 до 100, определяющее агрессивность использования swap ядром:
| Значение | Поведение |
|---|---|
| 0 | Использовать swap как можно меньше |
| 10 | Рекомендуется для серверов |
| 60 | Значение по умолчанию Linux |
| 100 | Агрессивное использование swap |
# Показать текущее значение swappiness
cat /proc/sys/vm/swappiness
# Изменить временно (сбрасывается при перезагрузке)
sudo sysctl vm.swappiness=10
# Изменить постоянно
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
# Применить изменения
sudo sysctl -p
swappiness=10 рекомендуется для серверов. Это минимизирует использование swap до исчерпания RAM и снижает дисковый I/O.
# Текущее состояние памяти и swap
free -h
# Непрерывный мониторинг (каждые 2 секунды)
watch -n 2 free -h
# Какие процессы используют swap?
for file in /proc/*/status; do
awk '/VmSwap|Name/{printf $2 " " $3 "\n"}' $file
done | sort -k 2 -n -r | head -10
# Мониторинг с vmstat
vmstat 2 5
# Временно отключить
sudo swapoff /swapfile
# Удалить навсегда
sudo swapoff /swapfile
sudo rm /swapfile
# Также удалите строку swap из /etc/fstab
Перед отключением swap убедитесь, что достаточно свободной RAM. Иначе система может столкнуться с ошибкой OOM (Out of Memory).
Swap-пространство важно для стабильности системы, особенно на серверах с ограниченным объёмом RAM. Создание swap-файла, оптимизация значения swappiness и регулярный мониторинг использования swap улучшат управление памятью вашего сервера. Однако swap — не постоянное решение проблемы нехватки RAM; при постоянно высоком использовании swap рассмотрите увеличение объёма RAM.
Общее правило: при RAM 2 ГБ или меньше — создайте swap в 2 раза больше RAM; при 2-8 ГБ RAM — swap равный RAM; при более 8 ГБ достаточно 4-8 ГБ swap. Если используете гибернацию, нужно не менее объёма RAM.
Высокое использование swap — признак недостаточного RAM. Сначала определите, какие процессы потребляют больше всего памяти (с помощью 'top' или 'htop'). Остановите ненужные сервисы или рассмотрите увеличение RAM. Снижение swappiness до 10 также может помочь.
SSD гораздо более долговечны, чем HDD, при операциях записи, но интенсивное использование swap может сократить срок службы SSD. Минимизируйте использование swap с помощью swappiness=10. На современных SSD это обычно не проблема.
Swap-файлы предпочтительны на современных системах: их размер можно изменять динамически, они просты в создании, а разница в производительности незначительна. Swap-разделы предпочтительны только на старых системах или для особых требований.
Пошаговое руководство по SSH-подключению к Linux VDS: PuTTY, терминал, аутентификация по ключу, правило фильтрации Path Panel и советы по безопасности.
Пошаговое руководство по RDP-подключению к Windows Server VDS: настройка, безопасность NLA, правило фильтрации Path Panel и устранение неполадок.
Смена операционной системы VDS через панель REXE: советы по резервному копированию, поддерживаемые дистрибутивы Linux и версии Windows Server.