Доброго времени суток, уважаемые читатели. Сегодня тема статьи: "Как создать Swap файл в Linux". Рассмотрим процесс создания Swap файла, в операционной системе Linux.

Swap – это дисковое пространство, используемое в качестве виртуальной оперативной памяти компьютера. Обычно как Swap пространство, в Linux используется специально созданный при установке ОС раздел. В случае если Swap-раздел не был создан при установке операционной системы, либо нужно увеличить Swap-пространство позднее, можно создать специальный Swap-файл, который система будет использовать как Swap-пространство.

Использование Swap-файла, будет актуально для тех, кто использует VDS для размещения своих сайтов в интернете. При использовании VDS, предоставляется готовый шаблон операционной системы, в котором отсутствует раздел Swap. При необходимости, данное ограничение можно обойти созданием Swap-файла.

Создание Swap файла в Linux

  • Для начала запустим утилиту htop, и посмотрим какие ресурсы у нас есть в наличии.
  • В моём случае, уже имеется swap-пространство размером 820 mb. В Вашем случае, swap может не быть вообще.
проверка ресурсов системы
  • Ну а теперь, можно приступать к процессу создания swap-файла. В наших целях мы будем использовать утилиту dd. Команда будет выглядеть таким образом:
# dd if=/dev/zero of=/swapfile count=1024 bs=1MiB
  • Данной командой, мы создадим в корне сайта файл под названием swapfile, размером 1024 Mb.
создания файла swap
  • После создания файла, нужно задать необходимые права.
# chmod 600 /swapfile
  • Далее создаем пространство подкачки.
# mkswap /swapfile
  • После всех предварительных действий, можно подключить swap-файл к системе.
# swapon /swapfile
  • Проверяем всё ли сделано правильно. Запускаем утилиту htop, и смотрим на результат наших действий.
проверка объёма swap
  • Как видно на картинке, swap-пространство увеличилось на 1Gb. Swap-файл именно таких размеров мы и создавали. Значит всё сделано правильно.

Автоматизация подключения Swap-файла к системе

  • Swap-файл мы создали, но система будет использовать его только в текущей сессии. После перезагрузки или выключения, система не будет использовать данный файл.
  • Для того, чтобы файл использовался системой и после перезагрузки, нужно добавить одну строчку кода в файл /etc/fstab.
/swapfile   swap    swap    sw  0   0
автоматизация подключения swap-файла

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

  • Для того, чтобы оптимизировать работу Swap, можно добавить две строчки в файл /etc/sysctl.conf.
vm.swappiness = 10
vm.vfs_cache_pressure = 50
оптимизация swap

--- Первая строчка задаёт процент оставшейся неиспользуемой оперативной памяти, при котором начинается использования пространства подкачки. В моём случае это 10. Значит при достижении 90% использования оперативной памяти, система начнёт задействовать Swap.

--- Вторая строчка отвечает за использование дискового пространства, и зависит от Ваших физических ресурсов. При наличии оперативной памяти более 2Gb, советуют использовать значение 1000 и более. При наличии оперативной памяти меньших размеров, и дисков SSD, советуют использовать значение 50.

Показатели представленные выше, можно изменять под свои ресурсы.

  • После добавления строчек в файл /etc/sysctl.conf, нужно запустить команду на перечтение конфигурации.
# sysctl -p

Отключение Swap-файла

  • При необходимости отключения Swap-файла, нужно запустить необходимую команду. В команде нужно указать путь к Вашему файлу подкачки.
# swapoff /swapfile
  • После выполнения данной команды, если Вы запустите htop, то увидите, что пространство подкачки уменьшилось, либо отсутствует вообще, в зависимости от Вашего случая.
  • Кроме того, нужно будет удалить строчки, которые мы добавляли для оптимизации Swap, в файл /etc/sysctl.conf, и в файл /etc/fstab для автоматизации подключения.
  • После удаления строчек, также нужно запустить команду на перечтение конфигурации.
# sysctl -p

Сегодня мы рассмотрели тему: "Как создать Swap файл в Linux". Рассмотрели процесс создания, оптимизации и удаления файла подкачки в Linux. Смотрите также видео по теме.

Надеюсь статья была вам полезна. До встречи в новых статьях.

С уважением, Андрей Бондаренко.


Видео на тему "Как создать Swap файл в Linux":