Своп — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в пространство подкачки.
Пространство подкачки может принимать форму выделенного раздела подкачки или файла подкачки. Как правило, при запуске CentOS на виртуальной машине раздел подкачки отсутствует, поэтому единственным вариантом является создание файла подкачки.
В этой статье описываются этапы добавления файла подкачки в системах CentOS 8.
Выполните следующие действия как пользователь root или пользователь с привилегиями sudo, чтобы добавить пространство подкачки в системе CentOS 8.
sudo fallocate -l 1G /swapfile
В этом примере мы создаем файл подкачки размером 1G. Если вам нужно больше подкачки, замените 1G на нужный размер.
Если утилита fallocate недоступна в вашей системе, или вы получаете сообщение об ошибке fallocate failed: Operation not supported, тогда с помощью команды dd создайте файл подкачки:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
sudo chmod 600 /swapfile
sudo mkswap /swapfile
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=0abdb8ba-57d6-4435-8fd8-5db9fc705045
sudo swapon /swapfile
sudo swapon --show
NAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1
sudo free -h
total used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M
sudo nano /etc/fstab
Вставьте следующую строку:
/etc/fstab
/swapfile swap swap defaults 0 0
Swappiness — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Значение подкачки может иметь значение от 0 до 100. Низкое значение заставит ядро стараться избегать подкачки всякий раз, когда это возможно, в то время как более высокое значение заставит ядро более агрессивно использовать пространство подкачки.
Значение подкачки по умолчанию в CentOS 8 равно 30. Вы можете проверить текущее значение подкачки, введя следующую команду:
cat /proc/sys/vm/swappiness
30
Хотя значение swappiness 30 подходит для настольных компьютеров и компьютеров разработки, для производственных серверов может потребоваться установить более низкое значение.
Например, чтобы установить значение swappiness на 10, введите:
sudo sysctl vm.swappiness=10
Чтобы сделать этот параметр постоянным при перезагрузках, добавьте в файл /etc/sysctl.conf следующую строку:
/etc/sysctl.conf
vm.swappiness=10
Оптимальное значение подкачки зависит от рабочей нагрузки вашей системы и от того, как используется память. Вы должны регулировать этот параметр с небольшими приращениями, чтобы найти оптимальное значение.
Чтобы деактивировать и удалить файл подкачки, выполните следующие действия:
sudo swapoff -v /swapfile
sudo rm /swapfile
Мы показали вам, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе CentOS 8.
Если вы столкнулись с проблемой или у вас есть отзыв, оставьте комментарий ниже.