SWAP в Linux: Создание, редактирование и удаление раздела или файла

И что же такое Swap в Linux?

Если сервер пытается запустить программу, которая требует больше оперативной памяти, чем доступно, операционка для решения задачи используют технологию swapping ("подкачка"). Суть этой технологии заключается в том, что объем данных, который не помещается в оперативную память временно хранится на жестком диске, в то время как другая часть данных обрабатывается. Рассмотрим два варианта управления своп-разделами в Linux для повышения производительности системы.

В ОС Linux оперативная память (ОЗУ, RAM, random access memory) делится на разделы, называемые страницами (pages). Swapping ("подкачка", своппинг) -
это процесс во время которого страницы памяти копируются в сконфигурированный специально раздел диска, который называется swap space
(раздел подкачки, может быть как и файлом, так и разделом жесткого диска) для того чтобы освободить ОЗУ.
Совокупные размеры физической памяти и раздела подкачки - это объем имеющийся виртуальной памяти.

Своппинг крайне необходим потому что когда системе необходимо больше памяти (приложение или процесс запрашивает у системы больше памяти) чем сейчас свободно в ОЗУ,
ядро разгружает ("откачивает") наименее используемые страницы и освобожденную память выделяет текущему приложению или процессу. А также,
значительное количество страниц используемых программами на стадии запуска, используются только при инициализации и никогда более.
Поэтому система свапит эти страницы и освобождает ОЗУ.

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

Однако для выделенного сервера в некоторых ситуациях своппинг помогает не повесить сервер. Т.е. благодаря подкачки вы будете иметь хоть какое-то (пусть очень замедленное) но все-таки управление сервером.

В Linux есть два вида своппа: раздел подкачки и файл подкачки. Раздел подкачки - это отдельный раздел на жестком диске, используемый только для своппинга, никакие другие файлы не могут там располагаться. В Linux работа с этим разделом происходит на низком уровне. Файл подкачки - это специальный файл в файловой системе.


Swap partition, своп-раздел

Для того что бы в Linux посмотреть какие своп пространства у вас имеются, используйте команду:

swapon -s.

Filename Type Size Used Priority
/dev/sda7 partition 859436 0 -1

Каждая строчка в этом списке описывает имеющиеся у вас своп пространства. В поле "Type" указывается тип пространства: partition (раздел) или file (файл). Поле "Filename" показывает местоположение свопа. Далее идет общий размер свопа и сколько сейчас используется. В последнем поле указан приоритет, т.е. какие пространства системе использовать вначале. Стоит отметить, что если примонтировать несколько своп-простанств расположенных на разных жестких дисках, и выставить им одинаковый приоритет, то Linux будет равномерно распределять страницы памяти по ним, что приведет к существенному увеличению производительности системы.

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

fdisk -l /dev/hdb

Замените /dev/hdb на на путь к устройству где будет расположен своп. Результат должен выглядеть примерно так:

Device Boot Start End Blocks Id System
/dev/hdb1 2328 2434 859446 82 Linux swap / Solaris

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

Как только раздел помечен как своп, необходимо подготовить, для этого используется следующая команда:

mkswap /dev/hdb1

Если никаких ошибок нет, то можно подключать своп-раздел:

swapon /dev/hdb1

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

swapon -s.

Для того что бы новый своп автоматически монтировался при старте системы, необходимо внести некоторые изменения в файл /etc/fstab, в котором содержатся все файловые системы и свопы, монтирующиеся при старте. Формат файла следующий:


Таким образом, swap-space - это специальный тип файловой системы. Для добавления нового свопа добавьте следующую строку:

/dev/hdb1 none swap sw 0 0

Для того что бы проверить примонтируется ли новый своп-раздел при старте, отключите все свопы командой swapoff -a. Затем командой swapon -a, включите свопы, загрузятся те, которые перечислены в файле /etc/fstab. Ну и наконец командой swapon -s проверьте, какие сповы примонтировались.

Создание SWAP файла

Создаем файл необходимого размера для swap области, где /home/swap-tmp - это имя и путь файла, а count=1024K его размерв, в данном случае - 1024 Мб):

# sudo dd if=/dev/zero of=/home/swap-tmp bs=1024 count=1024K

На экране получим:

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

# sudo mkswap /home/swap-tmp


Следующим шагом активируем только что созданный SWAP файл:

# sudo swapon /home/swap-tmp

Для просмотра результата просматриваем все объекты, которые используются для размещения виртуальной памяти:

# cat /proc/swaps

После перезагрузки системы SWAP файл необходимо активировать снова или добавить строчка для автоматической загрузки в файл fstab.

Редактировать файл fstab можно самостоятельно или командой, которая добавляет в конец файла

fstab строку /home/swap-tmp swap swap defaults 0 0:

# echo "/home/swap-tmp swap swap defaults 0 0" | sudo tee -a /etc/fstab

Тоже самое действие но добавление через UUID:

# echo "UUID=54c60583-e61a-483a-a15c-2f1be966db85 swap swap defaults 0 0" | sudo tee -a /etc/fstab

Удаление SWAP файла

Просматриваем все объекты, которые используются для размещения виртуальной памяти

# cat /proc/swaps

Выбираем ненужный.

Деактивируем, для примера, созданный выше SWAP файл:

# sudo swapoff /home/swap-tmp

Удаляем SWAP файл:

# sudo rm /home/swap-tmp

Если Вы раньше добавляли строчку в fstab, для автоматической загрузки SWAP файла при старте операционной системы, то следует ее удалить. Выводим файл /etc/fstab для редактирования на экран:

# sudo gedit /etc/fstab

В нем удаляем строчку монтирования SWAP файла.







Комментировать





  • » Биржа качественного контента Content Monster
  • » Глоссарий SE/SEO
  • » Партнерская программа Интернет-магазина СотМаркет
  • » Партнерские программы компании Forex Ltd
  • » Партнерская программа по выкупу iframe трафика
  • » AllSubmitter - профессиональная программа для раскрутки сайта
  • » Контекстные ссылки от биржи ссылок "Set Links"
  • » Анонс биржи купли-продажи доменов, сайтов
  • » CentOS: IFTOP
  • » CentOS: Bind 9
  • » Биржа прямых контекстных ссылок "Promo Text"
  • » Продвижения сайта -- к чему приводит приостановка
  • » Регистрация сайта в каталогах - надо или нет ?
  • » Анонс сервиса ручной регистрации сайта в каталогах Прогнать.ру
  • » Пока еще не поздно...
  • » Сервис оценки стоимости поискового продвижения и раскрутки сайта
  • » BODYCLICK - партнерка по покупке и продаже тизерного и баннерного трафика
  • » Раскрутка сайта и его редизайн
  • » Партнёрская программа выкупа трафика WM Банкир
  • » Магазин уникального контекста Pay Text
  • » Партнерская программа онлайн тестов
  • » Движок для блога Movable Type - часть 3 (преимущества)
  • » Лучшие из лучших...
  • » TrafMonster: система выкупа clickunder трафика нового поколения
  • » Вывод денег с Google AdSense на любой электронный кошелек
  • » Сервис обмена электронных валют
  • » Система контекстной рекламы Rich Сlick
  • » Тестируем бесплатный хостинг Hostinger
  • » Заработок на бесплатном images-хостинге
  • » Система размещения пресс-релизов и статей "Jab to job"
  • » Международная Конференция «Мобильные Медиа» (2012)
  • » Ручные ссылки с разовой оплатой!
  • » С Новым Годом!
  • » Новая рубрика в блоге SeoPult: “Аудит посадочной страницы от Натальи Сахновой”
  • » Финансовые расчеты в праздничные дни
  • » Как улучшить свой рейтинг с помощью анализа ключевых слов
  • » Перенос домена и SEO
  • » Сервисы обслуживания клиентов
  • » Wizard.Sape и PR.Sape: 2014-й будет богат на полезные инструменты
  • » Основание платежей для WebMoney
  • » Пополнение баланса банковской картой
  • » SEO-руководство по созданию отличного сайта для мобильных устройств
  • » Старт спецпроекта
  • » Устанавливаем корректный timeout
  • » Как оптимизировать свой бюджет на рекламу в социальных медиа?
  • » Обновление тулбара
  • » Задержка с выплатами
  • » Чернее ночи
  • » Биллинг за 24 марта.
  • » МОСКОВСКИЙ МЕЖДУНАРОДНЫЙ ФЕСТИВАЛЬ РЕКЛАМЫ И МАРКЕТИНГА REDAPPLE
  • » Часто задаваемые вопросы
  • » Работа в праздничные дни
  • » Конференция «8Р: Бизнес в сети»
  • » Летний охотник в 10 раз дешевле
  • » Открытые уроки от школы ТопЭксперт
  • » Второй практический онлайн-марафон по продвижению сайтов
  • » SEO-аудит от Евгения Костина для сайта diesel-teh.ru
  • » SEO-аудит от Николая Евдокимова: avt-tech.ru
  • » Где взять статьи?
  • » Как Google относится к скрытому контенту, который становится видимым при нажатии кнопки?


Категории


Последние записи

Полезные заметки

Популярные записи