Что такое lvm linux

Обновлено: 01.07.2024

Как новичок в Linux/Ubuntu, что такое LVM и для чего он используется?

Что дает установка веб-сервера?

Вы бы порекомендовали его использовать?

5 ответов 5

Вы можете думать о LVM как о «динамических разделах», что означает, что вы можете создавать/изменять размер/удалять «разделы» LVM (на языке LVM они называются «логическими томами») из командной строки, в то время как ваш Система Linux запущена: нет необходимости перезагружать систему, чтобы ядро ​​узнало о вновь созданных разделах или разделах с измененным размером.

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

Можно настроить "чередующиеся" тома, чтобы ввод-вывод можно было распределять на все диски, на которых размещен том, параллельно. (Аналогичен RAID-0, но немного проще в настройке.)

Вы можете создать моментальный снимок (только для чтения) любого LV. Вы можете вернуть исходный LV к моментальному снимку позже или удалить моментальный снимок, если он вам больше не нужен. Это удобно, например, для резервного копирования сервера (вы не можете остановить запись всех ваших приложений, поэтому вы создаете моментальный снимок и создаете резервную копию снимка LV), но также может использоваться для обеспечения «подстраховки» перед критическим обновлением системы (клонирование корневой раздел, обновление, откат, если что-то пошло не так).

Несмотря на то, что функции 1 и 3 наиболее полезны в серверных системах, я думаю, что функции 1 и 3 в сочетании с возможностью LVM создавать/изменять размер/удалять тома "на лету" весьма удобны и для настольных систем. (Особенно если вы много экспериментируете с системой.)

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

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


По сути, LVM берет сложные вещи и делает их возможными, но берет уже возможные вещи и делает их еще более сложными.

Я знаю, что эта ветка устарела и что у ОП гораздо лучшее понимание этого, но я наткнулся на эту ветку, когда искал что-то с LVM, и подумал, что вставлю свои 2c.

Короткий ответ заключается в том, что увеличение размера раздела на диске — это проблема.

У меня есть сервер AWS (EC2), который я использую для резервного копирования (используя rsnapshot). Поскольку я начинаю создавать резервные копии большего количества серверов или данные изменяются чаще, мне требуется больше места.

Мой резервный диск в настоящее время представляет собой том EBS объемом 250 ГБ, который теперь полностью заполнен, и я хочу увеличить его размер до 350 ГБ, поэтому я зашел в панель управления AWS, создал моментальный снимок диска, создал новый том EBS из снимок и прикрепил его. Теперь у меня есть раздел EXT4 объемом 250 ГБ, полный данных на диске емкостью 350 ГБ. Я хочу сказать Ubuntu использовать большее пространство, но я не могу использовать resize2fs для увеличения размера раздела, и fdisk также не позволяет мне изменить размер раздела. Вместо этого он позволяет мне только удалить раздел, создать новый большего размера, а затем мне нужно выполнить R-синхронизацию файлов с помощью правильной командной строки, чтобы также скопировать жесткие ссылки.

Это много работы, поэтому я недавно настроил его с помощью LVM, и теперь я могу взять новый, больший диск EBS и легко увеличить объем LVM на нем, а затем быстро изменить размер 2fs, чтобы сообщить файловой системе EXT4, что у нее есть некоторые новое пространство и бам, проблема решена без необходимости копировать сотни гигабайт данных. LVM — спаситель. В качестве альтернативы я мог бы просто смонтировать другой том EBS, расширить LVM до него, и теперь он распределен по нескольким дискам, но он виден только как один раздел, милая!

Perl-трюки для системных администраторов

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

Дополнительные ресурсы по Linux

Должен вам сказать, что когда LVM (Logical Volume Manager) впервые появился в Fedora Linux, я довольно сильно сопротивлялся ему.Моей первоначальной реакцией было то, что мне не нужен этот дополнительный уровень абстракции между мной и жесткими дисками. Оказывается, я ошибался, и управление логическими томами очень полезно.

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

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

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

Расширение файловой системы на лету

Мне всегда нравится запускать новые дистрибутивы на виртуальной машине VirtualBox в течение нескольких дней или недель, чтобы убедиться, что я не столкнусь с какими-либо разрушительными проблемами, когда начну устанавливать его на свои рабочие машины. Однажды утром пару лет назад я начал устанавливать только что выпущенную версию Fedora на виртуальную машину на моей основной рабочей станции. Я думал, что у меня достаточно дискового пространства, выделенного для файловой системы хоста, в которой устанавливалась виртуальная машина. Я не. Примерно на трети пути установки мне не хватило места в этой файловой системе. К счастью, VirtualBox обнаружил нехватку места и приостановил виртуальную машину, а также отобразил сообщение об ошибке, указывающее точную причину проблемы.

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

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

Хотя у вас никогда не возникало таких проблем, нехватка места на диске во время работы важной программы случалась со многими людьми. И хотя многие программы, особенно программы для Windows, написаны не так хорошо и отказоустойчиво, как VirtualBox, управление логическими томами Linux сделало возможным восстановление без потери данных и без перезапуска трудоемкой установки.

Структура LVM

Структура дисковой среды диспетчера логических томов показана на рисунке 1 ниже. Управление логическими томами позволяет объединять несколько отдельных жестких дисков и/или разделов диска в одну группу томов (VG). Затем эту группу томов можно разделить на логические тома (LV) или использовать как один большой том. Затем на логическом томе можно создать обычные файловые системы, такие как EXT3 или EXT4.

На рисунке 1 два полных физических жестких диска и один раздел третьего жесткого диска объединены в одну группу томов. Два логических тома были созданы из пространства в группе томов, и на каждом из двух логических томов была создана файловая система, например файловая система EXT3 или EXT4.

lvm.jpg

Рисунок 1. LVM позволяет объединять разделы и целые жесткие диски в группы томов.

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

Добавление нового логического тома

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

Основные шаги для добавления нового логического тома следующие.

  1. При необходимости установите новый жесткий диск.
  2. Необязательно: создайте раздел на жестком диске.
  3. Создайте физический том (PV) всего жесткого диска или раздел на жестком диске.
  4. Назначьте новый физический том существующей группе томов (VG) или создайте новую группу томов.
  5. Создайте новые логические тома (LV) из пространства в группе томов.
  6. Создайте файловую систему на новом логическом томе.
  7. Добавьте соответствующие записи в /etc/fstab для монтирования файловой системы.
  8. Смонтировать файловую систему.

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

Пример

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

ВНИМАНИЕ: Только файловые системы EXT3 и EXT4 могут быть изменены на лету в работающей смонтированной файловой системе. Размер многих других файловых систем, включая BTRFS и ZFS, изменить нельзя.

Установите жесткий диск

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

Создать физический том с жесткого диска

Сначала необходимо создать новый физический том (PV). Используйте приведенную ниже команду, которая предполагает, что новый жесткий диск назначен как /dev/hdd.

Нет необходимости создавать какой-либо раздел на новом жестком диске. Это создание физического тома, который будет распознан диспетчером логических томов, может быть выполнено на только что установленном необработанном диске или на разделе Linux типа 83. Если вы собираетесь использовать весь жесткий диск, предварительное создание раздела не имеет значения. предлагают какие-либо особые преимущества и использует дисковое пространство для метаданных, которые в противном случае могли бы использоваться как часть PV.

Расширить существующую группу томов

В этом примере мы расширим существующую группу томов, а не создадим новую; вы можете сделать это в любом случае. После создания физического тома расширьте существующую группу томов (VG), включив в нее место на новом PV. В этом примере существующая группа томов называется MyVG01.

Создайте логический том

Сначала создайте логический том (LV) из существующего свободного места в группе томов. Приведенная ниже команда создает LV размером 50 ГБ. Имя группы томов — MyVG01, а имя логического тома — Stuff.

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

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

Добавить метку файловой системы

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

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

На этом этапе вы можете создать точку монтирования, добавить соответствующую запись в файл /etc/fstab и смонтировать файловую систему.

Также следует проверить правильность создания тома. Для этого можно использовать команды df, lvs и vgs.

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

Необходимость изменять размер файловой системы существовала с момента появления первых версий Unix и не исчезла в Linux. Однако с логическим управлением томами это стало проще.

  1. При необходимости установите новый жесткий диск.
  2. Необязательно: создайте раздел на жестком диске.
  3. Создайте физический том (PV) всего жесткого диска или раздел на жестком диске.
  4. Назначьте новый физический том существующей группе томов (VG) или создайте новую группу томов.
  5. Создайте один или несколько логических томов (LV) из пространства в группе томов или расширьте существующий логический том с помощью части или всего нового пространства в группе томов.
  6. Если вы создали новый логический том, создайте на нем файловую систему. При добавлении пространства к существующему логическому тому используйте команду resize2fs, чтобы увеличить файловую систему, чтобы заполнить пространство в логическом томе.
  7. Добавьте соответствующие записи в /etc/fstab для монтирования файловой системы.
  8. Смонтировать файловую систему.

Пример

В этом примере показано, как изменить размер существующего логического тома в среде LVM с помощью интерфейса командной строки. Он добавляет около 50 ГБ пространства в файловую систему /Stuff. Эту процедуру можно использовать в смонтированной активной файловой системе только с ядром Linux 2.6 (и выше) и файловыми системами EXT3 и EXT4. Я не рекомендую вам делать это на любой критической системе, но это можно сделать, и я делал это много раз; даже в корневой (/) файловой системе. Используйте свое суждение.

ВНИМАНИЕ: Только файловые системы EXT3 и EXT4 могут быть изменены на лету в работающей смонтированной файловой системе. Размер многих других файловых систем, включая BTRFS и ZFS, изменить нельзя.

Установите жесткий диск

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

Создайте физический том на жестком диске

Сначала необходимо создать новый физический том (PV). Используйте приведенную ниже команду, которая предполагает, что новый жесткий диск назначен как /dev/hdd.

Нет необходимости создавать какой-либо раздел на новом жестком диске. Это создание физического тома, который будет распознан диспетчером логических томов, может быть выполнено на только что установленном необработанном диске или на разделе Linux типа 83. Если вы собираетесь использовать весь жесткий диск, предварительное создание раздела не имеет значения. предлагают какие-либо особые преимущества и использует дисковое пространство для метаданных, которые в противном случае могли бы использоваться как часть PV.

Добавить PV в существующую группу томов

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

Расширить логический том

Расширьте логический том (LV) за счет существующего свободного места в группе томов. Приведенная ниже команда расширяет LV на 50 ГБ. Имя группы томов — MyVG01, а имя логического тома — Stuff.

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

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

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

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

  • Используйте расширенные файловые системы, если у вас нет четкой причины использовать другую файловую систему. Не все файловые системы поддерживают изменение размера, но EXT2, 3 и 4 поддерживают. Файловые системы EXT также очень быстрые и эффективные. В любом случае знающий системный администратор может настроить их для удовлетворения потребностей большинства сред, если параметры настройки по умолчанию не соответствуют требованиям.
  • Используйте понятные имена томов и групп томов.
  • Используйте метки файловой системы EXT.

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

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

Опубликовано: 7 декабря 2020 г. | Дэймон Гарн (Red Hat)

LVM против стандартного разбиения диска

Фото: Soulful Pizza, Pexels

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

Традиционное управление хранилищем

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

Объем хранилища обычно определяется на основе максимальной емкости отдельных жестких дисков.В результате, когда системный администратор думает о хранилище, он делает это для каждого диска. Например, если на сервере есть три жестких диска по 1 ТБ каждый, системный администратор воспринимает хранилище буквально: У меня есть три диска по 1 ТБ для работы.

Администратор с мыслящим пузырем, который гласит:

Три жестких диска по 1 ТБ с разделами и точками подключения

Три жестких диска по 1 ТБ с разделами и точками подключения. Разделы полностью размещены на отдельных жестких дисках.

Давайте быстро рассмотрим традиционное управление хранилищем. Вот пример сценария:

1. Установите новый жесткий диск

Купите жесткий диск емкостью 1 терабайт (1 ТБ), а затем физически установите его на сервер.

2. Разметить диск

Используйте fdisk или gparted для создания одного или нескольких разделов. Важно отметить, что разделы не могут занимать больше 1 ТБ общей емкости диска.

Пример команды fdisk:

В этой статье я не буду описывать синтаксис fdisk, но предположим, что я создал один раздел, занимающий весь диск объемом 1 ТБ. Раздел /dev/sdb1 .

Отображение емкости с помощью содержимого /proc/partitions и lsblk:

3. Создать файловую систему

Создайте файловую систему в новом разделе с помощью команды mkfs. Вы можете использовать файловую систему XFS ext4 или RHEL по умолчанию.

Хотя XFS используется Red Hat по умолчанию, он может быть не таким гибким в сочетании с LVM, как ext4. Файловые системы XFS можно легко расширить, но не уменьшить. Я раскрою эту идею ближе к концу статьи.

4. Создайте точку монтирования

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

5. Подтвердите емкость хранилища

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

Дополнительные ресурсы по Linux

Примечание. Параметр -h отображает выходные данные du в терминах емкости, понятных людям, таких как ГБ или ТБ.

6. Настройте пространство для монтирования при загрузке

Отредактируйте файл /etc/fstab, чтобы монтировать файловую систему при загрузке. Если вам нужно напоминание о файле /etc/fstab , ознакомьтесь со статьей Тайлера Карригана Введение в файл Linux /etc/fstab здесь, посвященной включению системного администратора.

Диспетчер логических томов (LVM)

Традиционная емкость хранилища зависит от емкости отдельного диска. LVM использует другую концепцию. Пространство хранения управляется путем объединения или объединения емкости доступных дисков. В традиционном хранилище три диска по 1 ТБ обрабатываются по отдельности. С LVM те же самые три диска считаются совокупной емкостью хранилища 3 ТБ. Это достигается назначением дисков хранилища как физических томов (PV) или емкостью хранилища, используемой LVM. Затем PV добавляются в одну или несколько групп томов (VG). Группы томов объединяются в один или несколько логических томов (LV), которые затем рассматриваются как традиционные разделы.

Администратор с мыслящим пузырем, который гласит:

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

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

1. Установите новый жесткий диск

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

2. Назначение физических томов

Физические тома (PV) — это диски или разделы, доступные LVM в качестве потенциальной емкости хранилища. У них есть идентификаторы и метаданные, описывающие каждый PV. Интересно отметить, что, в отличие от RAID, PV не обязательно должны быть одинакового размера или на дисках с одинаковой скоростью. Вы можете смешивать и подбирать типы дисков для создания PV. Чтобы реализовать LVM, сначала назначьте диск как физический том.

Команда для создания PV:

Эти два примера команд немного отличаются. Первая команда назначает раздел 1 на диске хранения b как PV. Вторая команда устанавливает общую емкость диска хранения c в качестве PV.

Отображение мощности PV и дополнительная информация:

Эта команда отображает все физические тома, настроенные на сервере.

3. Управление группами томов

Как только один или несколько дисков становятся доступными для LVM в качестве физических томов, емкость хранилища объединяется в группы томов (VG). На сервере может быть более одной VG, а диски могут быть членами более чем одной VG (но сами PV могут быть членами только одной VG).

Используйте команду vgcreate для создания новой группы томов. В группе VG должен быть хотя бы один член. Синтаксис команды:

Используйте следующую команду, чтобы создать группу томов с именем vg00, в которую входят /dev/sdb1 и /dev/sdc:

Отображение информации для VG с именем vg00:

4. Управление логическими томами

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

Команда lvcreate выделяет емкость хранилища из виртуальной группы. Есть несколько вариантов, о которых следует знать.

Параметры lvcreate < td>Подробный режим с дополнительной информацией
Параметры Описание< /td>
-n Имя LV - ex. sales-lv
-L Размер в G или T - напр. 10G
-q Тихо, подавляет вывод команды
-v

Синтаксис команды lvcreate следующий:

Вот команда для создания логического тома объемом 10 ГБ с именем sales-lv, вырезанного из группы томов vg00:

Как вы помните, мы создали группу томов vg00 из двух физических томов, /dev/sdb1 и /dev/sdc. Таким образом, мы объединили емкость /dev/sdb1 и /dev/sdc в vg00, а затем вырезали логический том с именем sales-lv из этого объединенного пространства хранения.

Вы можете использовать команду lvdisplay для просмотра конфигурации логического тома.

5. Примените файловую систему и установите точку монтирования

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

  1. Выполните команду mkfs.ex4 на LV.
  2. Создайте точку подключения с помощью mkdir.
  3. Смонтируйте том вручную с помощью команды mount или отредактируйте файл /etc/fstab, чтобы том монтировался автоматически при загрузке системы.
  4. Используйте команду df -h, чтобы проверить доступную емкость хранилища.

Масштабируемость

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

Начнем с увеличения емкости.

Увеличить мощность

Вы можете увеличить емкость логического тома. Это полезно, если пользователи занимают больше места, чем вы ожидали. Процесс довольно логичен:

  1. Добавьте диск и настройте его как PV.
  2. Добавить его в виртуальную группу.
  3. Добавьте емкость в LV, а затем расширите файловую систему.

1. Установите диск хранения, а затем настройте его как PV

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

Вот напоминание о команде для создания PV:

В этом случае я назначаю раздел 2 на диске /dev/sdb новым PV.

2. Добавить место в VG

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

Выполните эту команду, чтобы добавить новый PV в существующую группу VG:

Теперь пул хранения больше. Следующим шагом является добавление увеличенной емкости к определенному логическому тому. Вы можете выделить любое или все пространство хранения PV, которое вы только что добавили в пул, для существующего LV.

3. Добавить место в LV

Затем добавьте часть или все пространство нового хранилища VG в том LV, который необходимо расширить.

Выполните команду lvextend, чтобы расширить LV до заданного размера:

Выполните команду lvextend, чтобы добавить 1 ГБ к существующему размеру:

4. Расширьте файловую систему, чтобы освободить место для хранения

Наконец, расширьте файловую систему. И ext4, и XFS поддерживают эту возможность, поэтому подойдет любая файловая система.

Размонтируйте файловую систему с помощью команды umount:

Вот основная команда для ext4:

Уменьшить емкость

Уменьшение места для хранения — менее распространенная задача, но на нее стоит обратить внимание. Процесс происходит в порядке, обратном расширению хранилища.

Примечание. Файловые системы XFS на самом деле не сжимаются. Вместо этого создайте резервную копию содержимого, а затем восстановите его на новом LV с измененным размером. Для этого можно использовать утилиту xfsdump. Файловую систему ext4 можно уменьшить. Это файловая система, на которой я сосредоточусь в этом разделе. Как мы видели выше при расширении файловой системы, том должен быть размонтирован. Точная команда зависит от вашего имени LV.

1. Уменьшить файловую систему

Затем используйте команду resize2fs, чтобы уменьшить размер файловой системы. Рекомендуется запускать fsck в файловых системах ext4 перед их сжатием. Также рекомендуется сделать резервную копию данных на LV на случай непредвиденных обстоятельств.

Вот пример сжатия файловой системы ext4:

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

2. Уменьшить LV

Используйте команду lvreduce, чтобы уменьшить объем памяти, выделенный для LV. Это возвращает потенциальную емкость хранилища в виртуальную группу.

Очень важно понимать, что указанная выше команда устанавливает для Sales-lv значение 2T. Он не удаляет два терабайта из существующего тома LV. Он настраивает LV на два терабайта. Можно указать lvreduce вычесть объем пространства из существующей емкости с помощью очень похожей команды:

В этом случае я добавил - (дефис) перед размером 2T, указывая на то, что я хочу, чтобы это количество пространства было вычтено из существующей емкости продаж-lv. Разница между этими двумя командами небольшая, но важная.

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

Гибкость

Емкость также можно легко перераспределить с помощью LVM. Вы можете уменьшить мощность в одной VG и добавить ее в другую. Это достигается путем сжатия файловой системы и последующего удаления LV из VG. Допустим, у вас есть сервер емкостью 10 ТБ. Используя описанные выше процессы, вы создали два LV по 5 ТБ каждый. Через несколько недель вы обнаружите, что вместо этого должны были создать LV размером 7 ТБ и 3 ТБ. Вы можете удалить 2 ТБ емкости из одной из групп томов, а затем добавить эту емкость в другую группу томов. Это обеспечивает гораздо большую гибкость, чем предлагает традиционное разделение.

LVM также поддерживает конфигурации RAID, зеркалирование и другие расширенные настройки, что делает его еще более привлекательным решением. В статье Тайлера Карригана «Создание логических томов в Linux с помощью LVM» содержится полезная информация о чередовании и зеркалировании логических томов.

[ Хотите проверить свои навыки системного администратора? Пройдите оценку навыков сегодня. ]

Подведение итогов

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

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

Подобные команды используются для управления компонентами LVM < td>Показать информацию о физическом томе< td>lvcreate
Команда Описание
pvcreate Создать физический том
pvdisplay
pvs Показать информацию о физическом томе
pvremove Удалить физический том
vgcreate Создать группу томов
vgdisplay Показать информацию о группе томов
vgs Показать информацию о группе томов
vgremove< /td> Удалить группу томов
vgextend/vgreduce Расширить или уменьшить группу томов
Создать логический том
lvdisplay Отобразить информацию о логическом томе
lvs Показать информацию о логическом томе
lvremove Удалить логический том me
lvextend/lvextend Увеличить или уменьшить логический том

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

LVM – это инструмент для управления логическими томами, который включает выделение дисков, чередование, зеркалирование и изменение размера логических томов.

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

Физические тома объединяются в логические тома, за исключением раздела /boot. Раздел /boot не может находиться в группе логических томов, поскольку загрузчик не может его прочитать. Если корневой раздел ( / ) находится на логическом томе, создайте отдельный раздел /boot, который не является частью группы томов.

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

Логические тома

Рисунок 11.1. Логические тома

Группы томов можно разделить на логические тома, которым назначаются точки монтирования, например /home и /, и типы файловых систем, например ext2 или ext3. Когда «разделы» достигают своей полной емкости, свободное пространство из группы томов может быть добавлено к логическому тому, чтобы увеличить размер раздела. Когда в систему добавляется новый жесткий диск, его можно добавить в группу томов, а размер разделов, являющихся логическими томами, можно увеличить.

Логические тома

Рисунок 11.2. Логические тома

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

Чтобы узнать, как настроить LVM в процессе установки, обратитесь к Разделу 11.2, «Конфигурация LVM».

11.1.1. Что такое LVM2?

LVM версии 2, или LVM2, используется по умолчанию для Red Hat Enterprise Linux 5, в котором используется драйвер сопоставления устройств, содержащийся в ядре 2.6. LVM2 можно обновить с версии Red Hat Enterprise Linux с ядром 2.4.

Читайте также: