Gentoo Logo

Aviso : Este documento não é válido e não é mais mantido.


Instalação do Gentoo LVM2

Conteúdo:

1.  Introdução

Este guia é baseado em um exemplo com dois HD's IDE. Significa que você necessitará mais do que provavelmente trocar os drivers, nomes de partições e o tamanho das partições para acertar sua própria instalação à sua necessidade.

Aviso: Este documento não tem a intenção de ser um tutorial de LVM2. Ele serve como um suplemento para os procedimentos de instalação do Gentoo como descrito no Manual do Gentoo, Parte 1. Tenha certeza de ler o Manual de Instalação do Gentoo antes de iniciar o processo de instalação.

Nota: Para um guia completo sobre LVM aponte seu navegador para http://tldp.org/HOWTO/LVM-HOWTO

Requerimentos iniciais

Se você vai instalar LVM2 em um sistema já pronto com sobra de espaço no disco rígido, você precisa de um LiveCD com suporte à LVM2. Você pode procurar o Live CD para uma arquitetura x86 em nossos servidores no diretório /releases/x86/2004.3/livecd. Outras arquiteturas também podem estar disponíveis. Você precisa habilitar o módulo LVM2 (dm-mod). Este módulo está disponível no gentoo-sources e no vanilla-sources. O modo de compilar seu kernel e fazer o LVM2 funcionar será descrito mais adiante neste guia.

Nem todos os kernels da linha 2.4 fornecidos pelo Gentoo possuem suporte ao LVM2!

Aviso: O LVM2 disponível nos CDs de instalação 2005.0 está erroneamente ligado dinamicamente contra uma biblioteca (libgpm) que reside em /usr. Isto significa que você não pode ter sua /usr em um ambiente LVM também. Ou instale a última versão ou a versão 2.0.33 (não a -r1) que são construídas estaticamente.

Partições

Nosso sistema exemplo possui dois discos rígidos IDE e será particionado como segue:

  • /dev/hda1 -- /boot
  • /dev/hda2 -- (swap)
  • /dev/hda3 -- /
  • /dev/hda4 -- Será usado pelo LVM2
  • /dev/hdb1 -- Será usado pelo LVM2

Importante: Preste atenção aos nomes das partições, é muito fácil confundir os a's e b's, bem como os números das partições. Um movimento em falso e você poderá remover uma partição errada. Você foi avisado!

Ok, é hora de começar...

2.  Instalação

Siga o manual, mas com o seguinte adendo ao capítulo 4. Preparando os Discos:

Use fdisk como descrito no manual, mas use o esquema de partições mencionado acima como um exemplo. Isto é somente um exemplo, adapte-o para suas necessidades.

Crie uma pequena partição física /boot (hda1). Neste exemplo, /boot não será gerenciado pelo LVM2. Esta partição irá conter seu gerenciador de inicialização e seu kernel. Uma partição de 64MB deverá ser suficiente para acomodar um pequeno kernel gerado.

Crie a partição swap (hda2) e ative-a.

Listagem de código 2.1: Ativando a partição swap

# mkswap /dev/hda2
# swapon /dev/hda2

Crie uma partição / (root) (hda3). Se for interessante para você, tente colocar sua partição root sob o gerenciamento do LVM (mas não recomendamos), veja na seção fontes no final deste guia um link para um mini-howto para saber como fazê-lo. O tamanho de sua partição root não precisa ser tão grande se você deixar /opt, /usr, /home, /var e /tmp em um Grupo de Volume (vg). Neste caso, 150 Mb é suficiente.

Nota: Não é recomendado colocar os seguintes diretórios como partições LVM2: /etc, /lib, /mnt, /proc, /sbin, /dev, e /root. Desta maneira, você ainda pode registrar em seu sistema de log (meio capenga, mas ainda usável como root) se algo desse terrivelmente errado.

Assumindo que as partições /boot, swap e root não utilizam todo o espaço do disco, crie uma quarta partição neste disco e selecione o tipo como 8e (Linux LVM). Se você possui mais discos rígidos, você deve particioná-lo como LVM, crie uma partição em cada e selecione o mesmo tipo (8e).

Nota: Considerando o grande tamanho dos discos atuais, você pode considerar particionar seu disco rídigo em pequenas partições ao invéz de criar uma partição grande que será adicionada ao grupo de volume LVM2 em um bloco. Com o LVM2 torna-se fácil extender seus volumes após tudo. Isto deixa-lhe com algumas partições não alocadas, pois você pode precisar usar partições de fora do grupo LVM2. Resumindo, não use todo o espaço de seus discos até que você realmente necessite dele, como exemplo um colaborador dividiu seu disco de 160 Gb em 8 partições de 20 Gb cada.

Carregando o módulo LVM2dm-mod.

Listagem de código 2.2: Carregando o módulo LVM2

# modprobe dm-mod

Varrendo e ativando LVM:

Listagem de código 2.3: Activating LVM

(Evite varrer seu cdrom)
# mkdir -p /etc/lvm
# echo 'devices { filter=["r/cdrom/"] }' >/etc/lvm/lvm.conf
# vgscan
  Reading all physical volumes.  This may take a while...
  No volume groups found
(Faça, previamente, qualquer ajuste nos Grupos de Volumes disponíveis)
# vgchange -a y

Prepare as partições.

Listagem de código 2.4: Preparando as partições

# pvcreate /dev/hda4 /dev/hdb1
  No physical volume label read from /dev/hda4
  Physical volume "/dev/hda4" successfully created
  No physical volume label read from /dev/hdb1
  Physical volume "/dev/hdb1" successfully created

Ajuste um grupo de volume. Um grupo de volume é o resultado de combinar diversas unidades físicas em um único dispositivo lógico.

Em nosso exemplo, /dev/hda1, /dev/hda2 e /dev/hda3 que são as partições /boot, swap e root, precisamos combinar /dev/hda4 e /dev/hdb1. Isto pode ser realizado com um único comando, mas, como exemplo, iremos criar nosso Grupo de Volume e extendê-lo.

Listagem de código 2.5: Criando e extendendo um Grupo de Volume

(Crie um grupo de volume chamado vg)
# vgcreate vg /dev/hda4
  /etc/lvm/backup: fsync failed: Invalid argument (Ignore este aviso)
  Volume group "vg" successfully created
(Extendendo um grupo de volume existente)
# vgextend vg /dev/hdb1
  /etc/lvm/backup: fsync failed: Invalid argument (Ignore este aviso novamente e depois também)
  Volume group "vg" successfully extended

Crie os volumes lógicos. Volumes Lógicos são equivalentes as partições que criaremos usando o fdisk em nosso ambiente LVM2. Em nosso exemplo, criaremos as seguintes partições:

Diretório Tamanho
/usr 10 GB
/home 5 GB
/opt 5 GB
/var 10 GB
/tmp 2 GB

Desde que estamos usando LVM2, não precisamos nos preocupar muito com o tamanho das partições, pois elas podem ser expandidas sempre que necessário.

Nota: Como Terje Kveres comentou, é mais simples aumentar o tamanho de uma partição do que tentar encolhê-la. Conseqüentemente você pode começar com pequenas partições e aumentá-las conforme suas necessidades.

Listagem de código 2.6: Criando e extendendo volumes lógicos

# lvcreate -L10G -nusr  vg
  Logical volume "usr" created (Adiante mensagens similares e outras não exibidas)
# lvcreate -L5G  -nhome vg
# lvcreate -L5G  -nopt  vg
# lvcreate -L10G -nvar  vg
# lvcreate -L2G  -ntmp  vg
(Como um exemplo, vamos extender um volume lógico com 5 Gbytes extras)
# lvextend -L+5G /dev/vg/home

Crie o sistema de arquivos nos volumes lógicos, exatamente da mesma forma como você faria em uma partição normal. Nós usamos ext3 nos volumes lógicos mas qualquer sistema de arquivos que você escolher irá funcionar:

Listagem de código 2.7: Criando o sistema de arquivos

# mke2fs -j /dev/vg/usr
# mke2fs -j /dev/vg/home
# mke2fs -j /dev/vg/opt
# mke2fs -j /dev/vg/var
# mke2fs -j /dev/vg/tmp

Monte suas partições como descrito no manual e monte seus volumes lógicos LVM2 como se eles fossem partições normais. Substitua o comum /dev/hdxx por /dev/vg/logical_volumename.

Listagem de código 2.8: Montando seus volumes lógicos

(Tenha certeza de que sua partição raiz (root) está montada como descrito no manual primeiro)
# mkdir /mnt/gentoo/usr
# mount /dev/vg/usr /mnt/gentoo/usr
# mkdir /mnt/gentoo/home
# mount /dev/vg/home /mnt/gentoo/home
# mkdir /mnt/gentoo/opt
# mount /dev/vg/opt /mnt/gentoo/opt
# mkdir /mnt/gentoo/var
# mount /dev/vg/var /mnt/gentoo/var
# mkdir /mnt/gentoo/tmp
# mount /dev/vg/tmp /mnt/gentoo/tmp

Nota: O resto da instalação segue inalterada como está no manual por isso não iremos descrever novamente exceto pelos pontos divergentes.

Quando configurar seu kernel, tenha certeza de configurá-lo para suporte LVM2 (nem todos os kernels 2.4 possuem suporte). Selecione o modulo LVM2 como segue:

Listagem de código 2.9: Selecionando o módulo LVM2 em kernels 2.4.x

Multi-device support (RAID and LVM)  --->
  [*] Multiple devices driver support (RAID and LVM)
  < >  RAID support
(Note que LVM não está selecionado, este era para LVM1)
  < >  Logical volume manager (LVM) support
  <M>  Device-mapper support
  < >   Mirror (RAID-1) support

Listagem de código 2.10: Selecionando o módulo LVM2 em kernels 2.6.x

Device Drivers  --->
 Multi-device support (RAID and LVM)  --->
   [*] Multiple devices driver support (RAID and LVM)
   < >   RAID support
   <M>   Device mapper support

O módulo compilado chama-se dm-mod.ko

Depois de criar seu kernel e instalar os módulos, adicione a seguinte linha em seu /etc/modules.autoload.d/kernel-{KV} onde {KV} representa a versão do seu kernel (2.4 or 2.6) de modo que o módulo LVM2 inicie quando sua máquina for iniciada:

Listagem de código 2.11: Adicionando o módulo LVM2 no /etc/modules.autoload.d/kernel-2.6

# nano -w /etc/modules.autoload.d/kernel-2.6
(Adicione a seguinte linha)
dm-mod

Agora, instale o pacote lvm2.

Importante: Tenha certeza de que seu link /usr/src/linux aponta para o diretório dos fontes do kernel que você está utilizando, porque o ebuild do lvm2 depende do device-mapper, o ebuild verificará a presença de uma linha como esta abaixo, em seus fontes do kernel no diretório /usr/src/linux/include/linux.

Listagem de código 2.12: Emerging the LVM2 package

# emerge lvm2
(Até o momento da transcrição, a versão estável é 2.00.08.)
com a versão 2.00.08, impeça que o lvm2 sonde seu cdrom fazendo:
# echo 'devices { filter=["r/cdrom/"] }' >> /etc/lvm/lvm.conf

(Versões 2.00.15 e posteriores vem com um /etc/lvm/lvm.conf
Edit seu /etc/lvm/lvm.conf e siga os comentários
# nano -w /etc/lvm/lvm.conf

Quando editar seu arquivo /etc/fstab, siga o handbook e adicione seu volumes lógicos LVM2 como necessitar. Novamente, aqui estão algumas poucas necessárias para nosso exemplo:

Listagem de código 2.13: Escrevendo o /etc/fstab

/dev/hda1     /boot   ext3    noauto,noatime 1 1
/dev/hda2     none    swap    sw             0 0
/dev/hda3     /       ext3    noatime        0 0
# Logical volumes
/dev/vg/usr   /usr    ext3    noatime        0 0
/dev/vg/home  /home   ext3    noatime        0 0
/dev/vg/opt   /opt    ext3    noatime        0 0
/dev/vg/var   /var    ext3    noatime        0 0
/dev/vg/tmp   /tmp    ext3    noatime        0 0

Quando você chegar ao final da instalação pelo manual, não esqueça de desmontar todos os volumes lógicos, para um bom funcionamento rode o seguinte comando antes de reiniciar o sistema:

Listagem de código 2.14: Desligando LVM2

# vgchange -a n

Reinicie seu computador e todas as partições devem estar visíveis e montadas.

3.  Fontes

4.  Agradecimentos

Obrigado a Thilo Bangert e Terje Kvernes por seus comentários e ajuda neste documento.



Imprimir

Atualizado 25 de abril de 2005

A versão original desta tradução não é mais mantida

Resumo: Este guia descreve como instalar o Gentoo usando o Gerenciador de Volumes Lógicos versão 2. (LVM2)

Avi Schwartz
Autor

Rajiv Manglani
Colaborador

Xavier Neys
Editor

Willian Ferraz
Tradutor

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.