Как создать и увеличить подкачку (Swap) в ОС Linux
В этой статье мы собираемся добавить пространство подкачки в ОС Linux (RHEL, CentOS, Ubuntu), чтобы предотвратить проблемы с переполнением памяти. Своп важен, когда ваш сервер часто выходит из памяти и зависает (OOM), это может привести к повреждению базы данных MySQL и множеству проблем с сервером. Прежде чем мы начнем, я хотел бы сообщить, что это руководство действительно только для серверов типа KVM и выделенных серверов. Для Openvz и других серверов на основе контейнеров это руководство не будет работать.
Пространство подкачки в Linux используется, когда объем физической памяти (RAM) заполнен. Если системе требуется больше ресурсов памяти и ОЗУ заполнено, неактивные страницы в памяти перемещаются в пространство подкачки. Хотя пространство подкачки может помочь компьютерам с небольшим объемом оперативной памяти, его не следует считать заменой большего объема оперативной памяти. Пространство подкачки находится на жестких дисках, которые имеют более медленное время доступа, чем физическая память.
- Защита от ошибок OOM ( нехватка памяти), сбоев, непредсказуемости / нестабильности системы, связанной с памятью.
- Увеличивает доступную память для системы и позволяет запускать больше программ одновременно и более безопасно
- Предотвращает неактивность сервера/зависания
Шаг 1 :
Следуйте этим командам одна за другой:
cd /var
touch swap.img
chmod 600 swap.img
ШАГ 2 :
Мы создадим 1 ГБ (1024 МБ) свопа:
dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
Результат будет выглядеть так:
[root@srv1 var]# dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 3.30777 s, 317 MB/s
ШАГ 3 :
Создание раздела обмена:
mkswap /var/swap.img
Результат будет выглядеть так:
[root@srv1 var]# mkswap /var/swap.img
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=5813e8e7-1034-4700-84c2-c06905e26535
ШАГ 4:
Включение свопа:
swapon /var/swap.img
Проверка обмена:
free -h
[root@srv1 var]# free -h
total used free shared buff/cache available
Mem: 1.9G 260M 144M 27M 1.6G 1.5G
Swap: 999M 0B 999M
Шаг 5:
Включение во время загрузки сервера, запустите следующую команду, которая добавит запись /etc/fstab :
echo "/var/swap.img none swap sw 0 0" >> /etc/fstab
Все готово, вы только что включили раздел Swap на своем сервере.