Pages

Categories

How to Extend Logical Volume in Redhat Linux using command line

One benefit of logical volumes is the ability to increase their size without experiencing downtime. Free physical extents in a volume group can be added to a logical volume to extend its capacity, which can be used to extend the file system it contains.

Extending logical volume

There are three steps needed to extend logical volume

Verify the volume group has space available.

vgdisplay is used to verify that there are sufficient physical extents available for use.

Check the free PE/Size in the output. It should report a value equal to or more than the additional space required. If there is insufficient space available then extend the volume group by at least the required space.

vgdisplay command

Extend the logical volume.

lvextend extends the logical volume to a new size. Add the LV device name as the last argument to the command.

lvextend -L +300 /dev/vg/cycle

This will increase the size of logical volume cycle by 300 MiB. Remember that the “+” in front of the size, which means add this value to the existing size; otherwise, the value defines the final, exact size of the LV.

Like lvcreate, there are multiple ways to specify the size. -l generally expects physical extent values, while -L expects size in bytes or larger named values, such as mebibytes and gigabytes.

lvextend -l +150: Add 150 extents to the current size of the logical volume.

lvextend -l 150M: Resize the logical volume to exactly 150 MiB.

lvextend -l +150: Add 150MiB to the current size of the logical volume.

lvextend -l +50%FREE: Add 50 percent of the current free space in the VG to the LV.

Extend the filesystem

xfs_ growfs /mountpoint expands the file system to occupy the extended till LV. xfs_ growfs Requires the file system be mounted while it is being Run; it can continue to be used during the reset operation.

A common mistake is to run every lvextend, but forgot to run xfs_growfs. An alternative to running the two steps consecutively is to include -r as an option with the lvextend command. This resize the file system after LV is extended.