Введение
В компьютерных системах оперативная память (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 и обеспечения их бесперебойной работы, особенно в средах с ограниченными ресурсами.



