Изменение размера томов LVM
Одним из основных преимуществ использования LVM является простота изменения размеров томов LVM, что очень полезно, если в вашей файловой системе заканчивается свободное место на диске.
Если используется файловая система XFS, объем можно увеличить, но не уменьшить. Другие файловые системы, такие как Ext4 и Btrfs, поддерживают уменьшение размера файловой системы.
Уменьшение файловой системы Ext4 может быть выполнено только в автономном режиме, что означает, что вам нужно размонтировать ее, прежде чем вы сможете изменить ее размер. В этой статье вы узнаете, как увеличить размер логического тома LVM.

Командой pvsвидим наш чистый том /dev/sdc1
Осталось добавить его в общее групповое хранилище и добавить к нему наш логический том /dev/sdc1.
Физический том в 10g добавлен, но не используется в логическом томе.
Смотрим логический том:
Как видно, все еще используется 20g.
Чтобы увеличить размер логического тома, используйте lvresize, затем идет опция -r, чтобы изменить размер файловой системы:
Смотрим суммарную статистику логического тома:
Убеждаемся, что логический том lvDATA стал на 10g больше.
Попытается добавить 75% от общего размера группы томов к логическому тому. (Обратите внимание на разницу с предыдущей командой.).
Добавляет 75% всего свободного дискового пространства к логическому тому.
Изменяет размер логического тома до общего размера, равного 75% объема свободного дискового пространства. (Обратите внимание на разницу с предыдущей командой.).
При изменении размера логического тома вы также можете использовать опцию -l, после которой указывается количество логических экстентов, которые вы хотите добавить или удалить.
Логическим экстентом является логический строительный блок, используемый при создании логических томов, который сопоставляется с физическим экстентом, размер которого можно указать при создании группы томов. Все операции по изменению размера должны соответствовать полным логическим экстентам. Иногда вы заметите, что размер изменения размера округляется в большую или меньшую сторону до размера логического экстента. Вы также можете указать количество логических экстентов, которые должны быть добавлены или удалены напрямую, используя опцию -l с командой lvresize.
Как видите, изменение размера логического тома имеет много опций, и вам нужно позаботиться об использовании правильных опций, потому что легко ошибиться!
Если используется файловая система XFS, объем можно увеличить, но не уменьшить. Другие файловые системы, такие как Ext4 и Btrfs, поддерживают уменьшение размера файловой системы.
Уменьшение файловой системы Ext4 может быть выполнено только в автономном режиме, что означает, что вам нужно размонтировать ее, прежде чем вы сможете изменить ее размер. В этой статье вы узнаете, как увеличить размер логического тома LVM.

Подготовка к добавлению
Итак. Мы добавили в систему диск. Командой fdisk создали раздел, пометили его как LVM и назначили ему файловую систему XFS.Командой pvsвидим наш чистый том /dev/sdc1
[root@server2 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <19.57g 4.00m
/dev/sdb1 vgDATA lvm2 a-- <20.00g 0
/dev/sdc1 lvm2 --- <10.00g <10.00g
Осталось добавить его в общее групповое хранилище и добавить к нему наш логический том /dev/sdc1.
Добавление хранилища в VG
- vgextend добавить хранилище в VG.
- vgreduce удалить хранилище из VG.
[root@server2 ~]# vgextend vgDATA /dev/sdc1
Volume group "vgDATA" successfully extended
[root@server2 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.57g 4.00m
vgDATA 2 1 0 wz--n- 29.99g <10.00g
Физический том в 10g добавлен, но не используется в логическом томе.
Смотрим логический том:
[root@server2 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <18.63g
swap centos -wi-ao---- 956.00m
lvDATA vgDATA -wi-ao---- <20.00g
[root@server2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 19G 5.6G 14G 30% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 792K 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 470M 209M 262M 45% /boot
tmpfs 379M 0 379M 0% /run/user/0
/dev/mapper/vgDATA-lvDATA 20G 33M 20G 1% /mnt/lvDATA
Как видно, все еще используется 20g.
Чтобы увеличить размер логического тома, используйте lvresize, затем идет опция -r, чтобы изменить размер файловой системы:
[root@server2 ~]# lvresize -r -l +100%FREE /dev/vgDATA/lvDATA
Size of logical volume vgDATA/lvDATA changed from <20.00 GiB (5119 extents) to 29.99 GiB (7678 extents).
Logical volume vgDATA/lvDATA successfully resized.
meta-data=/dev/mapper/vgDATA-lvDATA isize=512 agcount=4, agsize=1310464 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=5241856, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 5241856 to 7862272
Смотрим суммарную статистику логического тома:
[root@server2 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <18.63g
swap centos -wi-ao---- 956.00m
lvDATA vgDATA -wi-ao---- 29.99g
Убеждаемся, что логический том lvDATA стал на 10g больше.
Примеры
Изменяет размер логического тома, чтобы он занимал 75% общего дискового пространства в группе томов.lvresize -r -l 75% VG /dev/vgdata/lvdata
Попытается добавить 75% от общего размера группы томов к логическому тому. (Обратите внимание на разницу с предыдущей командой.).
lvresize -r -l +75%VG /dev/vgdata/lvdata
Добавляет 75% всего свободного дискового пространства к логическому тому.
lvresize -r -l +75%FREE /dev/vgdata/lvdata
Изменяет размер логического тома до общего размера, равного 75% объема свободного дискового пространства. (Обратите внимание на разницу с предыдущей командой.).
lvresize -r -l 75%FREE /dev/vgdata/lvdata
При изменении размера логического тома вы также можете использовать опцию -l, после которой указывается количество логических экстентов, которые вы хотите добавить или удалить.
Логическим экстентом является логический строительный блок, используемый при создании логических томов, который сопоставляется с физическим экстентом, размер которого можно указать при создании группы томов. Все операции по изменению размера должны соответствовать полным логическим экстентам. Иногда вы заметите, что размер изменения размера округляется в большую или меньшую сторону до размера логического экстента. Вы также можете указать количество логических экстентов, которые должны быть добавлены или удалены напрямую, используя опцию -l с командой lvresize.
Как видите, изменение размера логического тома имеет много опций, и вам нужно позаботиться об использовании правильных опций, потому что легко ошибиться!