Monday, August 19

LVM (Logical Volume Manager) Concept on Linux RHEL / CentOS 5&6


                                 L.V.M(Logical Volume Manager)

LVM is a method of allocating harddrive space into logical volumes that can be easily resized instead of partitions.
With LVM the harddrive (or) set of harddrives are allocated to one or more physical volumes.

The physical volumes are combined into volume groups
Each volume group is divided into logical volumes which are assigned mountpoints such as /home and filesystem types such as ext3

To configure LVM
1)Create three LVM partitions
2)Convert them as physical volumes
3)Create volume groups from physical volumes
4)Create logical volumes from volume groups and assign mountpoints

#fdisk /dev/sda
<partition number>
:8e    (Linux LVM)
:w   (save & exit)
#partx -a /dev/sda (update kernel)

To convert LVM partitions as physical volumes
#pvcreate /dev/sda<partition numbers>
ex: pvcreate /dev/sda{9,10,11}

To view physical volumes

To create volume group
#vgcreate <vg name> <partitions>
ex: vgcreate bsrtech /dev/sda{9,10,11}

To view volume groups

To create a logical volume
#lvcreate -L <+size> <vg name> -n <LV name>
ex: lvcreate -L +300M /dev/bsrtech -n lv1

To view logical volumes

To format logical volumes
#mkfs.ext4 /dev/bsrtech/lv1

Create a mountpoint and mount logical volume on it
#mkdir /mysql
/dev/bsrtech/lv1   /mysql
#cd /mysql

To extend size of logical volume 
#umount <mountpoint>
#lvresize -L +<size> <lv name>
ex:lvresize -L +200M 
To make filesystem for extended size
#resize2fs <logical volume>
ex: resize2fs 
 #mount /dev/bsrtech/lv1  /mysql

To reduce a logical volume
note: whenever we are reducing an LVM we have to take backup (More Details #man lvreduce)
#mkdir  /lvm-bkp
#cp -rf /mysql/*  /lvm-bkp

#lvreduce -L <-size> <LVM>
ex: lvreduce -L -100M 
 To format LVM
#mkfs.ext4 <logical volume>
ex:mkfs.ext4 /dev/bsrtech/lv1

/dev/bsrtech/lv1  /mysql
#cp -rf /lvm-bkp/* /mysql

To remove an LVM
#umount <mountpoint>
#lvremove <logical volume>

 To extend volume group
1)create another LVM partition
2)convert into physical volume

#vgextend <vg name> <partition name>
ex:vgextend /dev/bsrtech  /dev/sda12

To reduce volume group
#vgreduce <vgname> <partition name>
ex:vgreduce /dev/bsrtech  /dev/sda12

To remove volume group
#vgremove <vg name>
ex:vgremove /dev/bsrtech

To delete physical volumes
#pvremove <partitions>
ex:pvremove /dev/sda{9,10,11,12}

No comments:

Post a Comment

:: Linux - Legends ::