Как добавить SWAP на Ubuntu 15.04

Как добавить SWAP на Ubuntu 15.04

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

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

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

В этом руководстве мы расскажем, как создать и включить файл подкачки на сервере Ubuntu 15.04.

Проверка системных настроек SWAP

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

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

Другой более привычный способ проверить настройки подкачки, воспользоваться утилитой free которая покажет нам использование памяти. Мы видим нашу текущую память и использование подкачки в мегабайтах, набрав:

Как Вы можете видеть swap у нас равен 0. Это соответствует результатам выполнения команды swapon.

Проверка свободного места на диске

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

Прежде, чем мы это сделать, мы должны быть осведомлены о текущем использования диска. Мы можем получить эту информацию, набрав:

Как Вы можете видеть, из первой строки таблицы, у нас доступно 55Gb. Это огромное пространство для файлов подкачки.

Хотя есть много мнений о соответствующем размере подкачки, это действительно зависит от ваших личных предпочтений и требований приложения. Как правило, сумма равная или её двойной объем оперативной памяти в вашей системе является хорошей отправной точкой.

Так как моя система имеет 4Гб оперативной памяти и я не готов расстаться с 8Гб места на жестком диске, я буду делать swap размером в 4Гб.

Создаём файл подкачки

Теперь мы знаем о "возможностях" нашего жесткого диска. Мы создадим файл подкачки в корневом каталоге. Файл будет занимать тот размер, который мы решили выделить для подкачки. Есть два способа это сделать:

Традиционный, медленный способ

Мы можем создать файл подкачки с помощью утилиты dd. Эта универсальная утилита записи из одного места в другое место на диске.

Мы можем использовать её для записи нулей в файл. Для этого в Linux системах есть специальное устройство /dev/zero

С помощью параметра bs мы указываем размер сектора, а с помощью параметра count количество блоков. Данный параметры выбраны произвольно, главное что их произведение будет равно нашим 4Гб.

sudo dd if=/dev/zero of=/swapfile bs=1G count=4

Перед запуском программы обязательно проверьте параметры которые Вы указали. Если в параметре of Вы укажете не правильный путь, то можете затереть Ваши данные.

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

Если Вы воспользовались данным способом, то, наверняка, заметили, что создание файла заняло около 15 секунд.

Если Вы хотите узнать как сделать это быстрее, удалите файл, который создали, командой:

sudo rm /swapfile

Быстрый способ

Более быстрый способ создания файла, предоставляет нам утилита fallocate. Это программа создает файл мгновенно, фактически она ничего не записывает в этот файл. Мы можем создать файл объёмом 4Гб набрав:

sudo fallocate -l 4G /swapfile

Команда выполнить моментально и нам остаёться только проверить её выполнение:

Как вы можете видеть, наш файл создается с правильным отведенным количеством пространства.

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

Только что мы создали файл подкачки, одним из способ, но система о нём ничего не знает и не предполагает как ей его использовать. Мы должны сказать системе о том, что это файл подкачки.

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

sudo chmod 600 /swapfile

Проверим как изменились права на файл:

Если всё сделали правильно, то права на запись и чтение остались только у пользователя root.

Теперь давайте скажем системе, что это её файл подкачки:

sudo mkswap /swapfile

Файл готов для использования системой:

sudo swapon /swapfile

Осталось проверить используется ли подкачка системой:

Как видите файл используется, но если Вы сейчас перезагрузите систему, файл больше не будет использоваться.

Настройка постоянного файла подкачки

У нас есть файл подкачки, подключенный к нашей системе, но если мы перезагрузим сервер, он не будет автоматически подключен. Исправить это можно с помощью fstab. Отредактируем его конфигурацию:

sudo nano /etc/fstab

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

Сохраните и закройте файл. (CTRL+X, Y) На этом настройка файла подкачки закончена.

📎📎📎📎📎📎📎📎📎📎