Настроить lvm что это такое

Управление и настройка LVM в Linux. Понятие LVM

Введение

LVM, или Logical Volume Management (управление логическими томами), — это технология управления устройствами хранения, предоставляющая пользователям возможность объединять и распределять физическое пространство устройств хранения для более простого и гибкого администрирования. Используя модуль отображения устройств ядра Linux (Device mapper) LVM может группировать устройства хранения и выделять из объединенного пространства необходимые логические структуры.

Основные преимущества LVM — высокий уровень абстрактности, гибкости и контроля. Логическим томам можно присваивать информативные имена, например «databases» или «root-backup». Можно динамически менять их размер при изменении требований к объему дискового пространства, переносить между физическими устройствами в рамках пула текущей системы и легко экспортировать. Кроме того, в LVM есть функции создания образов (snapshotting), «расслоения» (striping) и зеркального отображения (mirroring).

Данное руководство посвящено обзору принципов работы LVM и базовым командам, необходимым в работе.

Архитектура и терминология LVM

Перед непосредственным рассмотрением команд администрирования LVM важно разобраться с базовыми принципами организации устройств хранения в LVM и некоторыми используемыми терминами.
Структуры управления пространством LVM
Работа LVM основана на надстройке нескольких уровней логической структуры над физическими устройствами хранения. Вот основные уровни структуры LVM, начиная с самых простых.
Физические тома:
∙ Обозначение: pv…
∙ Описание: физические блочные устройства или другие дисковые устройства (например, другие устройства, созданные при помощи модуля отображения устройств, типа RAID- массивов). Используются LVM в качестве базовых элементов для построения более высоких уровней логической структуры. Физические тома — это обычные устройства хранения. Для управления LVM присваивает устройству заголовок.
Группы томов:
∙ Обозначение: vg…
∙ Описание: LVM объединяет физические тома в пулы пространства, называемые группами томов. Группы томов не учитывают характеристики лежащих в их основе устройств и работают как унифицированные логические устройства с суммарным объемом пространства объедиенных физических томов.
Логические тома:
∙ Обозначение: lv…
∙ Описание: Группу томов можно разделить на любое количество логических томов. Логические тома функционально эквивалентны разделам на физическом диске, но предоставляют большую гибкость. Это основной компонент, с которым взаимодействуют пользователи и приложения.

Таким образом, LVM можно использовать для объединения физических томов в группы для унификации дискового пространства системы. Затем администраторы могут разделить группу томов на произвольные логические тома, которые работают как гибкие разделы.

Что такое диапазоны в LVM

Каждый том в группе разделен на маленькие элементы фиксированного размера, называемые диапазонами. Размер диапазонов определяется группой томов (для всех томов в группе согласовывается единый размер диапазона).
Диапазоны физических томов называются физическими диапазонами, а логических томов — логическими диапазонами. Логический том — это просто соответствие, установленное LVM между логическими и физическими диапазонами. Благодаря этой связи размер одного диапазона является минимальным объемом пространства, который моно выделить при помощи LVM.

Диапазоны — основа силы и гибкости LVM. Логические диапазоны, представленные при помощи LVM в виде унифицированного устройства, не обязательно должны соответствовать непрерывно расположенным физическим диапазонам. LVM может незаметно для пользователя осуществлять копирование и реорганизацию физических диапазонов, составляющих логический том. Также логические тома можно легко увеличить или уменьшить, просто добавив или удалив диапазоны.

Примеры использования

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

Обозначение физических устройств как физических томов

Первый шаг — сканирование системы на наличие блочных устройств, которые видимы и управляемы с помощью LVM. Это осуществляется следующей командой:

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

Мы видим, что на данный момент в системе есть два диска и 17 разделов. Разделы представляют собой главным образом разделы типа /dev/ram*, используемые системой как RAM-диски для повышения производительности. Диски в данном примере — это /dev/sda объемом 200 Гб и /dev/sdb объемом 100 Гб.

Важно: Убедитесь, что устройства, которые вы планируете использовать с LVM, не содержат важных данных, так как использование LVM уничтожит все ранее имеющееся содержимое. Если на вашем сервере уже есть важные данные, создайте резервную копию.

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

Устройствам будут присвоены заголовки LVM, после чего их можно будет добавить к группе томов. При помощи команды pvs можно быстро убедиться, что LVM зарегистрировала физические тома:

Читайте также:  Death stranding как отремонтировать мотоцикл

Оба устройства располагаются в столбце PV, обозначающем физические тома (Physical Volume).

Добавление физических томов в группу томов

Создав физические тома, можно создать группу томов. Нужно выбрать имя группы томов, которое должно быть уникальным. Как правило, большую часть времени в системе используется только одна группа томов для гибкости распределения пространства. Для простоты назовем нашу группу LVMVolGroup. Чтобы создать группу томов и добавить в нее оба физических тома, нужно выполнить следующую команду:

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

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

Группа томов содержит два физических тома и ни одного логического тома, а ее объем равен суммарному объему входящих в нее устройств.

Создание логических томов из пула группы томов

Теперь мы можем использовать группу томов в качестве пула для выделения логических томов. В отличие от обычных разделов при работе с логическими томами вам не нужно знать структуру тома, так как LVM занимается ей самостоятельно. От вас требуется только указать размер и имя тома. Создадим в нашей группе четыре отдельных логических тома:

  • том «projects» на 10 Гб
  • том «www» на 5 Гб для веб-контента
  • том «db» на 20 Гб для базы данных
  • том «workspace», занимающий все оставшееся пространство

Логические тома создаются командой lvcreate. Опция -n указывает группу томов, в которой мы будем создавать том. Для непосредственного задания размера можно воспользоваться опцией -L. Если вы хотите указать размер в диапазонах, воспользуйтесь опцией -l.

Создадим первые три логических тома с опцией -L:

Логические тома и их связь с группой томов можно просматривать, настроив вывод команды vgs:

В двух последних столбцах результата видно, какой объем пространства выделен на логические тома.

Теперь можно выделить остальное пространство группы тому «workspace» при помощи флага -l, который работает с диапазонами. Также можно задать пространство в процентах. Нам нужно все оставшееся свободное пространство, поэтому мы укажем 100%FREE:

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

После создания тома «workspace» группа «LVMVolGroup» полностью распределена.

Форматирование и монтирование логических томов

Теперь мы можем пользоваться логическими томами как нормальными блочными устройствами. Логические устройства доступны в директории /dev как любые другие устройства хранения. Их можно найти в двух местах:

Поэтому для их форматирования в файловой системе Ext4 можно выполнить следующие команды:

либо такие команды:

После форматирования можно создать точки монтирования:

Затем можно смонтировать логические тома в соответствующее месторасположение:

Для постоянного монтирования добавьте устройства в /etc/fstab как обычные блочные устройства:

Теперь операционная система должна автоматически монтировать логические тома LVM при загрузке.

Добавление физического тома к группе томов

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

sudo vgextend имя_группы_томов /dev/sdc

Физический том будет добавлен к группе, расширяя объем доступного пространства.

Увеличение размера логического тома

Одно из главных преимуществ LVM — гибкость в работе с логическими томами. Можно легко менять их размер и количество, не останавливая систему.

Для увеличения размера логического тома используется команда lvresize. Флаг -L применяется для задания нового размера. При помощи символа «+» можно также указать относительный размер, тогда LVM увеличит размер логического тома на указанную величину. Для автоматического изменения размера файловой системы используйте флаг —resizefs.

Для корректного задания имени нужно сначала указать группу томов, а затем имя логического тома через слэш:

Размер логического тома test в группе LVMVolGroup и его файловой системы будут увеличены на 5 Гб

Можно не указывать опцию —resizefs и воспользоваться стандартными средствами файловой системы, например, для Ext4 следующие команды позволят добиться того же результата:

Уменьшение размера LVM

Уменьшение размера может привести к потере данных, поэтому оно выполняется несколько сложнее, так же как и удаление компонентов.

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

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

Теперь нужно проверить файловую систему командой fsck , указав ее тип с опцией -t. Для дополнительной проверки можно воспользоваться опцией -f:

После проверки файловой системы нужно внутренними средствами уменьшить ее размер. Наиболее безопасный вариант для исключения потери данных — оставить достаточный запас. В нашем случае новый размер — 3 Гб.

Читайте также:  Как понять что ребенок сломался

После завершения указанных операций можно изменить размер логического тома до той же величины при помощи команды lvresize с флагом -L:

Вы увидите предупреждение о возможности потери данных. После удаления логического тома снова проверьте файловую систему:

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

Теперь ваш логический том будет уменьшен до нужной величины.

Удаление тома LVM

Для удаления логического тома используется команда lvremove. Если он смонтирован, то его нужно предварительно размонтировать:

Будет запрошено подтверждение процедуры, если вы уверены, введите Y.

Удаление группы LVM

Для удаления целой группы томов со всеми логическими томами используется команда vgremove. Перед этим нужно удалить все логические тома, как минимум размонтировать их:

После этого можно удалить всю группу, указав ее имя команде vgremove:

Будет запрошено подтверждение удаления. Если в группе ещё остались логические тома, нужно будет подтвердить удаление каждого из них.

Удаление физического тома из LVM

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

При наличии достаточного объема физических томов для переноса данных перенесите их из удаляемого тома командой pvmove:

В зависимости от размера томов и объема переносимых данных этот процесс может потребовать некоторого времени.

После переноса файлов можно удалить физический том из группы командой vgreduce:

После этого при помощи команды pvremove можно удалить маркер физического тома и использовать устройство для других целей или совсем удалить его из системы:

Заключение

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Записки IT специалиста

Технический блог специалистов ООО»Интерфейс»

  • Главная
  • LVM для начинающих. Часть 2. Основы управления томами

LVM для начинающих. Часть 2. Основы управления томами

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

Настраиваем LVM при установке системы

Самый простой способ начать использовать LVM — это настроить его при установке системы, для этого следует выбрать соответствующий пункт в меню разметки диска:

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

При ручном разбиении диска следует учесть следующий момент: загрузочный раздел /boot или EFI-раздел должны располагаться за пределами LVM-разметки.

Поэтому сразу создадим в самом начале диска первичный раздел размером 250 МБ с файловой системой ext2 и точкой монтирования /boot, не забываем отметить раздел как загрузочный.

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

Создав загрузочный раздел можно приступать к настройке LVM, для этого выберите Настройка менеджера логических томов (LVM):

В котором сразу создаем группу томов (VG), рекомендуем давать группам томов и логическим томам понятные имена с использованием сокращений VG и LV, чтобы в дальнейшем было понятно, с чем именно вы имеете дело.

В качестве устройства для группы томов указываем доступное свободное место:

Затем создаем нужное количество логических томов, в нашем случае мы сделали тома для корневого раздела и домашней директории:

После создания структуры LVM мы возвращаемся в меню разметки дисков и указываем для каждого логического тома используемую файловую систему и точку монтирования:

Далее установка продолжается обычным образом, и мы не будем на этом останавливаться.

Ниже мы будем рассматривать разметку, созданную автоматически с выделением /home в отдельный раздел.

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

В выводе мы видим загрузочный раздел sda1 размером в 243 МБ, расширенный раздел sda2 в котором располагается логический раздел sda5 используемый под LVM. Также видим три логических тома: root, swap_1 и home.

Обратите внимание, что при использовании MBR-разметки система всегда использует расширенный раздел, размещая в нем все остальные разделы, кроме первого. Это связано с ограничением MBR на 4 первичных раздела. При использовании EFI-разметки расширенный раздел не создается и для LVM был бы использован сразу sda2.

Теперь посмотрим информацию об элементах LVM, начнем с физических томов (PV):

Читайте также:  Поменяли сцепление не работает спидометр

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

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

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

Указанная команда расширит логический том home на 5118 экстентов с физического тома /dev/sdb, перед выполнением команды следует убедиться, что выбранный том содержит нужное количество свободного пространства, поэтому наиболее удобно использовать свободные экстенты, точное количество которых мы всегда можем узнать получив информацию об указанном физическом томе.

Перемещение логических томов LVM

Еще одна распространенная задача — перемещение томов между физическими дисками. В предыдущем разделе мы расширили логический том home на добавленный нами в LVM диск sdb, при этом его часть так и осталась на sda5. Поставим себе теперь иную задачу: полностью переместить домашнюю директорию на новый диск sdc, а освободившееся пространство на sda5 отдать корневому разделу системы.

Прежде всего создадим на новом диске физический том и добавим его в нужную группу томов:

Затем переместим экстенты логического тома home на новый диск. Так как sdb не содержит никаких иных логических томов, кроме home, то команда будет проста:

Она переместит все физические экстенты диска sdb на диск sdc. Для sda5, который содержит три логических тома такой фокус не пройдет, поэтому добавим конкретики:

Эта команда переместит все физические экстенты тома с именем home с диска sda5 на диск sdc.

Посмотрим информацию о логическом томе home:

Как можно видеть из вывода он теперь содержит единственный сегмент, который расположен на диске sdc.

Отлично, теперь можно расширить корневой раздел. Но нам следует использовать только пространство sda5 и желательно использовать его по максимуму. Как мы уже говорили выше, лучше всего опираться на число свободных экстентов. Чтобы узнать это значение выполним команду:

В выводе нас интересует единственный параметр — количество свободных экстентов:

Это число, в отличии от размера в байтах, либо процентов, является абсолютным, и мы можем смело его использовать:

Данная команда расширит логический том root на 2874 физических экстента принадлежащих разделу sda5. Затем не забудем расширить файловую систему:

А теперь посмотрим информацию о логическом томе:

Теперь корневой раздел состоит из двух сегментов, расположенных в начале и конце физического тома. Почему так? Вернемся в самое начало статьи и вспомним, что автоматически группа томов была размечена на следующие разделы: root, swap_1 и home. Домашний раздел мы переместили, но swap остался на своем месте и теперь root находится по обе стороны от него, если смотреть на физическом уровне, то мы получим схему root — swap_1 — root.

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

Удаление дисков из LVM

LVM — это очень гибкая система, которая позволяет как добавлять, так и удалять диски. Такая необходимость не всегда связано с отказами, чаще встречаются ситуации, когда мы установили в систему новые, более емкие диски, а старые хотим использовать где-нибудь в другом месте.

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

Которая удалит логический том myvolume1 из группы томов andrey-lvm-vg.

В приведенном выше примере у нас освободился диск sdb в группе томов debian-lvm-vg. Удалим его из группы томов:

Ну и наконец удалим LVM-разметку с указанного диска:

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

Заключение

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

Помогла статья? Поддержи автора и новые статьи будут выходить чаще:

Или подпишись на наш Телеграм-канал:

Источник

Оцените статью