Linux: Расширение LVM на лету

4224_BnHover
Хотелось бы продолжить тему увеличения размера файловой системы затронутой в посте:
VMWare & Linux: Увеличиваем размер файловой системы. Речь пойдет про LVM разделы.

LVM — это метод распределения пространства жёсткого диска по логическим томам. Менеджер логических томов (англ. Logical Volume Manager) представляет собой дополнительный уровень абстракции между физическими/логическими дисками и файловой системой. Это достигается путём разбивки изначальных разделов на блоки, либо использования отдельных разделов или блочных устройств (physical volume (pv)) и объединения их в единый виртуальный том, точнее группу томов (volume group (vg)), которая далее разбивается на логические тома (logical volume (lv)).

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

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

  • Для примера возьмем, виртуальную машину, на которой нам надо расширить корневой раздел.
# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      20892696   8291056  8493280  11% /
/dev/sda1               101086     13395     82472  14% /boot
none                   4154324         0   4154324   0% /dev/shm
  • Мы добавили к диску свободное место и создали раздел «/dev/sda3».
# fdisk -l

Disk /dev/sda: 150.3 GB, 150323855360 bytes
255 heads, 63 sectors/track, 18275 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14       10443    83778975   8e  Linux LVM
/dev/sda3           10444       18276    62917242+  8e  Linux LVM
  • После создания нового раздела его необходимо применить в качестве физического тома в LVM и добавить в группу VolGroup00:
#pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created

# vgextend VolGroup00 /dev/sda3
Volume group "VolGroup00" successfully extended
  • Расширяем логический том LogVol00 например на 10G или мы можем использовать все доступное пространство нового диска:
#lvextend -L +10G /dev/mapper/VolGroup00-LogVol00
Extending logical volume LogVol00 to 80,12 GB
Logical volume LogVol00 successfully resized

# lvextend -l +100%FREE /dev/mapper/VolGroup00-LogVol00
  • Если все верно сделали, ресайзим необходимый раздел. В случае если возможно его отмонтировать — делаем это. Иначе можно попробовать на лету в работающей системе, но не все файловые системы поддерживают данную возможность.
# resize2fs /dev/mapper/VolGroup00-LogVol00
resize2fs 1.39
Filesystem at /dev/mapper/VolGroup00-LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/mapper/VolGroup00-LogVol00 to 13139968 (4k) blocks.
The filesystem on /dev/mapper/VolGroup00-LogVol00 is now 13139968 blocks long.

В случае Red Hat Enterprise Linux, мне все-таки пришлось перезагрузиться и resize прошел успешно, только при помощи данной команды:

ext2online /dev/mapper/VolGroup00-LogVol00
Вы можете оставить комментарий ниже.