Swap — это пространство на диске, которое используется, когда объем физической памяти RAM заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в область подкачки.
Пространство подкачки может иметь форму выделенного раздела подкачки или файла подкачки. В большинстве случаев при запуске CentOS на виртуальной машине раздел подкачки отсутствует, поэтому единственный вариант — создать файл подкачки.
В этом руководстве объясняется, как добавить файл подкачки в системах CentOS 7.
Содержание
Подготовка
Прежде чем продолжить это руководство, проверьте, включена ли в вашей установке CentOS подкачка, набрав:
sudo swapon --show
Если вывод пуст, это означает, что в вашей системе не включено пространство подкачки.
В противном случае, если вы получите что-то вроде ниже, на вашем компьютере уже включен свопинг.
NAME TYPE SIZE USED PRIO
/dev/dm-1 partition 1.5G 0B -1
Хотя это возможно, не принято иметь несколько пространств подкачки на одной машине.
Создание файла подкачки
Пользователь, под которым вы вошли в систему, должен иметь права sudo, чтобы иметь возможность активировать свопинг. В этом руководстве мы добавим 1 1G
подкачки. Если вы хотите добавить больше подкачки, замените 1 1G
размером пространства подкачки, которое вам нужно.
Выполните следующие шаги, чтобы добавить пространство подкачки в системе CentOS 7.
-
Сначала создайте файл, который будет использоваться как пространство подкачки:
sudo fallocate -l 1G /swapfile
Если утилита
fallocate
недоступна в вашей системе или вы получаете сообщение об ошибке, в котором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
-
Затем настройте область подкачки Linux для файла:
sudo mkswap /swapfile
-
Выполните следующую команду, чтобы активировать подкачку:
sudo swapon /swapfile
Сделайте изменение постоянным, открыв файл
/etc/fstab
:sudo nano /etc/fstab
и вставив следующую строку:
/ etc / fstab/swapfile swap swap defaults 0 0
-
Убедитесь, что своп активен, используя команду
swapon
илиfree
как показано ниже: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
Регулировка значения подкачки
Swappiness — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Подкачка может иметь значение от 0 до 100. Низкое значение заставит ядро по возможности избегать подкачки, в то время как более высокое значение заставит ядро использовать пространство подкачки более агрессивно.
Значение подкачки по умолчанию в CentOS 7 — 30. Вы можете проверить текущее значение подкачки, введя следующую команду:
cat /proc/sys/vm/swappiness
30
В то время как значение подкачки 30 подходит для настольных компьютеров и компьютеров для разработки, для рабочих серверов вам может потребоваться установить более низкое значение.
Например, чтобы установить значение подкачки 10, введите:
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
Выводы
Вы узнали, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе CentOS 7.
Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.