Я знаю, как создать и использовать раздел подкачки, но могу ли я использовать вместо этого файл?
Как я могу создать файл подкачки в системе Linux?
Пусть будет ясно, что при работе с файлом вместо раздела возникают небольшие накладные расходы.
Кроме того, у меня на нескольких компьютерах есть файл подкачки на mdadm
RAID, поэтому есть еще одна дополнительная нагрузка. Но если вы vm.swappiness
правильно настроитесь на более приемлемое значение, чем 60, которое является значением по умолчанию, у вас не должно возникнуть никаких проблем.
Например, у меня есть сервер ОЗУ 32 ГБ с файлом подкачки 32 ГБ на RAID6 с vm.swappiness
= 1. Цитируя Википедию:
vm.swappiness
= 1: ядро версии 3.5 и выше, а также ядро Red Hat версии 2.6.32-303 и выше: минимальный объем обмена без полного его отключения.
В этом примере мы создаем файл подкачки:
8 ГБ в размере
Находится в /raid1/
Измените эти две вещи в соответствии с вашими потребностями.
Откройте терминал и станьте root
( su
); если вы sudo
включили, вы также можете сделать, например sudo -i
; см. man sudo
все варианты):
sudo -i
Выделите место для файла подкачки:
dd if=/dev/zero of=/raid1/swapfile bs=1G count=8
При желании, если ваша система поддерживает это, вы можете добавить status=progress
к этой командной строке.
Обратите внимание, что указанный здесь размер указан в G
ГиБ (кратно 1024).
Измените права доступа к файлу подкачки, чтобы только он root
мог получить к нему доступ:
chmod 600 /raid1/swapfile
Сделайте этот файл файлом подкачки:
mkswap /raid1/swapfile
Включите файл подкачки:
swapon /raid1/swapfile
Проверьте, используется ли файл подкачки:
cat /proc/swaps
Откройте текстовый редактор, в котором вы разбираетесь с этим файлом, например, nano
если не уверены:
nano /etc/fstab
Чтобы сделать этот файл подкачки доступным после перезагрузки, добавьте следующую строку:
/raid1/swapfile none swap sw 0 0