Linux – Adding and extending LVM disk

Current config:

#df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_HOST-lv_root
                       50G   47G  554M  99% /
tmpfs                 1.9G   76K  1.9G   1% /dev/shm
/dev/sda1             477M   40M  412M   9% /boot
/dev/mapper/vg_HOST-lv_home
                      5.5G   12M  5.2G   1% /home

I have added 10 GB and want to extend the root drive

1. Rescan to find the new space (this will be different for different systems – first find out what SCSI devices you have) – in my case:

[root@HOST ~]# echo 1 > /sys/class/scsi_device/2\:0\:0\:0/device/rescan
[root@HOST ~]# echo 1 > /sys/class/scsi_device/3\:0\:0\:0/device/rescan

2. Use cfdisk to create new partition from the newly added space – type 8e

3. Run partprobe to detect the new partition (in my case it was /dev/sda3)

# partprobe -s
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (Device or resource busy).  As a result, it may not reflect all of your changes until after reboot.

#fdisk -l

Disk /dev/sda: 75.2 GB, 75161927680 bytes
255 heads, 63 sectors/track, 9137 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: 0x00024dad

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              64        7833    62401536   8e  Linux LVM
/dev/sda3            7833        9138    10485760   8e  Linux LVM

# vgextend vg_HOST /dev/sda3
  Device /dev/sda3 not found (or ignored by filtering).
  Unable to add physical volume '/dev/sda3' to volume group 'vg_HOST'.

4. because Partprobe failed I am unable to use vgextend and I don’t want to reboot that system – solution is to use partx command

# partx -l /dev/sda
# 1:      2048-  1026047 (  1024000 sectors,    524 MB)
# 2:   1026048-125829119 (124803072 sectors,  63899 MB)
# 3: 125829120-146800639 ( 20971520 sectors,  10737 MB)
# 4:         0-       -1 (        0 sectors,      0 MB)


# partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2

5. Extend volume group

# vgextend vg_HOST /dev/sda3
  Physical volume "/dev/sda3" successfully created
  Volume group "vg_HOST" successfully extended

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_HOST-lv_root
                       50G   47G  555M  99% /
tmpfs                 1.9G   80K  1.9G   1% /dev/shm
/dev/sda1             477M   40M  412M   9% /boot
/dev/mapper/vg_HOST-lv_home
                      5.5G   12M  5.2G   1% /home

6. Extend Logical volume

NOTE: to avoid errors – always use size that is bit smaller then the size we want – so instead 10G I use 9950M – googole it if you want to know why

# lvextend -L+9950M /dev/mapper/vg_HOST-lv_root
  Rounding size to boundary between physical extents: 9.72 GiB.
  Size of logical volume vg_HOST/lv_root changed from 50.00 GiB (12800 extents) to 59.72 GiB (15288 extents).
  Logical volume lv_root successfully resized.

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_HOST-lv_root
                       50G   47G  555M  99% /
tmpfs                 1.9G   80K  1.9G   1% /dev/shm
/dev/sda1             477M   40M  412M   9% /boot
/dev/mapper/vg_HOST-lv_home
                      5.5G   12M  5.2G   1% /home

7. Resize the disk

# resize2fs /dev/mapper/vg_HOST-lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/vg_HOST-lv_root is mounted on /; on-line resizing required
old desc_blocks = 4, new_desc_blocks = 4
Performing an on-line resize of /dev/mapper/vg_HOST-lv_root to 15654912 (4k) blocks.
The filesystem on /dev/mapper/vg_HOST-lv_root is now 15654912 blocks long.

[root@HOST ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_HOST-lv_root
                       59G   47G  9.7G  83% /
tmpfs                 1.9G   80K  1.9G   1% /dev/shm
/dev/sda1             477M   40M  412M   9% /boot
/dev/mapper/vg_HOST-lv_home
                      5.5G   12M  5.2G   1% /home

Leave a Reply

Your email address will not be published. Required fields are marked *

5 × four =

This site uses Akismet to reduce spam. Learn how your comment data is processed.