Logical Volume extending

Growing Volumes

lvextend can grow logical volumes
resize2fs can grow EXT3 filesystems online
vgextend adds new physical volumes to an existing volume group.
Shrinking volumes
Filesystem must be reduced first
Requires a filesystem check and cannot be performed online
lvreduce can then reduce the volume.
Volume Groups can be reduced with:
pvmove /dev/hda3
vgreduce vg0 /dev/hda3

How to Extend the Logical Volume – Redhat Linux

Many Occasion we used to get the task for extending the existing File systems when we don’t have space in Volume Group. Let we can start from our High level plan. In the below example we are going to extend Fs LVOL1_mnt online on our hans-karri test server.

High Level Plan

Identify the newly added disk.
Ensured the full backup of File system and required configurations backups.
Initialize and Add the disk into Volume group.
Extend the Logical Volume.
Resize the Logical Volume.

Currently FS size is
[root@hans-karri /]# df -h /LVOL1_mnt
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg01-LVOL1 24M 1.2M 22M 5% /LVOL1_mnt
[root@hans-karri /]#

Checking host SCSI connection before scanning the disk.

[root@hans-karri /]# cat /proc/scsi/scsi

Attached devices:

Host: scsi1 Channel: 00 Id: 00 Lun: 00
 Vendor: NECVMWar Model: VMware IDE CDR10 Rev: 1.00
 Type: CD-ROM ANSI SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
 Vendor: VMware, Model: VMware Virtual S Rev: 1.0
 Type: Direct-Access ANSI SCSI revision: 02
Host: scsi5 Channel: 00 Id: 00 Lun: 00
 Vendor: OPNFILER Model: VIRTUAL-DISK Rev: 0
 Type: Direct-Access ANSI SCSI revision: 04
Host: scsi5 Channel: 00 Id: 00 Lun: 01
 Vendor: OPNFILER Model: VIRTUAL-DISK Rev: 0
 Type: Direct-Access ANSI SCSI revision: 04
Host: scsi5 Channel: 00 Id: 00 Lun: 02
 Vendor: OPNFILER Model: VIRTUAL-DISK Rev: 0
 Type: Direct-Access ANSI SCSI revision: 04
Host: scsi5 Channel: 00 Id: 00 Lun: 03
 Vendor: OPNFILER Model: VIRTUAL-DISK Rev: 0
 Type: Direct-Access ANSI SCSI revision: 04
[root@hans-karri /]#

According to the above output, Scanning the new disk on host5 (Host: scsi5)

[root@hans-karri ~]# echo "- - -" >/sys/class/scsi_host/host5/scan
[root@hans-karri ~]#
[root@hans-karri /]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d0e67
Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 549 4096000 82 Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3 549 2611 16567296 83 Linux
Disk /dev/mapper/vg01-LVOL1: 25 MB, 25165824 bytes
255 heads, 63 sectors/track, 3 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/sdb: 234 MB, 234881024 bytes
8 heads, 56 sectors/track, 1024 cylinders
Units = cylinders of 448 * 512 = 229376 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x8cb5a280
Device Boot Start End Blocks Id System
/dev/sdb1 1 100 22372 83 Linux

Disk /dev/sde: 234 MB, 234881024 bytes
8 heads, 56 sectors/track, 1024 cylinders
Units = cylinders of 448 * 512 = 229376 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x2d576e29

Device Boot Start End Blocks Id System
/dev/sde1 1 100 22372 83 Linux

Disk /dev/sdf: 234 MB, 234881024 bytes
8 heads, 56 sectors/track, 1024 cylinders
Units = cylinders of 448 * 512 = 229376 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
[root@hans-karri /]#

Found the new disk /dev/sdf and initializing

[root@hans-karri /]# pvcreate /dev/sdf
 Writing physical volume data to disk "/dev/sdf"
 Physical volume "/dev/sdf" successfully created
[root@hans-karri /]#
[root@hans-karri /]# pvs
 PV VG Fmt Attr PSize PFree
 /dev/sdd1 vg01 lvm2 a-- 20.00m 8.00m
 /dev/sde1 vg01 lvm2 a-- 20.00m 8.00m
 /dev/sdf lvm2 a-- 220.00m 220.00m
[root@hans-karri /]#

Extending VolumeGroup with physical Volume

[root@hans-karri /]# vgextend vg01 /dev/sdf
 Volume group "vg01" successfully extended
[root@hans-karri /]#
[root@hans-karri /]# pvs
 PV VG Fmt Attr PSize PFree
 /dev/sdd1 vg01 lvm2 a-- 20.00m 8.00m
 /dev/sde1 vg01 lvm2 a-- 20.00m 8.00m
 /dev/sdf vg01 lvm2 a-- 220.00m 220.00m
[root@hans-karri /]#

Extending Logical Volume

[root@hans-karri /]# lvextend -L +10M /dev/mapper/vg01-LVOL1
 Rounding size to boundary between physical extents: 12.00 MiB
 Extending logical volume LVOL1 to 36.00 MiB
 Logical volume LVOL1 successfully resized
[root@hans-karri /]#
[root@hans-karri /]# df -h /LVOL1_mnt
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg01-LVOL1 24M 1.2M 22M 5% /LVOL1_mnt
[root@hans-karri /]#

Still its showing the same size even after extending the logical Volume.Creating File system on extending space

[root@hans-karri /]# resize2fs /dev/mapper/vg01-LVOL1
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/vg01-LVOL1 is mounted on /LVOL1_mnt; on-line resizing required
old desc_blocks = 1, new_desc_blocks = 1
Performing an on-line resize of /dev/mapper/vg01-LVOL1 to 36864 (1k) blocks.
The filesystem on /dev/mapper/vg01-LVOL1 is now 36864 blocks long.
[root@hans-karri /]#
[root@hans-karri /]# df -h /LVOL1_mnt
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg01-LVOL1 36M 1.2M 33M 4% /LVOL1_mnt
[root@hans-karri /]#