В этой статье мы рассмотрим понятие пространства подкачки и научимся создавать такое пространство с помощью файла подкачки (Swap файл) в Linux.
Swap space/partition — это место на диске, созданное операционной системой для использования, когда физическая память полностью используется. Также это место может использоваться как виртуальная память для системы.
Когда в ядре заканчивается память, оно может перемещать незанятые/неактивные процессы в место созданное для подкачки активных процессов в рабочей памяти.
Ниже приведены шаги, которые необходимо выполнить для создания пространства подкачки.
Как создать и включить swap в Linux
1. В этом примере мы создадим файл подкачки размером 2 ГБ, используя команду dd, как показано ниже. Обратите внимание, что bs = 1M означает чтение и запись до 1 Мбайт за раз, а count = (1 x 2048)MB.
# dd if=/dev/zero of=/swapfile bs=1M count=2048
В качестве альтернативы используйте команду fallocate следующим образом:
# fallocate --length 2GiB /swapfile
А затем установите соответствующие разрешения для файла. Сделайте его доступным только для пользователей root следующим образом:
# chmod 600 /swapfile
2. Теперь настройте файл для пространства подкачки с помощью команды mkwap.
# mkswap /swapfile
3. Затем включите файл подкачки и добавьте его в систему.
# swapon /swapfile
4. После этого включите файл подкачки, который будет установлен во время загрузки. Отредактируйте файл /etc/fstab и добавьте в него следующую строку:
/swapfile swap swap defaults 0 0
В приведенной выше строке каждое поле означает:
- /swapfile — имя устройства/файла
- swap — определяет точку подключения устройства
- swap — указывает тип файловой системы
- defaults — описывает параметры установки
- 0 — указывает параметр, который будет использоваться программой сброса
- 0 — указывает параметр команды fsck
6. Чтобы установить, как часто файл подкачки может использоваться ядром, откройте файл /etc/sysctl.conf и добавьте следующие параметры.
vm.swappiness = 10
vfs_cache_pressure = 50
vm.swappiness — влияет на процесс переноса данных в swap при недостатке физической памяти. Большие значения приводят к более активному использованию swap-файла, меньшие по факту не сильно уменьшают использование swap-файла но чуть затягивают процесс перемещения данных в swap (т.е. перенос в swap ядро просто пытается отложить на потом). Значение по умолчанию 60, рекомендуется установить 10.
vm.vfs_cache_pressure — влияет на то на сколько агрессивно ядро забирает блоки из кеша, который используется для буферизации данных о каталогах и i-node-ов. Это только один из типов кешей, которые ядро использует при работе с диском. А кроме того чем больше значение тем более агрессивно ядро будет забирать страницы из этого кеша.
7. Теперь проверьте, чтобы файл подкачки был создан с помощью команды swapon.
# swapon -s
OR
# free
OR
# cat /proc/swaps
Рекомендуем перезагрузить систему, чтобы вышеуказанные изменения вступили в силу. Используйте следующую команду:
# reboot
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего Блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University.
Курсы Cisco и Linux с трудоустройством!
- Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
- Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
- Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
- Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
- Если хотите индивидуальный график — обсудим и осуществим.
- Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- отредактировать резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
2 комментария. Оставить новый
sysctl -p
На Debian 9.4 fallocate работает с байтами, в указании размера, как оказалось.