Как развернуть файловую систему в середине? (LVM)

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

[logical-volume]
  |    |    |
[sda][sdb][sdc]

Как то, если ранее неиспользуемое место становится доступным на диске sdb?

P.S. Я предполагаю, что это было бы обработано самим LVM, а не файловой системой, если это даже возможно.

0
задан 21 August 2016 в 05:50

1 ответ

Найденный им.

Короткая версия: использовать pvmove. Долгая версия:

Если ситуация, как мог бы быть возвращен lvdisplay --maps следующие:

--- Logical volume ---
  LV Path                /dev/main/data
  Current LE             300
  Segments               3
  (redacted)

  --- Segments ---
  Logical extent 0 to 99:
    Physical volume /dev/sda1
    Physical extents    0 to 99

  Logical extent 100 to 199:
    Physical volume /dev/sdb1
    Physical extents    0 to 99

  Logical extent 200 to 299:
    Physical volume /dev/sdc1
    Physical extents    0 to 99

Затем как Вы видите, логический том распространен через 3 диска и занимает 100 степеней на каждом. 'Степени' являются версией LVM секторов; они - самая маленькая единица, в которой это обычно касается.

Но если мы смотрим на физические тома внизу:

pvdisplay

  --- Physical volume ---
  PV Name           /dev/sda1
  Total PE          100
  Free PE           0
  Allocated PE      100

  --- Physical volume ---
  PV Name           /dev/sdb1
  Total PE          300
  Free PE           200
  Allocated PE      100

  --- Physical volume ---
  PV Name           /dev/sdc1
  Total PE          100
  Free PE           0
  Allocated PE      100

... мы видим что раздел второго диска (/dev/sdb1) имеет довольно большое дополнительное пространство.

Теперь, мы могли просто добавить, что непосредственно к логическому тому, и в то время как это будет, вероятно, достаточно для большинства ситуаций, это было бы оставлять объем в излишне фрагментированном состоянии. Конец логического тома был бы на среднем диске. Это то, где pvmove команда входит.

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

Предупреждение: pvmove может вызвать потерю данных. Идеально, скопируйте файловую систему перед продолжением.

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

базовый синтаксис: pvmove SourcePhysicalVolume:PE-PE DestinationPhysicalVolume:PE-PE

Первая команда: Повторно прикрепите степени от sdc1 на sdb1, таким образом создание всего непрерывного:

pvmove /dev/sdc1:0-99 /dev/sdb1:100-199

Впоследствии lvdisplay --maps дает:

--- Logical volume ---
  LV Path                /dev/main/data
  Current LE             300
  Segments               2
  (redacted)

  --- Segments ---
  Logical extent 0 to 99:
    Physical volume /dev/sda1
    Physical extents    0 to 99

  Logical extent 100 to 299:
    Physical volume /dev/sdb1
    Physical extents    0 to 199

Теперь, это - просто вопрос расширения логического тома через остающееся пространство на /dev/sdb1 и теперь совершенно пустой /dev/sdc1. Это намного более просто. Следующая команда говорит lvm разворачивать наш логический том через все остающиеся свободные степени на тех разделах.

lvextend -l +100%free /dev/main/data /dev/sdb1 /dev/sdc1

Впоследствии логический том был бы похож так:

--- Logical volume ---
  LV Path                /dev/main/data
  Current LE             500
  Segments               2
  (redacted)

  --- Segments ---
  Logical extent 0 to 99:
    Physical volume /dev/sda1
    Physical extents    0 to 99

  Logical extent 100 to 399:
    Physical volume /dev/sdb1
    Physical extents    0 to 299

  Logical extent 400 to 499:
    Physical volume /dev/sdc1
    Physical extents    0 to 99

Который является красивым, и максимально бесшовным.

Теперь мы можем расширить файловую систему в новое пространство.

resize2fs /dev/main/data

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

0
ответ дан 28 September 2019 в 16:24

Другие вопросы по тегам:

Похожие вопросы: