Swap — это пространство на диске, которое используется, когда объем физической памяти RAM заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в область подкачки.
Пространство подкачки может иметь форму выделенного раздела подкачки или файла подкачки. Обычно при запуске Ubuntu на виртуальной машине раздела подкачки нет, и единственный вариант — создать файл подкачки.
В этом руководстве объясняется, как добавить файл подкачки в Ubuntu 20.04.
Содержание
Подготовка
Своп не следует рассматривать как замену физической памяти. Поскольку пространство подкачки — это часть жесткого диска, у него более медленное время доступа, чем к физической памяти. Если вашей системе постоянно не хватает памяти, вам следует добавить больше оперативной памяти.
Как правило, размер файла подкачки зависит от объема оперативной памяти вашей системы:
- Системы с объемом ОЗУ менее 2 ГБ — в 2 раза больше ОЗУ.
- Системы с оперативной памятью от 2 до 8 ГБ — такой же размер, как и объем оперативной памяти.
- Системы с объемом оперативной памяти более 8 ГБ — не менее 4 ГБ подкачки.
Только root или пользователь с привилегиями sudo могут активировать файл подкачки.
Создание файла подкачки
В этом примере мы создадим файл подкачки размером 2 GB
. Если вы хотите добавить больше свопа, замените 2G
на размер пространства подкачки, который вам нужен.
Выполните следующие действия, чтобы добавить пространство подкачки в Ubuntu 20.04:
-
Сначала создайте файл, который будет использоваться как своп:
sudo fallocate -l 2G /swapfile
Если утилита
fallocate
отсутствует в вашей системе или вы получаете сообщение об ошибке, в которомfallocate failed: Operation not supported
чтоfallocate failed: Operation not supported
, используйте следующую команду для создания файла подкачки:sudo dd if=/dev/zero of=/swapfile bs=1024 count=2097152
-
Установите права доступа к файлу на
600
чтобы обычные пользователи не могли писать и читать файл:sudo chmod 600 /swapfile
-
Создайте в файле область подкачки Linux:
sudo mkswap /swapfile
Setting up swapspace version 1, size = 2 GiB (2147479552 bytes) no label, UUID=fde7d2c8-06ea-400a-9027-fd731d8ab4c8
-
Активируйте файл подкачки, выполнив следующую команду:
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 2G 0B -1
sudo free -h
total used free shared buff/cache available Mem: 981Mi 97Mi 68Mi 0.0Ki 814Mi 735Mi Swap: 2.0Gi 10Mi 1.9Gi
Регулировка значения подкачки
Swappiness — это свойство ядра Linux, которое определяет, как часто система будет использовать пространство подкачки. Он может иметь значение от 0 до 100. Низкое значение заставит ядро по возможности избегать подкачки, а более высокое значение заставит ядро использовать пространство подкачки более агрессивно.
В Ubuntu значение swappiness по умолчанию установлено на 60
. Вы можете проверить текущее значение, введя следующую команду:
cat /proc/sys/vm/swappiness
60
Хотя значение подкачки 60
подходит для большинства систем Linux, для производственных серверов вам может потребоваться установить более низкое значение.
Например, чтобы установить значение swappiness равным 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
Выводы
Мы показали вам, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе Ubuntu 20.04.
Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.