Установка модулей виртуальной оперативной памяти

LinuxBeginner
Практиковаться сейчас

Введение

В компьютерных системах оперативная память (RAM) является критически важным компонентом, хранящим данные для работающих приложений. Когда физическая оперативная память полностью занята, операционная система может использовать часть жесткого диска в качестве «виртуальной памяти», чтобы предотвратить сбои системы. Эта виртуальная память обычно называется пространством подкачки (swap space).

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

Доступ к настройкам виртуальной машины в гипервизоре

На этом этапе вы проверите текущую конфигурацию оперативной памяти и пространства подкачки в вашей среде Linux. Это позволит создать базовую точку отсчета перед внесением каких-либо изменений. Мы воспользуемся командой free, которая отображает общий объем свободной и занятой физической памяти и памяти подкачки в системе.

Сначала откройте терминал. Чтобы получить данные в удобном для чтения формате (например, в МБ или ГБ), мы используем флаг -h.

Выполните следующую команду:

free -h

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

               total        used        free      shared  buff/cache   available
Mem:           3.5Gi       502Mi       1.2Gi       3.0Mi       1.8Gi       2.8Gi
Swap:             0B          0B          0B

В выводе выше:

  • Mem: эта строка показывает физическую оперативную память (RAM).
  • Swap: эта строка показывает виртуальную память (пространство подкачки). Как видите, в данный момент пространство подкачки не настроено.

Наша цель — добавить файл подкачки, чтобы увеличить общий объем доступной виртуальной памяти.

Увеличение объема оперативной памяти до 4 ГБ

На этом этапе вы создадите файл размером 2 ГБ, который будет использоваться в качестве пространства подкачки, фактически выполняя роль виртуальной оперативной памяти. Мы выполним это в несколько подэтапов: создание файла, установка прав доступа, форматирование его как раздела подкачки и, наконец, активация.

Сначала мы воспользуемся командой fallocate для мгновенного создания файла заданного размера. Мы создадим файл размером 2 ГБ с именем swapfile внутри вашего каталога проекта.

sudo fallocate -l 2G ~/project/swapfile

Затем, из соображений безопасности, мы должны убедиться, что только пользователь root может читать и записывать данные в файл подкачки. Мы воспользуемся командой chmod для установки правильных прав доступа.

sudo chmod 600 ~/project/swapfile

Теперь нам нужно отформатировать этот файл как область подкачки с помощью команды mkswap.

sudo mkswap ~/project/swapfile

Вы должны увидеть вывод, подтверждающий настройку, включая UUID для новой области подкачки.

Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
no label, UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Наконец, активируйте файл подкачки с помощью команды swapon. Это сделает новую виртуальную память доступной для системы немедленно.

sudo swapon ~/project/swapfile

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

Проверка обнаружения памяти с помощью команды free -h

На этом этапе вы убедитесь, что новый файл подкачки был успешно активирован и распознан системой. Мы снова воспользуемся командой free -h, как и на первом этапе.

Выполните команду в терминале:

free -h

Теперь вывод должен выглядеть иначе. Обратите внимание, что в строке Swap теперь отображаются 2 ГБ пространства, которые мы выделили.

               total        used        free      shared  buff/cache   available
Mem:           3.5Gi       543Mi       1.2Gi       3.0Mi       1.8Gi       2.7Gi
Swap:          2.0Gi          0B       2.0Gi

Это подтверждает, что вы успешно добавили 2 ГБ виртуальной памяти в свою систему. Теперь операционная система может использовать это пространство, если у нее закончится физическая оперативная память.

Мониторинг использования памяти с помощью команды htop

На этом этапе вы научитесь использовать htop — популярный интерактивный просмотрщик процессов и монитор системы. Он предоставляет более детальное и удобное для пользователя представление системных ресурсов по сравнению с командой top.

Вы можете запустить htop, просто введя его имя в терминале.

htop

Ваш терминал будет заменен интерфейсом htop. В верхней части вы увидите индикаторы для процессора (CPU), памяти (Mem) и подкачки (Swp). Посмотрите на индикатор Swp, который теперь показывает 2.00G общего пространства подкачки, которое вы настроили.

  CPU[||                                 1.3%]   Tasks: 31, 0 thr; 1 running
  Mem[|||||||||                   78/1985MB]   Load average: 0.00 0.01 0.00
  Swp[                              0/2048MB]   Uptime: 00:05:10

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

После выхода из htop выполните одну простую команду, например ls, прежде чем нажать кнопку Check. Это гарантирует, что ваша недавняя команда htop будет записана в историю оболочки, чтобы верификатор мог ее обнаружить.

Отмена изменений и перезапуск виртуальной машины

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

Сначала необходимо отключить файл подкачки с помощью команды swapoff. Это даст операционной системе команду прекратить использование файла для подкачки.

sudo swapoff ~/project/swapfile

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

sudo rm ~/project/swapfile

Чтобы подтвердить, что изменения были отменены, выполните команду free -h в последний раз.

free -h

Вывод теперь должен быть идентичен тому, что вы видели на этапе 1, где в строке Swap отображается нулевой объем.

               total        used        free      shared  buff/cache   available
Mem:           3.5Gi       536Mi       1.1Gi       3.0Mi       1.9Gi       2.7Gi
Swap:             0B          0B          0B

Вы успешно вернули среду в исходное состояние.

Резюме

Поздравляем с завершением лабораторной работы! Вы успешно научились управлять виртуальной памятью в системе Linux с помощью файла подкачки.

В этой лабораторной работе вы отработали несколько ключевых навыков системного администрирования:

  • Проверка системной памяти с помощью free -h.
  • Мгновенное создание файла большого размера с помощью fallocate.
  • Настройка области подкачки с помощью mkswap.
  • Активация и деактивация пространства подкачки с помощью swapon и swapoff.
  • Мониторинг системных ресурсов с помощью htop.

Эти навыки являются фундаментальными для управления серверами Linux и обеспечения их бесперебойной работы, особенно в средах с ограниченными ресурсами.