Categories: Шпаргалки

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

Используемые термины: файл подкачки , Linux .

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

Рассмотрим процесс по шагам.

Создаем отдельный файл:

dd if=/dev/zero of=/swapfile bs=1024 count=4194304

* данный файл будет располагаться в корне Linux с названием swapfile ( of= ). Его объем будет 4 Гб (4 * 1024 * 1024) ( count= ).

Расчет объема для файла подкачки — дело индивидуальное. Стандартно, можно взять объем оперативной памяти и умножить на 2. Полученный результат использовать. Однако, чем больше оперативной памяти, тем менее вероятно, что подкачка понадобится и, возможно, ее не обязательно создавать. Более того, для уменьшения нагрузки на диск, файл подкачки может быть отключен.

Другими словами, если мы не знаем, какой нам нужен объем, но уверены, что нужен файл подкачки, пользуемся формулой <память RAM> * 2.

Сделаем так, чтобы права на созданный файл были только у владельца:

chmod 600 /swapfile

Делаем область подкачки из файла:

mkswap /swapfile

Включаем файл подкачки:

swapon /swapfile

Готово.

Для проверки можно воспользоваться двумя командами:

free -h

swapon —show

* первая команда покажет объемы оперативной памяти и файла подкачки, а также их задействованность. Вторая покажет информацию по файлу подкачки.

Чтобы файл подкачки использовался каждый раз при старте системы, отредактируем fstab:

vi /etc/fstab

Добавим строку:

/swapfile swap swap defaults 0 0

При необходимости, отключить swap можно командой:

swapoff /swapfile

Также может оказаться полезна команда, которая очистит swap, если он был забит:

swapoff -a && swapon -a

* с ее помощью мы отключим все файлы подкачи в системе и подключим их снова.

admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

5 дней ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

5 дней ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

5 дней ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

5 дней ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

5 дней ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

5 дней ago