Como dito anteriormente, o LVM é uma camada de abstração entre o seu sistema operacional e os discos rígidos físicos. O que isso significa é que seus discos rígidos físicos e partições não estão mais presos aos discos rígidos e partições em que eles residem. Em vez disso, os discos rígidos e as partições que seu sistema operacional vê podem ser qualquer número de discos rígidos separados reunidos em conjunto ou em um RAID de software.
Para gerenciar o LVM, existem ferramentas de GUI disponíveis, mas para realmente entender o que está acontecendo com a sua configuração de LVM, provavelmente é melhor saber quais são as ferramentas de linha de comando. Isso será especialmente útil se você estiver gerenciando o LVM em um servidor ou distribuição que não ofereça ferramentas GUI.
A maioria dos comandos no LVM são muito semelhantes entre si. Cada comando válido é precedido por um dos seguintes:
- Volume Físico = pv
- Grupo de Volume = vg
- Volume Lógico = lv
Os comandos de volume físico são para adicionar ou remover discos rígidos em grupos de volumes. Os comandos do grupo de volumes são para alterar o conjunto abstraído de partições físicas que são apresentadas ao seu funcionamento em volumes lógicos. Os comandos de volume lógico apresentarão os grupos de volumes como partições para que o sistema operacional possa usar o espaço designado.
Cheat sheet para download do LVM
Para ajudar você a entender quais comandos estão disponíveis para cada prefixo, fizemos uma folha de dicas do LVM. Vamos abordar alguns dos comandos deste artigo, mas ainda há muita coisa que você pode fazer que não será abordada aqui.
Todos os comandos nesta lista precisarão ser executados como root porque você está alterando as configurações do sistema que afetarão a máquina inteira.
Como exibir informações atuais do LVM
A primeira coisa que você precisa fazer é verificar como seu LVM está configurado. o
s
e
display
os comandos funcionam com volumes físicos (pv), grupos de volumes (vg) e volumes lógicos (lv), por isso é um bom local para iniciar ao tentar descobrir as configurações atuais.
o
display
comando irá formatar as informações para que seja mais fácil de entender do que
s
comando. Para cada comando, você verá o nome e o caminho do pv / vg e também deverá fornecer informações sobre o espaço livre e usado.
Criando um Volume Lógico
Volumes lógicos são as partições que seu sistema operacional usa no LVM. Para criar um volume lógico, primeiro precisamos ter um volume físico e um grupo de volumes. Aqui estão todos os passos necessários para criar um novo volume lógico.
Criar volume físico
Vamos começar do zero com um novo disco rígido sem partições ou informações sobre ele. Comece encontrando com qual disco você estará trabalhando. (/ dev / sda, sdb, etc.)
Nota: Lembre-se de que todos os comandos precisarão ser executados como root ou adicionando "sudo" ao início do comando.
fdisk -l
Se o seu disco rígido nunca foi formatado ou particionado antes você provavelmente verá algo assim na saída do fdisk. Isso é completamente bom porque vamos criar as partições necessárias nas próximas etapas.
Há uma infinidade de ferramentas que podem criar uma nova partição com uma GUI, incluindo o Gparted, mas como já temos o terminal aberto, usaremos o fdisk para criar a partição necessária.
De um terminal, digite os seguintes comandos:
fdisk /dev/sdb
Isto irá colocá-lo em um prompt especial do fdisk.
Aviso: as etapas a seguir irão formatar seu disco rígido. Verifique se você não tem informações sobre este disco rígido antes de seguir estas etapas.
-
n
= criar nova partição
-
p
= cria partição primária
-
1
= torna a partição a primeira no disco
Pressione enter duas vezes para aceitar o primeiro cilindro e o último cilindro padrão.
-
t
= alterar o tipo de partição
-
8e
= alterações no tipo de partição LVM
-
p
= visualizar a configuração da partição para que possamos revisar antes de gravar as alterações no disco
-
w
= gravar alterações no disco
Entrar
pvcreate /dev/sdb1
para criar um volume físico LVM na partição que acabamos de criar.
Você pode estar se perguntando por que não formatamos a partição com um sistema de arquivos, mas não se preocupe, essa etapa vem depois.
Criar grupo de volumes
Agora que temos uma partição designada e um volume físico criado, precisamos criar o grupo de volumes. Felizmente isso só leva um comando.
vgcreate vgpool /dev/sdb1
Criar volume lógico
Para criar o volume lógico que o LVM usará:
lvcreate -L 3G -n lvstuff vgpool
O comando -L designa o tamanho do volume lógico, neste caso, 3 GB, e o comando -n nomeia o volume. O vgpool é referenciado para que o comando lvcreate saiba de qual volume obter o espaço.
Formatar e montar o volume lógico
Uma etapa final é formatar o novo volume lógico com um sistema de arquivos. Se você quiser ajudar a escolher um sistema de arquivos Linux, leia nosso como isso pode ajudá-lo a escolher o melhor sistema de arquivos para suas necessidades.
mkfs -t ext3 /dev/vgpool/lvstuff
mkdir /mnt/stuff
mount -t ext3 /dev/vgpool/lvstuff /mnt/stuff
Redimensionando um volume lógico
Um dos benefícios dos volumes lógicos é que você pode tornar seus compartilhamentos fisicamente maiores ou menores sem ter que mover tudo para um disco rígido maior. Em vez disso, você pode adicionar um novo disco rígido e estender seu grupo de volumes imediatamente. Ou, se você tiver um disco rígido que não é usado, poderá removê-lo do grupo de volumes para reduzir seu volume lógico.
Existem três ferramentas básicas para tornar volumes físicos, grupos de volumes e volumes lógicos maiores ou menores.
Nota: Cada um desses comandos precisará ser precedido por pv, vg ou lv, dependendo do que você está trabalhando.
-
resize
- pode reduzir ou expandir volumes físicos e volumes lógicos, mas não grupos de volumes
-
extend
- pode fazer grupos de volumes e volumes lógicos maiores, mas não menores
-
reduce
- pode fazer grupos de volumes e volumes lógicos menores, mas não maiores
Vamos analisar um exemplo de como adicionar um novo disco rígido ao volume lógico "lvstuff" que acabamos de criar.
Instalar e formatar novo disco rígido
Para instalar um novo disco rígido, siga as etapas acima para criar uma nova partição e adicionar o tipo de partição ao LVM (8e). Em seguida, use o pvcreate para criar um volume físico que o LVM possa reconhecer.
Adicionar novo disco rígido ao grupo de volume
Para adicionar o novo disco rígido a um grupo de volumes, você só precisa saber qual é a sua nova partição, / dev / sdc1 no nosso caso, e o nome do grupo de volumes ao qual você deseja adicioná-la.
Isso adicionará o novo volume físico ao grupo de volumes existente.
vgextend vgpool /dev/sdc1
Estenda o volume lógico
Para redimensionar o volume lógico, precisamos dizer quanto queremos ampliar por tamanho em vez de por dispositivo. No nosso exemplo, adicionamos um disco rígido de 8 GB ao nosso vgpool de 3 GB. Para tornar esse espaço utilizável, podemos usar lvextend ou lvresize.
lvextend -L8G /dev/vgpool/lvstuff
lvextend -L+3G /dev/vgpool/lvstuff
Estender o sistema de arquivos
O volume lógico é de 11 GB, mas o sistema de arquivos nesse volume ainda é de apenas 3 GB. Para fazer com que o sistema de arquivos use os 11 GB disponíveis, você deve usar o comando resize2fs. Apenas aponte resize2fs para o volume lógico de 11 GB e ele fará a mágica para você.
resize2fs /dev/vgpool/lvstuff
Nota: Se você estiver usando um sistema de arquivos diferente do ext3 / 4, consulte suas ferramentas de redimensionamento de sistemas de arquivos.
Diminuir o Volume Lógico
Se você quiser remover um disco rígido de um grupo de volumes, precisará seguir as etapas acima na ordem inversa e usar lvreduce e vgreduce.
- redimensionar o sistema de arquivos (lembre-se de mover os arquivos para uma área segura do disco rígido antes de redimensionar)
- reduzir o volume lógico (em vez de + para estender você também pode usar - para reduzir por tamanho)
- remova o disco rígido do grupo de volume com vgreduce
Fazendo backup de um volume lógico
Snapshots é um recurso que alguns sistemas de arquivos avançados mais recentes vêm com, mas ext3 / 4 não tem a capacidade de fazer snapshots em tempo real. Uma das coisas mais legais sobre os instantâneos do LVM é que o sistema de arquivos nunca fica offline e você pode ter quantos desejar sem ocupar espaço extra no disco rígido.
Para criar um instantâneo, precisamos criar um novo volume lógico com espaço livre suficiente para armazenar qualquer nova informação que será gravada no volume lógico enquanto fazemos um backup. Se a unidade não estiver sendo ativamente gravada, você poderá usar uma quantidade muito pequena de armazenamento. Quando terminarmos o backup, basta remover o volume lógico temporário e o volume lógico original continuará normalmente.
Criar novo instantâneo
Para criar um instantâneo de lvstuff, use o comando lvcreate como antes, mas use o sinalizador -s.
lvcreate -L512M -s -n lvstuffbackup /dev/vgpool/lvstuff
Monte o novo instantâneo
Assim como antes, precisamos criar um ponto de montagem e montar o novo instantâneo para que possamos copiar arquivos dele.
mkdir /mnt/lvstuffbackup
mount /dev/vgpool/lvstuffbackup /mnt/lvstuffbackup
Copiar Instantâneo e Excluir Volume Lógico
Tudo o que você tem a fazer é copiar todos os arquivos de / mnt / lvstuffbackup / para um disco rígido externo ou colocá-los em um arquivo.
Nota: tar -c criará um arquivo e -f dirá o local e o nome do arquivo. Para obter ajuda com o uso do comando tar
man tar
no terminal.
tar -cf /home/rothgar/Backup/lvstuff-ss /mnt/lvstuffbackup/
Quando o backup terminar, desmonte o volume e remova o instantâneo temporário.
umount /mnt/lvstuffbackup lvremove /dev/vgpool/lvstuffbackup/
Excluindo um volume lógico
Para excluir um volume lógico, primeiro é necessário certificar-se de que o volume esteja desmontado e, em seguida, você pode usar lvremove para excluí-lo.Você também pode remover um grupo de volumes depois que os volumes lógicos forem excluídos e um volume físico após o grupo de volumes ser excluído.
Aqui estão todos os comandos usando os volumes e grupos que criamos.
umount /mnt/lvstuff lvremove /dev/vgpool/lvstuff vgremove vgpool pvremove /dev/sdb1 /dev/sdc1