Как создать файл подкачки в Linux

linux-swap-file-featured

Файл подкачки в Linux — это специфические области на диске, зарезервированные под виртуальную память. Они в первую очередь используются для повышения производительности системы при выполнении ресурсоёмких задач, таких как видеомонтаж. Когда системе становится сложно, ядро переместит неактивные процессы в файл подкачки, чтобы освободить место для активных процессов в оперативной памяти.

Обычно при установке Linux по умолчанию создается раздел подкачки, который выделяет пространство на жестком диске для этой цели. У этого решения есть несколько недостатков, таких как нехватка места, если у вас на старом компьютере небольшой диск, или если вы используете SSD на новом устройстве.

Проблема с SSD-дисками заключается в том, что у них ограниченная вместимость записи в ячейках. Даже с уровнем износа, флэш-память имеет конечный срок службы, и многократная запись может сделать отдельные ячейки непригодными для использования.

Также читайте: Как управлять использованием подкачки в Linux

Какова альтернатива?

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

Файл подкачки функционирует аналогично разделу, хотя у него есть дополнительное преимущество в том, что пользователи могут контролировать размер без проблемы изменения объема. Кроме того, степень выделения подкачки или коэффициент “swappiness” также можно контролировать, изменяя значение swap.

Создание файла подкачки

Я проведу вас через основной пример создания файла подкачки объёмом 1 ГБ.

Сначала создайте файл, введя следующую команду в вашем терминале:

sudo fallocate -l 1G /mnt/1GB.swap

Если у вас не установлен fallocate, выполните более традиционную команду:

sudo dd if=/dev/zero of=/mnt/1GB.swap bs=1024 count=1048576

Теперь отформатируйте файл подкачки:

sudo mkswap /mnt/1GB.swap

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

sudo swapon /mnt/1GB.swap

Откройте файл “/etc/fstab” в вашем любимом текстовом редакторе и добавьте это в конец, чтобы сделать изменения постоянными:

/mnt/1GB.swap none swap sw 0 0

Строка выше разбивается следующим образом:

  • “/mnt/1GB.swap” – это устройство и имя файла
  • “swap” – это определяет точку монтирования
  • “swap sw” – это показывает, что файл подкачки будет активирован с помощью swapon – s (см. ниже)
  • “0 0” – это параметры, используемые программой dump и командой fsck соответственно

На этом этапе, если вы хотите изменить значение “swappiness”, вы можете сделать это, отредактировав “/etc/sysctl.conf”, так же, как вы редактировали fstab выше. Значение swappiness обычно составляет 60; чем выше число (до 100), тем более агрессивно используется подкачка.

vm.swappiness=10

Необходимое количество подкачки зависит от того, как работает система и как используется память. Пользователи должны экспериментировать, чтобы найти оптимальный вариант для них. Если указанное выше значение установлено в ноль, файл подкачки будет использоваться только тогда, когда система исчерпала память. Значения выше нуля позволят системе выводить неактивные процессы и освобождать память для кэширования на диске; это потенциально может улучшить общую производительность системы.

Также читайте: Что нужно знать о разделе подкачки в Linux

В конце проверьте, активно ли используется подкачка:

sudo swapon -s

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