How to Use lvextend Command on Linux

lvextend Command on Linux

In the vast world of Linux, the Logical Volume Manager (LVM) stands as a cornerstone, offering a higher level of disk management flexibility. Among the many commands associated with LVM, lvextend plays a crucial role. This command allows users to extend the size of a logical volume, providing the ability to utilize disk space more efficiently. This article delves into the intricacies of the lvextend command, offering a comprehensive guide to understanding and effectively using it.

Understanding LVM and lvextend

LVM is a dynamic system of managing disk space. It introduces an abstraction layer that makes it easier to manage disk space, allowing users to resize disk partitions as per their needs. The LVM system comprises three main components: Physical Volumes (PV), Volume Groups (VG), and Logical Volumes (LV). Physical Volumes are the actual disks or partitions that provide the physical storage. Volume Groups are a pool of disk space formed by combining one or more Physical Volumes. Logical Volumes, created from the space available in a Volume Group, are the partitions on which the file system can be created. The lvextend command comes into play when you need to extend the size of a Logical Volume. This command allows you to add more space to a Logical Volume from the free space available in the Volume Group. This feature is particularly useful when a file system needs more space than initially allocated.

Pre-requisites for Using lvextend

Before diving into the usage of lvextend, it’s essential to prepare your system. First, check the disk usage of the file system using the df -h command. This command provides an overview of the disk usage in a human-readable format. Next, verify the free space available in the Volume Group using the vgs or vgdisplay command. This step ensures that there is enough space to extend the Logical Volume. Lastly, remember to back up your data. While lvextend is generally safe, it’s always prudent to have a backup in case of unexpected issues.

Step-by-step Guide to Using lvextend

Creating Physical Volumes

The first step in using lvextend is to create a Physical Volume. This can be done using the pvcreate command. For instance, to create a Physical Volume on a disk named /dev/sdb, you would use the following command:

pvcreate /dev/sdb

Creating or Extending a Volume Group

After creating the Physical Volume, the next step is to create or extend a Volume Group. The vgcreate command is used to create a new Volume Group. For example, to create a Volume Group named myvg using the Physical Volume /dev/sdb, you would use:

vgcreate myvg /dev/sdb

If you already have a Volume Group and want to extend it, you can use the vgextend command. For instance, to extend the Volume Group myvg with a new Physical Volume /dev/sdc, you would use:

vgextend myvg /dev/sdc

Extending the Logical Volume

Now that you have a Volume Group with enough free space, you can extend the Logical Volume using the lvextend command. For example, to extend a Logical Volume named mylv in the Volume Group myvg by 10GB, you would use:

lvextend -L +10G /dev/myvg/mylv

Verifying the New Size of the Logical Volume

After extending the Logical Volume, it’s important to verify the new size. You can do this using the lvs or lvdisplay command. For instance:

lvs /dev/myvg/mylv


lvdisplay /dev/myvg/mylv

Checking the Mounted File System Size

Finally, check the size of the mounted file system using the df -h command. This will show you the new size of the file system.

Examples of lvextend Usage

The lvextend command offers a variety of options for different scenarios. For instance, you can extend a Logical Volume to use all free space in the Volume Group with the -l +100%FREE option:

lvextend -l +100%FREE /dev/myvg/mylv

You can also extend a Logical Volume to a specific size with the -L option. For example, to extend a Logical Volume to 20GB, you would use:

lvextend -L 20G /dev/myvg/mylv

Troubleshooting Common Issues

While using lvextend, you might encounter some common issues. For instance, if you get an error saying “Insufficient free space”, it means there is not enough free space in the Volume Group. In this case, you need to add more Physical Volumes to the Volume Group or reduce the size of the extension. If the file system size doesn’t reflect the new size after extending the Logical Volume, you might need to resize the file system. You can do this using the resize2fs command:

resize2fs /dev/myvg/mylv


The lvextend command is a powerful tool in the Linux LVM system, providing the flexibility to manage disk space as per your needs. With a clear understanding and effective use of this command, you can ensure efficient disk space utilization. As with any tool, practice and exploration are key to mastery. So, don’t hesitate to experiment with lvextend and other LVM commands to enhance your Linux skills.


r00t is a seasoned Linux system administrator with a wealth of experience in the field. Known for his contributions to, r00t has authored numerous tutorials and guides, helping users navigate the complexities of Linux systems. His expertise spans across various Linux distributions, including Ubuntu, CentOS, and Debian. r00t's work is characterized by his ability to simplify complex concepts, making Linux more accessible to users of all skill levels. His dedication to the Linux community and his commitment to sharing knowledge makes him a respected figure in the field.
Back to top button