Поиск по сайту:

Как добавить своп в CentOS 6


Статус: устарело

В этой статье рассматривается версия CentOS, которая больше не поддерживается. Если вы в настоящее время используете сервер под управлением CentOS 6, мы настоятельно рекомендуем обновить или перейти на поддерживаемую версию CentOS.

Причина:

См. вместо этого:

Следующий учебник DigitalOcean может представлять непосредственный интерес, поскольку в нем описывается добавление пространства подкачки на сервере CentOS 7:

  • Как добавить подкачку в CentOS 7

О замене Linux

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

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

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

Если вам нужно повысить производительность вашего сервера, мы рекомендуем обновить Droplet. Это приведет к лучшим результатам в целом и снизит вероятность возникновения проблем с оборудованием, которые могут повлиять на вашу службу.

Проверить пространство подкачки

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

swapon -s

Если ничего не возвращается, сводка пуста и файл подкачки не существует.

Проверьте файловую систему

После того, как мы узнаем, что у нас не включен файл подкачки, мы можем проверить, сколько места у нас есть на сервере с помощью команды df. Файл подкачки займет 512 МБ — поскольку мы используем только около 7% /dev/hda, мы можем продолжить.

df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda              20642428   1347968  18245884   7% /

Создайте и включите файл подкачки

Теперь пришло время создать сам файл подкачки с помощью команды dd:

sudo dd if=/dev/zero of=/swapfile bs=1024 count=512k

\of=/swapfile обозначает имя файла. В данном случае это имя файла подкачки.

Впоследствии мы собираемся подготовить файл подкачки, создав область подкачки linux:

sudo mkswap /swapfile

Отображаются результаты:

Setting up swapspace version 1, size = 536866 kB

Завершите активацией файла подкачки:

sudo swapon /swapfile

Затем вы сможете увидеть новый файл подкачки при просмотре сводки подкачки.

 swapon -s
Filename				Type		Size	Used	Priority
/swapfile                               file		524280	0	-1

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

Откройте файл:

sudo nano /etc/fstab

Вставьте в следующую строку:

/swapfile          swap            swap    defaults        0 0

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

chown root:root /swapfile 
chmod 0600 /swapfile

Как настроить подкачку

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

Чтобы найти текущие настройки swappiness, введите:

<pre>cat /proc/sys/vm/swappiness</pre>
<pre>60</pre>

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

Значение swappiness, равное 0, означает, что операционная система будет полагаться на swap только тогда, когда это абсолютно необходимо. Мы можем настроить swappiness с помощью команды sysctl:

<pre>sysctl vm.swappiness=10</pre>
<pre>vm.swappiness=10</pre>

Если мы снова проверим системную подкачку, мы можем подтвердить, что настройка была применена:

<pre>cat /proc/sys/vm/swappiness</pre>
<pre>10</pre>

Чтобы ваш VPS автоматически применял этот параметр при каждой загрузке, вы можете добавить параметр в файл /etc/sysctl.conf:

<pre>sudo nano /etc/sysctl.conf</pre>
<pre># Search for the vm.swappiness setting.  Uncomment and change it as necessary.
vm.swappiness=10</pre>