Исходные данные:
OS – Debian Linux 8.
Оригинальный размер LVM – 15 GB.
Задача: Расширить LVM до 20 GB, на весь доступный объем жесткого диска.

Важно! До внесения изменений обязательно сделайте резервную копию (бэкап) всех данных сервера. Любые манипуляции с разделами несут в себе риск потери данных.

Есть еще другой способ расширения диска в Linux (Debian, CentOS, Ubuntu).

Шаг первый

На данном этапе у нас есть один PV (physical volume) один VG (volume group) и один LV (logical volume).

# pvs
# vgs
# lvs

add-disk-space-linux-server-lvm-debian-1

Как видно из скриншота, у нас нет доступного  места в physical volume  и volume group  для расширения нашего logical volume. Чтобы расширить logical volume, нам необходимо создать новый physical volume. Затем расширить наш logical volume, добавив в него новый physical volume.

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

# fdisk /dev/vda

n – для создания нового раздела на диске;
p – для присвоения primary новому разделу.

Укажите номер, который будет носить этот раздел. First sector и Last sector указываем по умолчанию. После этого мы получим уведомление, что был создан раздел типа Linux размером 5 GB.

Теперь необходимо сменить тип раздела с Linux на Linux LVM:
t – для смены типа созданного раздела.
Указываем номер нашего раздела:
8e – это hex-код для типа LVM.

В результате этой операции мы получим сообщение, что раздел был изменен с типа Linux на Linux LVM.

add-disk-space-linux-server-lvm-debian-2

Теперь убедимся, что все хорошо, – нажав p:
p – для вывода всех томов на нашем диске

add-disk-space-linux-server-lvm-debian-3

После чего – w, для записи изменений на диск и выхода из программы fdisk.

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

# reboot

add-disk-space-linux-server-lvm-debian-4

После того, как мы успешно создали раздел, необходимо создать новый physical volume на основе этого раздела:

# pvcreate /dev/vda2

Команда вернет, что physical volume был успешно создан:

add-disk-space-linux-server-lvm-debian-5

Шаг второй

Следующим шагом будет расширение нашей volume group посредством добавления в неё созданного physical volume.
# vgextend lvm-master /dev/vda2

Теперь проверим сколько доступного свободного места в нашей VG на данный момент:
# vgs

add-disk-space-linux-server-lvm-debian-6

С помощью команды lvdisplay мы можем посмотреть список всех logical volume, которые на данный момент доступны:
# lvdisplay

add-disk-space-linux-server-lvm-debian-7

Нам доступен один, он носит название lvm-rootfs. На этом logical volume находится наш коренной раздел ( / ).

Теперь мы расширим наш LV lvm-rootfs на доступные нам 5 GB (с 15GB до 20GB). Команда vgdisplay покажет свободные PE (Physical Extend):
# vgdisplay

add-disk-space-linux-server-lvm-debian-8

Именно на это количество PE мы и расширим наш LV lvm-rootfs:
# lvextend -l +1280 /dev/lvm-master/lvm-rootfs

add-disk-space-linux-server-lvm-debian-9

После расширения LV необходимо расширить файловую систему на весь доступный объем:
# resize2fs /dev/lvm-master/lvm-rootfs

add-disk-space-linux-server-lvm-debian-10

Теперь посмотрим на новый размер нашего LV:
# lvdisplay

add-disk-space-linux-server-lvm-debian-11

Как видно размер изменился с 15 до 20 GB:

add-disk-space-linux-server-lvm-debian-12