Как добавить или создать пространство подкачки в Linux

12 set 2022 2 min di lettura
Как добавить или создать пространство подкачки в Linux
Indice dei contenuti

Подкачка — это пространство на диске, которое используется, когда объем физической оперативной памяти заполнен. Когда в системе Linux заканчивается ОЗУ, неактивные страницы перемещаются из ОЗУ в пространство подкачки.

Пространство подкачки может иметь форму выделенного раздела подкачки или файла подкачки. В большинстве случаев при запуске Linux на виртуальной машине раздел подкачки отсутствует, поэтому наш единственный вариант — создать файл подкачки.

Это руководство было протестировано на системах Linux с Ubuntu 18.04 и CentOS 7, но должно работать с любым другим дистрибутивом Linux.

Как добавить файл подкачки

Выполните следующие действия, чтобы добавить 1 ГБ подкачки на сервер. Если вы хотите добавить 2 ГБ вместо 1 ГБ, замените 1 1G на 2 2G.

  • Создайте файл, который будет использоваться для обмена.
sudo fallocate -l 1G /swapfile

Если faillocate не установлен или вы получаете сообщение об ошибке, говорящее о том, что 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 и добавьте следующую строку:

/swapfile swap swap defaults 0 0
  • Проверьте статус обмена.

Чтобы убедиться, что своп активен, мы можем использовать команду free или swapon, как показано ниже:

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, которое определяет, как часто система будет использовать пространство подкачки. Swappiness может иметь значение от 0 до 100. Низкое значение заставит ядро стараться избегать свопинга, когда это возможно, в то время как более высокое значение заставит ядро более агрессивно использовать пространство подкачки.

Значение swappiness по умолчанию равно 60. Вы можете проверить текущее значение swappiness, введя следующую команду:

cat /proc/sys/vm/swappiness
60

Хотя значение подкачки 60 подходит для большинства систем Linux, для рабочих серверов может потребоваться установить более низкое значение.

Например, чтобы установить значение swappiness равным 10, введите:

sudo sysctl vm.swappiness=10

Чтобы этот параметр сохранялся между перезагрузками, добавьте следующую строку в /etc/sysctl.conf:

sudo nano /etc/sysctl.conf
vm.swappiness=10

Оптимальное значение подкачки зависит от рабочей нагрузки системы и от того, как используется память. Этот параметр необходимо регулировать с небольшими приращениями, чтобы найти оптимальное значение.

Как убрать своп

Если по какой-либо причине вы хотите отключить и удалить файл подкачки, выполните следующие действия:

Сначала отключите своп, набрав:

sudo swapoff -v /swapfile

Удалите запись файла подкачки /swapfile swap swap defaults 0 0 из /etc/fstab.

Наконец, удалите фактический файл подкачки с помощью команды rm:

sudo rm /swapfile

Вывод

Вы узнали, как создать файл подкачки, а также активировать и настроить пространство подкачки в вашей системе Linux.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.