Своп — это пространство на диске, которое используется, когда объем оперативной памяти заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в пространство подкачки.
Файл подкачки может принимать форму выделенного раздела подкачки или файла подкачки. Обычно при запуске виртуальной машины Debian раздел подкачки отсутствует, поэтому единственный вариант — создать файл подкачки.
Из этой статьи вы узнаете, как добавить файл подкачки в Debian 10 Buster.
Прежде чем вы начнете
Хотя это возможно, нередко иметь несколько мест подкачки на одном компьютере. Чтобы проверить, включена ли в вашей установке Debian подкачка, выполните следующую команду:
sudo swapon --show
Если выходные данные пусты, это означает, что в системе нет пространства подкачки.
В противном случае, если вы получите что-то похожее на приведенное ниже, в вашей системе Debian уже включен своп.
NAME TYPE SIZE USED PRIO /dev/sda2 partition 2G 0B -1
Чтобы активировать swap, пользователь, выполняющий команды, должен иметь права sudo.
Создание файла подкачки
В этом примере мы создадим и активируем 1G свопфайла. Чтобы создать больший своп, замените 1G, размером требуемого пространства подкачки.
Следующие шаги показывают, как добавить пространство подкачки в Debian 10.
- Сначала создайте файл, который будет использоваться для обмена:
sudo fallocate -l 1G /swapfile
Если fallocate не установлен или вы получаете сообщение об ошибке, в котором говорится, что 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:
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. Низкое значение заставит ядро стараться избегать подкачки всякий раз, когда это возможно, в то время как более высокое значение заставит ядро более агрессивно использовать пространство подкачки.
Значение подкачки по умолчанию равно 60. Вы можете проверить текущее значение подкачки, используя команду cat:
cat /proc/sys/vm/swappiness
60
В то время как значение 60 подходит для настольных компьютеров, для производственных серверов следует установить более низкое значение.
Например, чтобы установить значение swappiness на 10, введите:
sudo sysctl vm.swappiness=10
Чтобы установить этот параметр постоянным при перезагрузках, добавьте в файл /etc/sysctl.conf следующую строку :
vm.swappiness=10
Оптимальное значение подкачки зависит от рабочей нагрузки вашей системы и от того, как используется память. Вы должны регулировать этот параметр с небольшими приращениями, чтобы найти оптимальное значение.
Удаление файла подкачки
Чтобы деактивировать и удалить файл подкачки, выполните следующие действия:
- Деактивируйте пространство подкачки, выполнив:
sudo swapoff -v /swapfile
- Откройте файл /etc/fstab в текстовом редакторе и удалите запись файла подкачки /swapfile swap swap defaults 0 0.
- Наконец, удалите фактический файл подкачки:
sudo rm /swapfile
Заключение
Вы узнали, как создать файл подкачки, активировать и настроить пространство подкачки на вашем компьютере с Debian 10.
Если вы столкнулись с проблемой или у вас есть отзыв, оставьте комментарий ниже.