Green-sell.info

Новые технологии
5 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Lvm linux настройка

Создание и настройка LVM Linux

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

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

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

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

Теперь перейдем от теории ближе к практике. Рассмотрим создание LVM, настройку и работу с дисками. Как основную операционную систему мы будем использовать Ubuntu, но данная инструкция подойдет и для любого другого дистрибутива Linux.

Создание LVM Linux

Структура LVM состоит из трех частей:

  • Физический том (один или несколько), Physical Volume (PV)
  • Группа физических томов, Volume Group (VG)
  • Логический том, который и будет доступен программам, Logical Volume (LV)

Перед тем как начинать создание lvm linux необходимо установить нужные для этого инструменты:

sudo apt-get install lvm2

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

Инициализация физических LVM разделов

Сначала определимся с томами, которые будем использовать, допустим это будут /dev/sda6 и /dev/sda7. Инициализировать их для работы LVM можно с помощью команды pvcreate:

sudo pvcreate /dev/sda6 /dev/sda7

Physical volume «/dev/sda6» successfully created
Physical volume «/dev/sda7» successfully created

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

PV /dev/sda6 lvm2 [1.86 GB]
PV /dev/sda7 lvm2 [1.86 GB]
Total: 2 [3.72 GB] / in use: 0 [0 ] / in no VG: 2 [3.72 GB]

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

— Physical volume —
PV Name /dev/sda6
VG Name
PV Size 1.86 GB / not usable 2.12 MB
Allocatable yes
PE Size (KByte) 4096
Total PE 476
Free PE 456
Allocated PE 20
PV UUID m67TXf-EY6w-6LuX-NNB6-kU4L-wnk8-NjjZfv

— Physical volume —
PV Name /dev/sda7
VG Name
PV Size 1.86 GB / not usable 2.12 MB
Allocatable yes
PE Size (KByte) 4096
Total PE 476
Free PE 476
Allocated PE 0
PV UUID b031x0-6rej-BcBu-bE2C-eCXG-jObu-0Boo0x

PE Size — это размер одного блока LVM, по умолчанию он равен четырем мегабайтам, но это значение можно изменить.

Создание группы разделов LVM

Группа томов — это не что иное, как пул памяти, который будет распределен между логическими томами и может состоять из нескольких физических разделов. После того как физические разделы инициализированы, вы можете создать из них группу томов (Volume Group, VG):

sudo vgcreate vol_grp1 /dev/sda6 /dev/sda7

Volume group «vol_grp1» successfully created

С помощью lvm команды vgdisplay вы можете посмотреть созданные группы томов:

— Volume group —
VG Name vol_grp1
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 3.72 GB
PE Size 4.00 MB
Total PE 952
Alloc PE / Size 0 / 0
Free PE / Size 952 / 3.72 GB
VG UUID Kk1ufB-rT15-bSWe-5270-KDfZ-shUX-FUYBvR

Создание логических томов LVM

Теперь все готово, чтобы создать логические LVM разделы. Для этого будем использовать команду lvcreate и создадим логический раздел размером 80 Мегабайт, или 20 блоков LVM:

sudo lvcreate -l 20 -n logical_vol1 vol_grp1

Logical volume «logical_vol1» created

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

— Logical volume —
LV Name /dev/vol_grp1/logical_vol1
VG Name vol_grp1
LV UUID ap8sZ2-WqE1-6401-Kupm-DbnO-2P7g-x1HwtQ
LV Write Access read/write
LV Status available
# open 0
LV Size 80.00 MB
Current LE 20
Segments 1
Allocation inherit
Read ahead sectors auto
— currently set to 256
Block device 252:0

Теперь, когда раздел создан, мы можем работать с ним как с обычным разделом. Например, отформатируем его в файловую систему ext4, а затем примонтируем в /mnt:

sudo mkfs.ext4 /dev/vol_grp1/logical_vol1

sudo mount /dev/vol_grp1/logical_vol1 /mnt/

Как видите, монтирование lvm linux ничем не отличается от монтирования обычных разделов.

Вообще говоря, lvm разделы могут быть трех типов:

  • Линейные разделы (linear volume)
  • Полосные разделы (Striped Volume)
  • Зеркалированные разделы (Mirrored Volume)

Линейные разделы — это обычные LVM тома, они могут быть созданы как их одного, так и нескольких физических дисков. Например, если у вас есть два диска по 2 гигабайта, то вы можете их объединить и в результате получите один раздел LVM linux, размером 4 гигабайта. По умолчанию используются именно линейные LVM разделы.

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

Для этого нужно задать количество полос записи с помощью опции -i, а также размер полосы опцией -l. Количество полос не должно превышать количества физических дисков. Например:

lvcreate -L 1G -i2 -I64 -n lv_stripe vol_grp1

Logical volume «lv_stripe» created

Зеркалированный том позволяет записывать данные одновременно на два устройства. Когда данные пишутся на один диск, они сразу же копируются на другой. Это позволяет защититься от сбоев одного из дисков. Если один из дисков испортится, то разделы LVM просто станут линейными и все данные по-прежнему будут доступны. Для создания такого раздела LVM Linux можно использовать команду:

sudo lvcreate -L 200M -m1 -n lv_mirror vol_grp1

Logical volume «lv_mirror» created

Удалить LVM раздел

Вы можете не только настроить lvm тома изменяя их размер и атрибуты, но и удалить lvm раздел, если он вам больше не нужен. Это делается с помощью lvm команды lvremove:

sudo lvremove /dev/vol-grp1/lv_mirror

Теперь лишний раздел удален.

Изменение размера LVM тома

Вы можете изменять уже созданные разделы LVM увеличивая или уменьшая их размер. Причем неважно есть ли место на физическом диске после этого раздела, если в пуле есть память, вы можете ее использовать для любого раздела. Чтобы изменить размер lvm используйте команду lvextend. Например, lvm увеличим размер диска из 80 до 100 мегабайт:

sudo lvextend -L100 /dev/vol_grp1/logical_vol1

Extending logical volume logical_vol1 to 100.00 MB
Logical volume logical_vol1 successfully resize

Также вы можете увеличить размер lvm, использовав знак +:

sudo lvextend -L+100 /dev/vol_grp1/logical_vol1

Extending logical volume logical_vol1 to 200.00 MB
Logical volume logical_vol1 successfully resized

Точно так же можно выполнить уменьшение lvm раздела с помощью знака -.

Выводы

В этой статье мы рассмотрели создание lvm разделов в linux, а также настройку, увеличение, уменьшение и монтирование lvm linux. Теперь вы знаете насколько это мощная технология и сколько преимуществ она может дать не только на сервере, но и на домашнем ПК. Вы раньше использовали 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…
∙ Описание: Группу томов можно разделить на любое количество логических томов. Логические тома функционально эквивалентны разделам на физическом диске, но предоставляют большую гибкость. Это основной компонент, с которым взаимодействуют пользователи и приложения.

Читать еще:  Ms sql linux

Таким образом, 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 зарегистрировала физические тома:

Оба устройства располагаются в столбце 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.

Настройка и управление LVM разделами в Linux

LVM (Logical Volume Manager) – подсистема операционных систем Linux, позволяющая использовать разные области физического жесткого диска или разных жестких дисков как один логический том. LVM встроена в ядро Linux и реализуется на базе device mapper.

Читать еще:  Установка visual studio linux

Главные преимущества LVM – высокий уровень абстракции от физических дисков, гибкость и масштабируемость. Вы можете на лету изменять размер логического тома, добавлять (и удалять) новые диски. Для LVM томов поддерживается зекалирование, снапшоты (persistent snapshot) и striping (расслоение данных между несколькими дисками с целью увеличения производительности).

В данной статье мы рассмотрим использование LVM разделов на примере Linux CentOS 8, покажем процесс объединения двух дисков в одну группу LVM, посмотрим как создавать группы, тома, монтировать, расширять и уменьшать размер LVM разделов.

Прежде всего нужно разобраться с уровнями дисковых абстракций LVM.

  • Physical Volume (PV) – физический уровень. Физические диски инициализируются для использования в LVM.
  • Volume Group (VG) – уровень группы томов. Инициализированные диски объединяются в логические группы с именем.
  • Logical Volume (LV) — создается логический том на группе томов, на котором размещается файловая система и данные.

Установка утилиты lvm2

Чтобы начать работу с LVM, нужно установить утилиту lvm2. Выполним следующие команды:

apt-get install lvm2 — для Ubuntu, Mint, Debian

yum install lvm2 – для Centos, Red-Hat, Fedora

В разных версиях Linux отличается только способ установки утилиты lvm2 (установка через yum/dnf или apt-get), дальнейшие команды для работы с LVM, одинаковы.

Создание LVM разделов

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

Как вы видите, у меня доступны два диска /dev/vdb и /dev/vdc .

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

Чтобы диски были доступны для LVM, их нужно пометить (инициализировать) утилитой pvcreate:

pvcreate /dev/vdb /dev/vdc

Теперь, чтобы убедиться, что данные диски можно использовать для LVM, введите команду pvdisplay:

Как видим, оба диска отображаются. Разберем информацию из вывода команды:

  • PV Name – имя диска или раздела
  • VG Name – группа томов, в которую данный диск входит (мы пока группу не создали)
  • PV Size – размер диска или размера
  • Allocatable – распределение по группам. В нашем случае распределения не было, поэтому указано NO
  • PE Size – размер физического фрагмента. Если диск не добавлен ни в одну группу, значение всегда будет 0
  • Total PE – количество физических фрагментов
  • Free PE — количество свободных физических фрагментов
  • Allocated PE – распределенные фрагменты
  • PV UUID – идентификатор раздела

С помощью команды pvscan вы можете просканировать диски на предмет PV.

Следующий этап – создание группы томов. Для создания групп томов используется команда vgcreate. Чтобы объединить ранее помеченные диски, воспользуемся командой:
# vgcreate test /dev/vdb /dev/vdc

Чтобы проверить результат введите vgdisplay:

Как видим, диски объединены в группу test и VG Size показывает общий размер дисков.

Разберем информацию из листинга команды vgdisplay:

  • VG Name – группа томов, в которую данный диск входит.
  • Format – версия подсистемы lvm, которая используется для создание группы (в нашем случае версия 2)
  • Metadata Areas – область метаданных
  • VG Access – уровень доступа к группе логических томов
  • VG Size – общий объем дисков, которые входят в группу
  • PE Size — размер физического фрагмента
  • Alloc PE / Size – распределенное пространство(количество и объем фрагментов)
  • VG UUID – идентификатор группы

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

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

# lvcreate -L 5G test

Как видим из листинга, в группе test был создан логический том с именем lvol0 и размером 5G.

Если вы хотите сами задать имя, используйте флаг -n:

# lvcreate -L 5G -n test1 test

Несколько примеров для создания логических томов с разными размерами:

lvcreate -l 40%VG test – 40% от дискового пространства группы test

lvcreate -l 100%FREE test – использовать все свободное пространство группы test

Чтобы вывести информацию о логическом томе, используйте lvdisplay:

Так же разберем листинг данной команды:

  • LV Path – путь к устройству логического тома (к диску или разделу)
  • LV Name – имя логического тома
  • VG Name – имя группы томов
  • LV UUID – идентификатор логического тома
  • LV Write Access – уровень доступа к логическому тому
  • LV Creation host, time — информация о хосте, дата когда был создан логический том
  • LV Size – размер диска, доступный для использования логическому тому
  • Current LE – количество логических фрагментов

LVM: создание файловой системы, монтирование логического тома

Чтобы создать файловую систему на логическом томе, воспользуйтесь утилитой mkfs:

Создадим файловую систему ext4 на LVM томе:

Файловая система была создана без ошибок.

Теперь создадим тестовую директорию и примонтируем логический том к данной директории:

# mkdir /var/www/home
# mount /dev/test/test1 /var/www/home/

Как видите, все прошло без ошибок и теперь директория /var/www/home существует как отдельный раздел.

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

Откроем файл:
nano /etc/fstab

И добавим в него следующую информацию:

После чего примонтировать том можно будет через mount -a:

Чтобы проверить общую информацию по дискам, разделам и томам, введите команду lsblk:

Как видим, наш созданный том отображается, и указана директория к которой он примонтирован.

Команда lvmdiskscan позволяет просканировать доступные диски, показывает их размер и принадлежность к LVM.

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

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

pvcreate /dev/нашдиск — инициализация диска для lvm

vgextend test /dev/нашдиск — добавление диска в группу томов

Чтобы расширить логический том, воспользуйтесь следующей схемой:

lvextend -L10G /dev/test/test1

Данным способом вы расширите раздел на 10 Гб.

Еще несколько примеров расширения LVM раздела:

lvextend -L+10G /dev/test/test1 — добавите 10 Гб к вашему тому

lvextend -l +100%FREE /dev/test/test1 — выделите все нераспределенное пространство в группе test

Осталось увеличить раздел файловой системы:

resize2fs /dev/test/test1 – для ext4

xfs_growfs /dev/test/test1 – для xfs

Уменьшение LVM томов

LVM позволяют уменьшать размер тома. Но для безопасности умеьшения размера раздела его нужно отключить.

Отмонтируем том от директории:

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

e2fsck -fy /dev/test/test1

Уменьшим раздел файловой системы на 4 Гб:

# resize2fs /dev/test/test1 4G

# lvreduce -L-4G /dev/test/test1

Теперь уменьшим размер самого LVM тома:

lvreduce -L-4G /dev/test/test1

После чего, нужно примонтировать том обратно и проверить текущий размер:

Как видим, размер уменьшился до 4 Гб.

Удаление LVM групп и томов

Для удаления LVM томов, используется команда lvremove:

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

Убрать метки с LVM дисков:

# pvremove /dev/vdb /dev/vdc

Создание зеркальных томов LVM

LVM позволяет создать зеркальные тома для повышения отказоустойчивости хранения данных. В LVM зеркале данные одновременно хранятся на двух (или более) физических дисках (подобие RAID-1). Процедура создания зеркального тома в LVM.

  1. Инициализация дисков: pvcreate /dev/sd
  2. Создаем LVM группу: vgcreate mirror1 /dev/sd
  3. Создадим зеркальный LVM том: lvcreate -L 5g -m1 -n lvMirr1 VGmirror1

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

Установка и настройка LVM в OS Linux

Установка и последующая настройка LVM (Logical Volume Manager) в Linux…

Сперва давайте познакомимся с основными понятиями:

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

Физический том (physical volume) — устройство представляющееся системе как один диск (жесткий диск или его раздел).

Группа томов (volume group) — набор физических томов в один объект.

Логический том (logical volume) — аналогичен разделу на не LVM системах, представляется как блочное устройство и может иметь файловую систему.

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

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

Разберем только основные моменты, углубляться не будем, для работы lvm нужн пакет lvm2, в моем Debian Squeeze это штатный пакет и он уже имеется тоесть не чегог доустонавливать не надо.

# dpkg -l | grep lvm

Подопотный неразбитый ssd диск sdc

Задачи — настроить lvm для диска sdc (физ том) и создать несколько логических томов с фс ext4 в одной группе томов, а так же научится увеличивать и уменьшить размер логических томов.

1.Инициализация дисков
2.Создание и активация группы томов
3.Создание логических томов
4.Увеличение и уменьшение размера логических томов

Для того что бы использовать диск или раздел на диске sdc в качестве физического тома необходимо его инициализировать.

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

Для создания группы томов test используется команда

Читать еще:  Sql server linux

Еслим вы хотите включить в группу томов еще другие диски или разделы то

ваша группа томов test и логические тома находятся в неактивном состоянии, активируем

А теперь самое интересное — создание логических томов part1 и part2 размером по 10G

Теперь можно форматировать созданные разделы и монтировать.

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

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

Уменшение размера логического тома (вы можете потерять данные)

При уменьшении или увеличение размера фс их нужно размонтировать.
При уменьшение размера суперблок или таблица разделов может быть повреждена.
Размер фс XFS можно увеличить только в смонтированном состоянии.
Уменьшить размер файловой системы XFS нельзя.

dd if=/dev/zero of=/dev/diskname bs=1k count=1 — уничтожить таблицу разделов.

vgcreate создания группы томов.
vgchange -a y активация группы томов.
vgchange -a n деактивация группы томов.
vgremove удаление группы томом.
vgextend добавление физических томов в группу томов.
vgreduce удаления физических томов.
vgdisplay информацию по группе.
vgexport разрегистрировать группу томов в системе.
vgmerge объединить группы томов.
vgrename переименовать группу томов.
vgs информация о группах томов.
vgscan поиск групп томов.
vgsplit переместить физический том в новую группу томов.
vgck проверить целостность группы томов.

lvdisplay информацию по созданным логическим томам.
lvcreate -LTTTG -nXXX создание логтческого тома XXX размером TTT.
lvchange изменить атрибуты логического тома.
lvremove удаление логических томов.
lvrename переименовать логический том.
lvextend -LXXG увеличение логических томов.
resize2fs увеличить размер файловой системы.
lvreduce -L-XXG уменьшение логических томов.
lvresize изменить размер логического тома
lvscan список логических томов во всех группах томов.
lvs информация о логическом томе.
lvmdiskscan устройства которые могут быть использованы как физический том.
lvmsadc данные об активности использования LVM.
lvmsar отчёт об активности использования LVM.

pvcreate создание в начале диска дескриптор группы томов
pvdisplay информацию по физическим томам.
pvmove передвигаю содержимое с 1 диска на 2
pvremove удалить метку LVM с физического тома.
pvresize изменить размер физического тома.
pvchange атрибуты физического тома.
pvdata информация о физическом томе.
pvs информация о физическом томе.
pvscan список всех физических томов.

Партиции для работы с LVM

Прежде всего рассмотрим создание партиций на одном из подключенных дисков — шаг можно пропустить если работа будет производиться непосредственно с дисками, но партиции использовать также удобно. При помощи партиций можно выделить разделы на дисках, которые система будет видеть как отдельные устройства. Автоматически к имени диска будут добавлены порядковые номера /dev/sdb1, /dev/sdb2 и т.д.

Инициализируем диск, с которым будем работать при помощи fdisk

Просматриваем существующую структуру разделов

Disk /dev/vdc: 5 GiB, 5368709120 bytes, 10485760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3aa19e91

На диске не выделено партиций, создаем новую

Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions

Выбираем тип партиции

Задаем номер раздела (выберется по умолчанию при нажатии ввода)

Оставляем настройки разметки диска (указание первого сектора в байтах) по умолчанию

Для последнего сектора выбираем необходимое значение, под партицию будет выделено 140 Мб, поэтому выбираем размар в байтах 824500

Задаем тип партиции

Все возможные типы партиций можно посмотреть введя L, для LVM нам потребуется тип 8e из списка. Данный код означает тип партиции Linux LVM.

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

Вновь просматриваем таблицу

Disk /dev/vdb: 5 GiB, 5368709120 bytes, 10485760 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3aa19e91

Device Boot Start End Sectors Size Id Type
/dev/vdb1 2048 824500 3350 140M 8e Linux LVM
/dev/vdb2 824500 10485759 10482410 4.86G 8e Linux LVM

Теперь нужно записать изменения на диск

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

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

Проверить все ли сделано корректно можно примонтировав диски в какую-либо точку файловой системы. Например, выполнив mount -t ext4 /dev/vda1 /mnt. Затем нужно отмонитровать используя umount поскольку монтирование происходит при выполнении pvcreate в дальнейшем.

Для приведенных на иллюстрации в начале статье дисках /dev/vda и /dev/vdc таким же образом создаются партиции, процесс полностью аналогичен — первый и последний биты сектора выбирать не нужно, партиция для устройств занимает весь объем диска.

Создание логических устройств и настройка LVM в Linux

Устанавливаем необходимый для работы с LVM программный пакет

apt-get install lvm2

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

Physical volume «/dev/vdb1» successfully created.

Physical volume «/dev/vdb2» successfully created.

При необходимости смотрим справку по следующей команде, которую будем использовать

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

vgcreate vg1 /dev/vdb1 /dev/vdb2 /dev/vda1 /dev/vdc1

Volume group «vg1» successfully created

Просматриваем информацию о логической группе

Среди прочего в выводе будет размер всех устройств в группе и ее UUID.

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

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

Создаем логические устройства указывая их размер (ключ -L) и имена (ключ -n)

lvcreate -L 1G -n lv1 vg1

Logical volume «lv1» created.

lvcreate -L 2G -n lv2 vg1

Logical volume «lv2» created.

total 0
lrwxrwxrwx 1 root root 7 окт 13 10:17 lv1 -> ../dm-0
lrwxrwxrwx 1 root root 7 окт 13 10:17 lv2 -> ../dm-1

Видим созданные логические устройства, которые видит системаи может работать с ними как с отдельными дисками

На каждом нужно создать файловую систему

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

mount /dev/vg1/lv1 /home

mount /dev/vg1/lv2 /var/lib/mysql

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

— Logical volume —
LV Path /dev/vg1/lv1
LV Name lv1
VG Name vg1
LV UUID VTP39y-e1Ui-Xawl-h4oQ-Ml3k-CacV-aIiERw
LV Write Access read/write
LV Creation host, time vm-2c6ce884, 2017-10-13 10:17:06 +0000
LV Status available
# open 0
LV Size 1,00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
— currently set to 256
Block device 253:0

— Logical volume —
LV Path /dev/vg1/lv2
LV Name lv2
VG Name vg1
LV UUID OPik1D-p0C8-3vyh-auJb-xLbi-f625-0zffvf
LV Write Access read/write
LV Creation host, time vm-2c6ce884, 2017-10-13 10:17:31 +0000
LV Status available
# open 0
LV Size 2,00 GiB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
— currently set to 256
Block device 253:1

Базовая настройка LVM в Linux на этом завершена. Далее рассмотрены операции с логическими томами, сталкиваться с которыми приходится чаще всего.

Изменение размера логических устройств

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

Создадим файлы в /home, в который смонтировали lv1, их присутствие в файловой системе проверим после того как диск будет расширен

vgdisplay | grep Size

В выводе размер размещенного и неразмещенного пространства vg

VG Size 5,00 GiB
PE Size 4,00 MiB
Alloc PE / Size 768 / 3,00 GiB
Free PE / Size 511 / 2,00 GiB

Расширим lv1 поскольку 1 Гб для /home куда обычно помещаются файлы пользователей недостаточно. Используем команду lvextend. Все все свободное пространство использовать система не даст, оставим 100 Мб, остальное используем для расширения lv1

lvextend -L +1,9G /dev/vg1/lv1

Rounding size to boundary between physical extents: 1,90 GiB.
Size of logical volume vg1/lv1 changed from 1,00 GiB (256 extents) to 2,90 GiB (743 extents).
Logical volume vg1/lv1 successfully resized.

vgdisplay | grep Size

vgdisplay | grep Size
VG Size 5,00 GiB
PE Size 4,00 MiB
Alloc PE / Size 1255 / 4,90 GiB
Free PE / Size 24 / 96,00 MiB

lvdisplay теперь покажет, что под lv1 выделено 2,9 Гб. Созданные файлы остались на месте

file1.txt file2.txt

При помощи lvremove можно удалить логический девайс и все данные на нем, команду можно выполнить для несуществующего устройства lv3

Failed to find logical volume «vg1/lv3»

Настройка LVM в Linux и практика выделения разделов

Также рейд массивы и LMV можно устанавливать непосредственно на этапе установки операционной системы

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

Часто встречающимся решением является создание рейда 1 на двух дисках с секторами, выделенными под раздел /boot, вне lvm. Остальные диски сервера объединяются в рейд какой-либо конфигурации более эффективной для хранения больших объемов данных. Рейд 1 используется для обеспечения надежности — при выходе из строя одного из дисков загрузочный сектор системы будет считываться с другого.

Читайте также про настройки безопасности при подключении к серверу, установка ОС и разметка диска для которого завершены.

Ссылка на основную публикацию
Adblock
detector