🖥️ Как создать и настроить файл подкачки (swap).

Введение.

Файл подкачки (swap) — это область на диске, используемая для временного хранения данных, которые не помещаются в оперативную память (RAM). Когда оперативная память переполнена, система перемещает неактивные страницы памяти в swap, освобождая RAM для более приоритетных процессов. Это помогает предотвратить зависания системы, но доступ к данным на диске медленнее, чем к данным в RAM. Swap может быть реализован как отдельный раздел на диске или как файл.

Данная инструкция описывает, как создать раздел для swap (виртуальное пространство подкачки), как проверить его функционирование и настроить автоматическое подключение после перезагрузки.

Что такое swap файл?

Swap-файл (его ещё называют «файл подкачки») — это специальный файл на жёстком диске, в котором хранятся данные для быстрого доступа системы. Это как бы продолжение оперативной памяти.

Принцип работы: система создаёт на диске один большой файл, к которому быстрее всего можно получить доступ. В этот файл выгружаются те данные из оперативной памяти RAM, которые сейчас пока не нужны. Например, программа давно висит в фоне и с ней никто не работает. Как только компьютер увидит, что с программой снова активно работают, он загружает обратно в оперативную память её данные из swap.

Проверка наличия swap.

Прежде чем создавать swap, полезно проверить, существует ли уже раздел или файл swap?

Для этого выполните следующую команду:

$ sudo swapon --show

Ответ:

Если вывод пустой, значит, swap не активирован.

Также можно проверить общее использование RAM и swap с помощью команды:

$ sudo free -h

Ответ:

Эта команда выводит общий объем доступного пространства подкачки:

$ sudo grep SwapTotal /proc/meminfo

Ответ:

Создание swap-файла.

Перед созданием swap-файла необходимо убедиться, что на диске достаточно свободного места.

Используйте команду:

$ sudo df -h

Эта команда покажет все разделы и их использование, включая доступное место.

Для создания swap-файла размером 8 Gb выполните команду:

$ sudo fallocate -l 8G /swapfile

Если fallocate не поддерживается, вы можете использовать:

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=4096

Рекомендуется, чтобы размер swap был равен объему оперативной памяти (RAM) или в два раза больше для систем с малым объемом RAM.

Например, если у вас 4 Gb RAM, можно создать swap размером 4 Gb или 8 Gb.

Важно установить правильные права доступа к swap-файлу, чтобы только root мог его использовать:

$ sudo chmod 600 /swapfile

Теперь нужно инициализировать файл как swap:

$ sudo mkswap /swapfile

После инициализации активируйте swap-файл:

$ sudo swapon /swapfile

Убедитесь, что swap теперь активен:

$ sudo swapon --show
$ sudo free -h

Чтобы сделать swap активным при каждой загрузке системы, добавьте следующую строку в файл /etc/fstab:

$ sudo mcedit /etc/fstab
/swapfile    none    swap    sw    0    0

Изменение swap.

Важно! При отключении swap не должен использоваться системой. В противном случае можно отключить некоторые сервисы, которые потребляют RAM, и после увеличения swap включить их обратно.

Проверяем активный swap:

$ sudo swapon --show

Ответ:

/swapfile file 256M 0B -2

Видим, что у нас в /swapfile 256M, а нам нужно 8 Gb.

Проверяем, что есть свободное место с помощью команды df -h.

$ sudo df -h

Далее выключаем имеющийся файл подкачки /swapfile:

$ sudo swapoff /swapfile

Проверяем с помощью swapon --show.

$ sudo swapon --show

Меняем размер файла подкачки:

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=8192

Далее инструкция такая же, как и при добавлении swap, только /swapfile уже имеет правильные права.

$ sudo chmod 600 /swapfile

Просто проверим, что это так:

$ sudo ls -la /swapfile

Ответ:

Помечаем /swapfile как файл подкачки:

$ sudo mkswap /swapfile

И активируем swap:

$ sudo swapon /swapfile

Проверяем, что swap увеличился, а также проверяем файл /etc/fstab:

$ sudo swapon --show

$ sudo cat /etc/fstab

Удаление swap.

Чтобы удалить swap-файл, сначала отключите его:

$ sudo swapoff -v /swapfile

Затем удалите файл:

$ sudo rm /swapfile

Удалите запись о swap в файле /etc/fstab.

Полезные советы.

Мониторинг использования swap.

Используйте команды free -h и top для мониторинга использования RAM и swap.

$ sudo free -h

$ sudo top

Оптимизация.

$ sudo cat /proc/sys/vm/swappiness

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

Чтобы изменить его, выполните:

$ sudo sysctl vm.swappiness=10

Чтобы сделать это изменение постоянным, добавьте строку vm.swappiness=10 в файл /etc/sysctl.conf.

$ sudo mcedit /etc/sysctl.conf
vm.swappiness=10

Применить изменения:

$ sudo sysctl -p

Оригиналы источников информации.

  1. siberoloji.com «How to Manage System Swap Space in Debian 12 Bookworm».
  2. kb.fastfox.pro «Как создать и настроить файл подкачки (swap)».
  3. stopgame.ru «SWAP (своп) или файл подкачки».
image_printСКАЧАТЬ ВЕРСИЮ ДЛЯ ПЕЧАТИ

Вам может также понравиться...

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *