Изменение размера LVM раздела в CentOS 7

Автор | 08.11.2016

Решение проблемы с изменением LVM раздела в CentOS 7, и как это вообще сделать.

 Сделаем вывод информации о разделах:

# vgdisplay

Получим следующее:

— Volume group —
VG Name centos
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 299,51 GiB
PE Size 4,00 MiB
Total PE 76674
Alloc PE / Size 34816 / 136,00 GiB
Free PE / Size 41858 / 163,51 GiB
VG UUID uxNArt-u6b0-QkC0-Bmzf-vbzE-970h-j32Wfd

Alloc  — доступно всего, Free — объем свободного места.

В краткой форме можно посмотреть так:

lvextend -L+[size] /dev/mapper/vg_host73-lv_oracle# pvscan
PV /dev/vda2 VG centos lvm2 [299,51 GiB / 143,51 GiB free]
Total: 1 [299,51 GiB] / in use: 1 [299,51 GiB] / in no VG: 0 [0 ]

Добавим место для раздела oracle ( 20 Гб):

# lvextend -L+20G/dev/mapper/centos-oracle # Для Centos 6

# lvextend -L+20G /dev/centos/oracle # Для Centos 7

Далее необходимо обновить саму файловую систему, для начала нужно определить тип, делается это так:

Находим устройство:

# file -s /dev/centos/oracle
/dev/centos/oracle: symbolic link to `../dm-2′

Делаем запрос:

# file -s /dev/dm-2

/dev/dm-2: SGI XFS filesystem data (blksz 4096, inosz 256, v2 dirs)

Если файловая система XFS, то изменение раздела делается так:

# xfs_growfs /oracle/
meta-data=/dev/mapper/centos-oracle isize=256 agcount=4, agsize=5120000 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0 finobt=0
data = bsize=4096 blocks=20480000, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal bsize=4096 blocks=10000, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 20480000 to 25722880

Иначе, если воспользоваться командой resize2fs, то получим ошибку:

# resize2fs /dev/mapper/centos-oracle
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/centos-oracle
Couldn’t find valid filesystem superblock.

Если же файловая система ext3 или ext4, то предыдущая команда выполнится без ошибок.