Swap — это пространство на диске, которое используется, когда объем физической памяти RAM заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в область подкачки.
Пространство подкачки может иметь форму выделенного раздела подкачки или файла подкачки. В большинстве случаев при запуске Linux на виртуальной машине раздела подкачки нет, поэтому единственный вариант — создать файл подкачки.
Это руководство было протестировано в системах Linux с Ubuntu 18.04 и CentOS 7, но оно должно работать с любым другим дистрибутивом Linux.
Содержание
Как добавить файл подкачки
Выполните следующие действия, чтобы добавить 1 ГБ свопа на свой сервер. Если вы хотите добавить 2 ГБ вместо 1 Гб, заменить 1G с 2G .
-
Создайте файл, который будет использоваться для свопа:
sudo fallocate -l 1G /swapfileЕсли
faillocateне установлен или вы получили сообщение об ошибке, в которомfallocate failed: Operation not supportedчтоfallocate failed: Operation not supportedвы можете использовать следующую команду для создания файла подкачки:sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576 -
Только пользователь root должен иметь возможность писать и читать файл подкачки. Чтобы установить правильный тип разрешений :
sudo chmod 600 /swapfile -
Используйте утилиту
mkswapчтобы настроить файл как область подкачки Linux:sudo mkswap /swapfile -
Включите свопинг с помощью следующей команды:
sudo swapon /swapfileЧтобы сделать изменение постоянным, откройте файл
/etc/fstabи добавьте следующую строку:/ etc / fstab/swapfile swap swap defaults 0 0 -
Чтобы убедиться, что своп активен, используйте либо команду
swaponлибоfreeкак показано ниже:sudo swapon --showNAME TYPE SIZE USED PRIO /swapfile file 1024M 507.4M -1sudo free -htotal used free shared buff/cache available Mem: 488M 158M 83M 2.3M 246M 217M Swap: 1.0G 506M 517M
Как настроить значение подкачки
Swappiness — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Подкачка может иметь значение от 0 до 100. Низкое значение заставит ядро по возможности избегать подкачки, в то время как более высокое значение заставит ядро более агрессивно использовать пространство подкачки.
Значение swappiness по умолчанию — 60. Вы можете проверить текущее значение swappiness, введя следующую команду:
cat /proc/sys/vm/swappiness
60
Хотя значение подкачки 60 подходит для большинства систем Linux, для производственных серверов вам может потребоваться установить более низкое значение.
Например, чтобы установить значение swappiness равным 10, вы должны выполнить следующую команду sysctl :
sudo sysctl vm.swappiness=10
Чтобы сделать этот параметр постоянным при перезагрузке, добавьте следующую строку в /etc/sysctl.conf :
vm.swappiness=10
Оптимальное значение swappiness зависит от рабочей нагрузки вашей системы и того, как используется память. Вы должны настраивать этот параметр небольшими приращениями, чтобы найти оптимальное значение.
Как удалить файл подкачки
Если по какой-либо причине вы хотите деактивировать и удалить файл подкачки, выполните следующие действия:
-
Сначала деактивируйте своп, набрав:
sudo swapoff -v /swapfile -
Удалите запись файла подкачки
/swapfile swap swap defaults 0 0из файла/etc/fstab. -
Наконец, удалите фактический файл подкачки с помощью команды
rm:sudo rm /swapfile
Выводы
Вы узнали, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе Linux.
Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.