LVM Management
Create Volume from Disk
lsblk
lsblk -f
Create or format the device (WIPE ALL PREVIOUS DATA).
Update sdX to appropriate name.
sudo fdisk /dev/sdX
> Press 'g' to create gpt formated
> Press 'n' to create new partition
> Enter partition table information
> Enter 't' to select partition type
> Enter 'L' to see all types
> Select 'Linux LVM' id number i.e. '30'
> Enter 'p' to print partition table
> Press 'w' to save partition table
Create physical volume
sudo pvcreate /dev/sdX1
sudo pvdisplay
sudo vgcreate vg-data /dev/sdX1
Create logical volume
sudo lvcreate --name lv-data -l 100%FREE vg-data
sudo lvdisplay
Make filesystem
sudo mkfs.xfs /dev/vg-data/lv-data
# sudo mkfs.xfs -f /dev/vg-data/lv-data
sudo mkdir /appdata
sudo mount /dev/vg-data/lv-data /appdata
Mount storage device on startup
sudo vi /etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/vg-data/lv-data /appdata xfs defaults 0 2
sudo systemctl daemon-reload
Extend Volume from Disk
Create partition
Volume group
sudo vgs
sudo vgscan
Create or format the device
sudo fdisk /dev/sdY
> Press 'g' to create gpt formated
> Press 'n' to create new partition
> Enter partition table information
> Enter 't' to select partition type
> Enter 'L' to see all types
> Enter '30' for Linux LVM
> Enter 'p' to print partition table
> Press 'w' to save partition table
Create physical volume
sudo pvcreate /dev/sdY1
sudo pvdisplay
sudo vgextend vg-data /dev/sdY1
Logical volume
sudo lvs
sudo lvscan
Extend volume
sudo lvextend -l +100%FREE /dev/vg-data/lv-data
# sudo lvextend -L +5G /dev/vg-data/lv-data
Extend xfs partition
sudo xfs_growfs /dev/vg-data/lv-data
Extend ext4 partition
sudo resize2fs /dev/vg-data/lv-data
Cleanup
Backup data from mount point
/appdata/disk
Unmount volume
sudo umount /dev/vg-data/lv-data
Remove volume
sudo lvremove /dev/vg-data/lv-data