Conceito de LVM:
O LVM(Logical Volume Manager – Gerenciador de Volume Lógico) é um tipo de sistema de arquivos que consegue adicionar ou remover espaço do disco de amazenamento de forma simples.
Diferentemente do particionamento convencional, em que diretórios ocupam um tamanho fixo, no LVM os diretórios são volumes lógicos que podem ter seu tamanho aumentado ou diminuído conforme a demanda. Essa ideia também é válida para os discos de armazenamento: todos os discos são enxergados pelo sistema como um único grande disco. Por exemplo, um pendrive de 40Gb e Hd externo de 60GB serão vistos pelo sistema como um único dispositivo de 100GB.
Como não há distinção entre tipos de dispositivos de armazenamento(pendrive,HD, cartões SSD etc), o LVM categoriza cada dispositivo de armazenamento como um volume físico(Chamado de PV – Physical Volume). Os volumes físicos(PV) são formados por pequnas unidades do mesmo tamanho(PE- Physical Extend).
Para administrar todos os volumes físicos(PV), o grupo de volume é criado(VG- VOlume Group). Assim, um grupo de volume comporta os volumes físicos. Por exemplo, três volumes físicos(PV) são identificados dentro de um único grupo de volumes(VG).
O grupo de Volumes(VG) cria e divide as antigas partições como volumes lógicos(LV- Logical Volume). Assim os diretórios /etc,/home,/root,/bin são criados como volumes lógicos(LV). Os volumes lógicos são formados por pequenas unidades de mesmo tamanho(LE- Logical Extend).
O diretório /boot não deve ser incluido como volume lógico. Isso porque os bootloaders não reconhecem o diretório /boot dentro de um grupo de volume. Nunca formate esse diretório como LVM.
Caso acabe todo o espaço disponível no grupo de volume(VG), um novo dispositivo de armazenamento pode ser adicionado: o LVM classifica o dispositivo como volume físico(PV), inserindo-o dentro de um grupo de volume(VG), podendo ser usado pelos volumes lógicos(LV).

Então resumindo até aqui, um esquema LVM pode ser dividido em cinco elementos fundamentais:
- VG(Volume Group): Nível mais alto de abstração do LVM. Reúne a coleção de volumes lógicos(LV) e volumes físicos(PV) em uma unidade administrativa;
- PV(Physical Volume): Tipicamente um disco rígido, uma partição ou qualquer dispositivo de armazenamento da mesma natureza, como um dispositivo RAID;
- LV(Logical Volume): O Equivalente a uma partição de disco tradicional. Como o LV age como uma partição tradicional, pode conter um sistema de arquivos;
- PE(Physical Extend): Cada volume físico é dividido em pequenos “pedaços” de dados, conhecidos como PE. Possuem o mesmo tamanho do LE(Logical extend)
- LE(Logical Extend): Cada volume lógico é dividido em pequenos “pedaços” de dados conhecidos como LE. Seu tamanho é o mesmo para todos os volumes lógicos;
Existem três tipos de LVM:
- Linear: Nesse modelo, os dados fornecidos pelos volumes físicos são tratados de forma linear. Isso significa que por mais que se tenha 3 dispositivos no volume, ele só vai começar a utilizar o segundo quando o primeiro for ocupado completamente, assim como só usará o terceiro quando o segundo for ocupado completamente.
- Mirrored(espelhado): Nesse modelo, os dados são tratados de forma espelhada entre volumes físicos(PV). Ou seja, você tem dois dispositivos, os dados gravados no dispositivo A serão espelhados no dispositivo B. Claro que os dispositivos devem ter o mesmo tamanho.
- Striped(repartido): Nesse modelo, os dados são repartidos entre os volumes físicos(PV). Os dados são gravados de forma alternada entre os dispositivos.

Implementação:
Sistema Operacional:
O sistema qual vou realizar o experimento é um Debian 9.3, conforme o output abaixo:
root@dns-cacheonly:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.3 (stretch)
Release: 9.3
Codename: stretch
Partições Cobaias:
Eu adicionei 4 discos nesse servidor(é virtual, então foi só criar o volume e dar attach na vm), estão em negrito conforme o output abaixo:
root@dns-cacheonly:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 254:0 0 20G 0 disk
└─vda1 254:1 0 20G 0 part /
vdb 254:16 0 50G 0 disk
vdc 254:32 0 10G 0 disk
vdd 254:48 0 10G 0 disk
vde 254:64 0 10G 0 disk
No caso então serão utilizadas: vdb,vdc,vdd e vde.
Pacotes:
# apt install lvm2
SetUP:
VGSCAN
O primeiro passo é atualizar o cache do LVM e criar o arquivo /etc/lvm/lvm.conf básico. Isso é feito simplesmente rodando o comando vgscan.
root@dns-cacheonly:~# vgscan
Reading volume groups from cache.
FDISK
Apesar de ser possível utilizar um disco inteiro não particionado, é recomendável criar uma partição e só então iniciá-la. Se o disco utilizado não for antes particionado, outros sistemas operacional que tiveram acesso ao disco podem enxergar o disco como vazio e sobrescrever os dados nele.
O particionamento do disco pode ser feito com o próprioc omando fdisk. O id da partição deve ser o 8e
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden or c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt
9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi ea Rufus alignment
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs
f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ee GPT
10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/
11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC b
12 Compaq diagnost 5c Priam Edisk a9 NetBSD f1 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fb VMware VMFS
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fc VMware VMKCORE
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fd Linux raid auto
1c Hidden W95 FAT3 75 PC/IX bc Acronis FAT32 L fe LANstep
1e Hidden W95 FAT1 80 Old Minix be Solaris boot ff BBT
Conforme o output acima, o 8e representa uma partição do tipo Linux LVM.
Então vamos formatar os discos:
root@dns-cacheonly:~# fdisk /dev/vde
Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xac181efe.
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): [ HIT ENTER ]
First sector (2048-20971519, default 2048): [ HIT ENTER ]
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): [ HIT ENTER AGAIN ]
Created a new partition 1 of type 'Linux' and of size 10 GiB.
Command (m for help): t
Selected partition 1
Partition type (type L to list all types): 8e
Changed type of partition 'Linux' to 'Linux LVM'.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Depois de ter particionado todos os discos(vdb/vdc/vdd/vde), listei com o lsblk só pra ter certeza que estamos nos trilhos:
root@dns-cacheonly:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 254:0 0 20G 0 disk
└─vda1 254:1 0 20G 0 part /
vdb 254:16 0 50G 0 disk
└─vdb1 254:17 0 50G 0 part
vdc 254:32 0 10G 0 disk
└─vdc1 254:33 0 10G 0 part
vdd 254:48 0 10G 0 disk
└─vdd1 254:49 0 10G 0 part
vde 254:64 0 10G 0 disk
└─vde1 254:65 0 10G 0 part
Dá para ver que todos os discos citados estão com as devidas partições criadas.
PVCREATE
Agora vamos criar os PV, utlizando o comando pvcreate da seguinte forma:
root@dns-cacheonly:~# pvcreate /dev/vdb1
Physical volume "/dev/vdb1" successfully created.
root@dns-cacheonly:~# pvcreate /dev/vdc1
Physical volume "/dev/vdc1" successfully created.
root@dns-cacheonly:~# pvcreate /dev/vdd1
Physical volume "/dev/vdd1" successfully created.
root@dns-cacheonly:~# pvcreate /dev/vde1
Physical volume "/dev/vde1" successfully created.
VGCREATE
Agora é necessário criar o VG(Volume Group), é utilizado o comando vgcreate:
root@dns-cacheonly:~# vgcreate PseudoStorage /dev/vdb1 /dev/vdc1 /dev/vdd1 /dev/vde1
Volume group "PseudoStorage" successfully created
Outros argumentos interessantes para a criação de um VG:
- -s/–physicalextentsize -> Pode ser especificado um tamanho de PE(Physical Extend) diferente do padrão de 4MB com a opção -s.
- -t/–test -> Auto explicativo
- -v/–verbose -> Auto explicativo
- -l, –maxlogicalvolumes MaxLogicalVolumes -> Define o número máximo de volumes lógicos(LV) aceitos nesse volume group(VG).
Para mais informações, consulte o man
VGCHANGE
Por fim, é necessário ativar o novo grupo com o comando vgchange:
root@dns-cacheonly:~# vgchange -a y PseudoStorage
0 logical volume(s) in volume group "PseudoStorage" now active
VGDISPLAY
Para verificar o número total de PE disponíveis no grupo, utilize o comando vgdisplay:
root@dns-cacheonly:~# vgdisplay
--- Volume group ---
VG Name PseudoStorage
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 4
Act PV 4
VG Size 79,98 GiB
PE Size 4,00 MiB
Total PE 20476
Alloc PE / Size 0 / 0
Free PE / Size 20476 / 79,98 GiB
VG UUID rc50VJ-CFtH-rmOX-AW2J-8KYb-qvdE-TVrm4G
PVDISPLAY
Os volumes físicos(PV) podem ser consultados com o comando pvdisplay da seguinte forma:
root@dns-cacheonly:~# pvdisplay
--- Physical volume ---
PV Name /dev/vdb1
VG Name PseudoStorage
PV Size 50,00 GiB / not usable 3,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 12799
Free PE 12799
Allocated PE 0
PV UUID uUrHrh-7YBo-lwXf-kuCH-4iYl-Wvy9-CSWKyi
--- Physical volume ---
PV Name /dev/vdc1
VG Name PseudoStorage
PV Size 10,00 GiB / not usable 3,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 2559
Free PE 2559
Allocated PE 0
PV UUID bghSeG-ugh5-p1sB-pjpe-106i-DmF4-BfcKOW
--- Physical volume ---
PV Name /dev/vdd1
VG Name PseudoStorage
PV Size 10,00 GiB / not usable 3,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 2559
Free PE 2559
Allocated PE 0
PV UUID M7knBk-EerA-t2t8-Ieic-ZSO3-EoHP-KYjOER
--- Physical volume ---
PV Name /dev/vde1
VG Name PseudoStorage
PV Size 10,00 GiB / not usable 3,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 2559
Free PE 2559
Allocated PE 0
PV UUID xrN3We-Q6Pp-FvWR-VxcZ-1nFK-PUPd-VdxfSM
LVCREATE
A partir de agora podem ser criados os LV. Na hora de criar um volume lógico temos que ter em mente o tamanho máximo dos PE, que pode ser obtido com o comando vgdisplay, observe o campo do output do comando vgdisplay:
Free PE / Size 20476 / 79,98 GiB
Isso significa que podemos criar um volume de 79,98Gb ou vários volumes até somar 79,98Gb
Para criar os LV, utiliza-se o comando lvcreate. Nesse exemplo irei criar 2 volumes lógicos, o primeiro chamado de BlackOps e o segundo de WhiteOps. Posteriomente vou fazer uns testes de resize nesses volumes por questões didáticas. Então vamos ao terminal:
root@dns-cacheonly:~# lvcreate -L 10G -n BlackOps PseudoStorage
Logical volume "BlackOps" created.
root@dns-cacheonly:~# lvcreate -L 10G -n WhiteOps PseudoStorage
Logical volume "WhiteOps" created.
Alguns argumentos que podem ser utilizados:
- -L|–size LogicalVolumeSize[bBsSkKmMgGtTpPeE]} -> Define o tamanho do Volume medindo em bits/bytes/mega/etc.
- -l|–extents LogicalExtentsNumber[%{VG|PVS|FREE}] -> Também define o tamanho do Volume atráves do número de PE
- -n|–name LogicalVolumeName -> Define um nome pro volume. Caso não definido o valor assumido é “lvol0”
Depois da criação dos volumes é possível utilizar o mesmos que estão localizado em /dev/PseudoStorage/*
root@dns-cacheonly:~# ls -l /dev/PseudoStorage/
total 0
lrwxrwxrwx 1 root root 7 mar 4 02:06 BlackOps -> ../dm-0
lrwxrwxrwx 1 root root 7 mar 4 02:07 WhiteOps -> ../dm-1
Lembrando que os volumes criados não estão formatados, logo precisariam ser formatados para utilização, posteriormente poderiam ser montados e até mesmo incluidos no /etc/fstab.
Formatando os Volumes:
Para essa tarefa podemos utilizar o fdisk da seguinte forma:
root@dns-cacheonly:~# mkfs.ext4 /dev/PseudoStorage/BlackOps
mke2fs 1.43.4 (31-Jan-2017)
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: fd4f31c8-c5b0-4230-9b71-2c84f762aeee
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
root@dns-cacheonly:~# mkfs.ext4 /dev/PseudoStorage/WhiteOps
mke2fs 1.43.4 (31-Jan-2017)
Creating filesystem with 2621440 4k blocks and 655360 inodes
Filesystem UUID: b8e638ad-2acd-40e4-ba44-2258d48ecd61
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
Redimensionado os volumes
Para expandir ou diminuir um volume, podem ser utilizados os seguintes comandos:
- lvreduce
- lvresize
- lvextend
Antes de prosseguir, vamos utilizar o lvs para ter uma ídeia de como estão nossos volumes:
root@dns-cacheonly:~# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
BlackOps PseudoStorage -wi-a----- 10,00g
WhiteOps PseudoStorage -wi-a----- 10,00g
Agora vamos visualizar como está o VG para ter uma ideia de quanto podemos expandir nossos volumes utilizando o comando vgs:
root@dns-cacheonly:~# vgs
VG #PV #LV #SN Attr VSize VFree
PseudoStorage 4 2 0 wz--n- 79,98g 59,98g
Então com base no output do comando vgs podemos ver que temos 59,98G livres.
Vamos então expandir o volume BlackOps em 5G e o WhiteOps em 15G:
root@dns-cacheonly:~# lvextend -L+5G /dev/PseudoStorage/BlackOps
Size of logical volume PseudoStorage/BlackOps changed from 10,00 GiB (2560 extents) to 15,00 GiB (3840 extents).
Logical volume PseudoStorage/BlackOps successfully resized.
root@dns-cacheonly:~# lvextend -L+15G /dev/PseudoStorage/WhiteOps
Size of logical volume PseudoStorage/WhiteOps changed from 10,00 GiB (2560 extents) to 25,00 GiB (6400 extents).
Logical volume PseudoStorage/WhiteOps successfully resized.
Observação: Caso você não estipule o +, ele irá redimensionar, ou seja, se o comando para a expandir o BlackOps tivesse sido sem +, ele teria passado de 10G para 5G pois entederia que eu estou redimensionando para 5G ao invez de adicionando 5G.
Novamente vamos verificar com o vgs quanto espaço livre nós temos:
root@dns-cacheonly:~# vgs
VG #PV #LV #SN Attr VSize VFree
PseudoStorage 4 2 0 wz--n- 79,98g 39,98g
E agora com o lvs para verificar os volumes:
root@dns-cacheonly:~# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
BlackOps PseudoStorage -wi-a----- 15,00g
WhiteOps PseudoStorage -wi-a----- 25,00g
Contudo, depois de ter expandido o volume ainda será necessário expandir o filesystem daquele volume, para isso é utilizado o comando resize2fs da seguinte forma:
root@dns-cacheonly:~# resize2fs /dev/PseudoStorage/BlackOps
resize2fs 1.43.4 (31-Jan-2017)
Resizing the filesystem on /dev/PseudoStorage/BlackOps to 3932160 (4k) blocks.
The filesystem on /dev/PseudoStorage/BlackOps is now 3932160 (4k) blocks long.
root@dns-cacheonly:~# resize2fs /dev/PseudoStorage/WhiteOps
resize2fs 1.43.4 (31-Jan-2017)
Resizing the filesystem on /dev/PseudoStorage/WhiteOps to 6553600 (4k) blocks.
The filesystem on /dev/PseudoStorage/WhiteOps is now 6553600 (4k) blocks long.
Agora sim ein!
Expandindo o VG
Por ultimo, vamos supor que por algum motivo alien o seu VG ocupou todo o espaço disponível e você precise de mais(MOREMOREMOREMROE), para isso é necessário seguir os seguintes passos já abordados nesse paper:
- Adicionar o disco no sistema, obviamente
- Criar o PV respectivo do disco
- Adicionar o PV ao VG
Eu adicionei mais um disco no volume: /dev/vdf
Vamos então formatar com o fdisk:
root@dns-cacheonly:~# fdisk /dev/vdf
Welcome to fdisk (util-linux 2.29.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x8719b339.
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-10485759, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-10485759, default 10485759):
Created a new partition 1 of type 'Linux' and of size 5 GiB.
Command (m for help): t
Selected partition 1
Partition type (type L to list all types): 8e
Changed type of partition 'Linux' to 'Linux LVM'.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Agora vamos criar o PV da partição formatada com ID 8e:
root@dns-cacheonly:~# pvcreate /dev/vdf1
Physical volume "/dev/vdf1" successfully created.
Vamos verificar o tamanho do VG atual antes de adicionarmos o PV nele:
root@dns-cacheonly:~# vgdisplay
--- Volume group ---
VG Name PseudoStorage
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 0
Max PV 0
Cur PV 4
Act PV 4
VG Size 79,98 GiB
PE Size 4,00 MiB
Total PE 20476
Alloc PE / Size 10240 / 40,00 GiB
Free PE / Size 10236 / 39,98 GiB
VG UUID rc50VJ-CFtH-rmOX-AW2J-8KYb-qvdE-TVrm4G
Então temos ai 79,98GiB.
Agora vamos usar o vgextend para expandir o volume.
root@dns-cacheonly:~# vgextend PseudoStorage /dev/vdf1
Volume group "PseudoStorage" successfully extended
E novamente vamos visualizar o VG:
root@dns-cacheonly:~# vgdisplay
--- Volume group ---
VG Name PseudoStorage
System ID
Format lvm2
Metadata Areas 5
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 0
Max PV 0
Cur PV 5
Act PV 5
VG Size 84,98 GiB
PE Size 4,00 MiB
Total PE 21755
Alloc PE / Size 10240 / 40,00 GiB
Free PE / Size 11515 / 44,98 GiB
VG UUID rc50VJ-CFtH-rmOX-AW2J-8KYb-qvdE-TVrm4G
Então o VG foi expandido com sucesso!
SnapShot
Criar snapshots é uma funcionalidade bastante útil e utilizada do LVM. Um “snapshot” é uma imagem do volume lógico, virtual, onde o LVM pára o tempo do volume, deixando-o intacto para trabalhar enquanto o volume lógico “real” continua trabalhando e sendo modificado. Em outras palavras, quando se faz um LVM Snapshot, o LVM duplica o volume lógico e “congela” a duplicata.
Antes de começar, vamos entender como um snapshot funciona. Quando você pede para o LVM criar um snapshot, você vai especificar um certo tamanho para este snapshot e neste caso, você precisa se certificar de que existam PEs livres para este tamanho. Então supondo que criamos um snapshot de 100MB do volume lógico WhiteOps, o que significa? O LVM irá criar uma duplicata do WhiteOps, com o conteúdo exato do WhiteOps na hora da criação e sem mudanças posteriores. O espaço de 100MB necessários para o snapshot será utilizado para as posteriores gravações. Então enquanto você analiza e faz backup da duplicata, o LVM vai continuando a escrever as mudanças dos arquivos neste espaço de 100MB, que serve como um buffer. Se as mudanças acumularem e se tornarem maiores que 100MB, o snapshot se torna inválido.
Para criar o snapshot utiliza-se o lvcreate com a opção -s:
root@dns-cacheonly:/home/debian# lvcreate -s -L 100M -n WhiteOps_Snap /dev/PseudoStorage/WhiteOps
Using default stripesize 64,00 KiB.
Logical volume "WhiteOps_Snap" created.
Posteriormente o SnapShot ter sido criado, agora basta apenas montá-lo como qualquer outro volume e realizar o backup:
mount /dev/PseudoStorage/WhiteOps_Snap /mnt
O Backup pode ser feito da forma que você achar melhor, posteriormente basta desmontar o volume e remover o snapshot utilizando o lvremove:
root@dns-cacheonly:/home/debian# umount /mnt
root@dns-cacheonly:/home/debian# lvremove /dev/PseudoStorage/WhiteOps_Snap
Do you really want to remove active logical volume PseudoStorage/WhiteOps_Snap? [y/n]: y
Logical volume "WhiteOps_Snap" successfully removed
Conclusão:
O LVM é muito poderoso e deve ser utilizado nos servidores. Acredito que é trivial que se tenha uma maior flexibilidade em manutenção em partições, discos e dimensionamento em geral em relação à partição.
Fontes:
Certificação Linux LPIC-1
Certificação LPI-2
https://serverfault.com/questions/319427/how-to-remove-bad-disk-from-lvm2-with-the-less-data-loss-on-other-pvs
http://www.microhowto.info/howto/increase_the_size_of_an_lvm_logical_volume.html
https://www.tecmint.com/logical-volume-management-on-debian-linux/2/
https://www.howtogeek.com/howto/40702/how-to-manage-and-use-lvm-logical-volume-management-in-ubuntu/
http://www.devin.com.br/lvm/
