Resizing ext3/4 on LVM
Check and prepare for resize
First, check the size of the file system to see if it needs expanding
[root@Linux01 ~]# pwd /TCPDumpLV [root@Linux01 TCPDumpLV]# df -kh . Filesystem Size Used Avail Use% Mounted on /dev/mapper/TCPDumpVolGRP-TCPDumpLV 3.1G 2.9G 69M 98% /TCPDumpLV
Note: The disk free command shows that we have 65MB available on our file system and that its 98% use. If we don't take action soon, we risk filling the file system.
Let's find out which Volume Group contains the Logical Volume that holds /dev/mapper/TCPDumpVolGRP-TCPDumpLV
[root@Linux01 ~]# lvdisplay /dev/TCPDumpVolGRP/TCPDumpLV --- Logical volume --- LV Name /dev/TCPDumpVolGRP/TCPDumpLV VG Name TCPDumpVolGRP LV UUID hYQs4t-YtY7-51hl-c4ps-4N6d-2W7h-IidcxF LV Write Access read/write LV Status available # open 1 LV Size 3.12 GB Current LE 100 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:5
Note: You can see the volume group for this file system is TCPDumpVolGRP
Let's find out if the volume group TCPDumpVolGRP has available free space to allocate to the logical volume
[root@Linux01 ~]# vgdisplay TCPDumpVolGRP --- Volume group --- VG Name TCPDumpVolGRP System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 5 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 3 Act PV 3 VG Size 11.91 GB PE Size 32.00 MB Total PE 381 Alloc PE / Size 228 / 7.12 GB Free PE / Size 153 / 4.78 GB VG UUID 9fWFIS-vDlg-xOW6-Xmb8-Tkrg-GPZw-ZnUZwh
Note: This volume group has plenty of free space. If we were out of physical extents, we would have to add additional physical volumes to this volume group before continuing on.
Resize the logical volume
We will now resize the logical volume TCPDumpLV by adding 3GB
[root@Linux01 TCPDumpLV]# lvresize -L +3GB /dev/TCPDumpVolGRP/TCPDumpLV Extending logical volume TCPDumpLV to 6.12 GB Logical volume TCPDumpLV successfully resized [root@Linux01 TCPDumpLV]#
Inspect the new size of the logical volume
[root@Linux01 ~]# lvdisplay /dev/TCPDumpVolGRP/TCPDumpLV --- Logical volume --- LV Name /dev/TCPDumpVolGRP/TCPDumpLV VG Name TCPDumpVolGRP LV UUID hYQs4t-YtY7-51hl-c4ps-4N6d-2W7h-IidcxF LV Write Access read/write LV Status available # open 1 LV Size 6.12 GB Current LE 196 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:5
[root@Linux01 ~]# pwd /TCPDumpLV [root@Linux01 TCPDumpLV]# df -kh . Filesystem Size Used Avail Use% Mounted on /dev/mapper/TCPDumpVolGRP-TCPDumpLV 3.1G 2.9G 69M 98% /TCPDumpLV
Note: You will notice that although we have increased the size of the logical volume, the size of the file system has been unaffected. We now need to resize the ext3 file system to utilize the remaining available space within the logical volume
[root@Linux01 TCPDumpLV]# resize2fs -p /dev/mapper/TCPDumpVolGRP-TCPDumpLV resize2fs 1.39 (29-May-2006) Filesystem at /dev/mapper/TCPDumpVolGRP-TCPDumpLV is mounted on /TCPDumpLV; on-line resizing required Performing an on-line resize of /dev/mapper/TCPDumpVolGRP-TCPDumpLV to 1605632 (4k) blocks. The filesystem on /dev/mapper/TCPDumpVolGRP-TCPDumpLV is now 1605632 blocks long.
[root@Linux01 TCPDumpLV]# df -kh . Filesystem Size Used Avail Use% Mounted on /dev/mapper/TCPDumpVolGRP-TCPDumpLV 6.1G 2.9G 2.9G 50% /TCPDumpLV
Resizing filesystems
Resize ext3 filesystem
resize2fs /dev/mapper/TCPDumpVolGRP-TCPDumpLV
Resize xfs filesystem
mount /dev/mapper/TCPDumpVolGRP-TCPDumpLV /mnt/target xfs_growfs -d /mnt/target