You are on page 1of 17

Publicar em del.icio.us Gernciamento avanado de discos com LVM.

Colaborao: Rodrigo Klein Santos Data de Publicao: 22 de Janeiro de 2005 Infelizmente o assunto bastante extenso, mas ao decorrer do tutorial vou sempre dar exemplos para tornar a leitura bastante didtica e clara. Vamos falar sobre uma ferramenta bastante difundida, o LVM, mas que as vezes por falta de informao acaba deixando de ser usada. O LVM (Logical Volume Manager) um "Gernciador de Volumes Lgicos", bastante flexive l, sua implementao no Linux segue os mesmos padres (comandos) do HP-UX, ento este tu torial servir tambm para o HP-UX, visto a similaridade dos comandos. Oque muda no HP-UX, que pra saber quais so os discos usa o comando # /usr/sbin/ioscan -fC disk No pense que voc no precisaria do LVM, por saber usar o "parted", so coisas distinta s, o LVM vai bem mais alm do que simplesmente aumentar uma partio... Quando comeamos a instalao de um novo servidor, geralmente j temos em mente qual ser a sua aplicao, a partir dessas informaes, definimos quantos filesystems teremos, qua l vai ser o tamanho deles, quantos discos etc... Mas como nem tudo perfeito, esse servidor pode ter depois um trafego maior do qu e o esperado, um numero de usuarios maior do que planejamos, enfim, so varias pos sibilidades que podem definitivamente te dar algum trabalho extra, de ter que au mentar uma partio, adcionar mais um disco, mas como fazer isso da melhor maneira p ossivel e sem traumas ? A resposta est no LVM... O objetivo deste tutorial tornar mais facil o uso do LVM por usurios de todos os niveis, visto que o LVM vem se tornando um importante recurso na administrao de se rvidores. Antes de iniciar a parte prtica, vamos entender alguns conceitos do LVM... PV = Phisical Volume : O disco em si, a partio fisica do disco. PE = Phisical Extends : Extenses fisicas, ou seja, pequenos pedaos de um VG, um VG dividido em varios PEs VG = Volume Group : Como o nome j diz, grupo de volumes. Um VG responsavel por ag rupar um ou mais dicos/Parties (PV - Volumes fisicos). LV = Logical Volume : o volume lgico, ou seja, uma partio (lgica) de um VG (Volume ico). Algumas observaes importantes... * Para alterar um LVOL, voc deve desmonta-lo antes. * NUNCA deixe de fazer backup (faa dois, cuidado nunca demais) antes de alter ar uma configurao de LVM. * Voc pode ter mais de um VG em um mesmo sistema (VG01, VG02, VG03), cada qua l com um ou mais discos...

* No misture discos SCSI/SATA/IDE em um mesmo VG, isso afeta a performance vi sto que eles tem velocidades diferentes, se voc estiver nesta situao, faa VGs distin tos para cada tipo. * NUNCA deixe de fazer backup (por via das dvidas estou escrecendo novamente esta observao!). * No tenha medo de usar LVM, ele j usado a bastante em *nix e bastante seguro, voc s tem a ganhar com sua utilizao. No exemplo abaixo usaremos um disco de 20GB para ilustrar... Vamos criar varias partioes no mesmo disco para melhor ilustrar o uso de LVM, lem bramos que no caso de vrios discos voc criaria uma partio por disco. Criamos 4 parties no /dev/hdd Saida do FDISK Disk /dev/hdd: 20.0 GB, 20060135424 bytes 16 heads, 63 sectors/track, 38869 cylinders Units = cilindros of 1008 * 512 = 516096 bytes Dispositivo Boot /dev/hdd1 /dev/hdd2 /dev/hdd3 /dev/hdd4 Start 1 9690 19379 29068 End 9689 19378 29067 38756 Blocks 4883224+ 4883256 4883256 4883256 83 83 83 83 Id System Linux Linux Linux Linux

Notem que elas esto com o "tipo" Linux (default do fdisk na hora d criao), prontas para receber o filesystem (ext2, ext3, reiserfs etc), mas no pra receberem LVM, p recisamos alterar isso..

[root@server root]# fdisk /dev/hdd O nmero de cilindros para este disco est configurado para 38869. No existe nada de errado, mas isto maior que 1024, e pode em certas configuraes causar problemas com : 1) programas que executam em tempo de inicializao (verses velhas do LILO) 2) inic ializao e programas de particionamento de outros OSs (p.ex., DOS FDISK, OS/2 FDISK ) Comando (m para ajuda): p Disk /dev/hdd: 20.0 GB, 20060135424 bytes 16 heads, 63 sectors/track, 38869 cylinders Units = cilindros of 1008 * 512 = 516096 bytes Dispositivo Boot /dev/hdd1 /dev/hdd2 /dev/hdd3 /dev/hdd4 Start 1 9690 19379 29068 End 9689 19378 29067 38756 Blocks 4883224+ 4883256 4883256 4883256 83 83 83 83 Id System Linux Linux Linux Linux

Comando (m para ajuda): t Nmero da partio (1-4): 1 Cdigo hexadecimal (digite L para listar os cdigos): 8e O tipo da partio 1 foi alterado para 8e (Linux LVM) Comando (m para ajuda): t Nmero da partio (1-4): 2

Cdigo hexadecimal (digite L para listar os cdigos): 8e O tipo da partio 2 foi alterado para 8e (Linux LVM) Comando (m para ajuda): t Nmero da partio (1-4): 3 Cdigo hexadecimal (digite L para listar os cdigos): 8e O tipo da partio 3 foi alterado para 8e (Linux LVM) Comando (m para ajuda): t Nmero da partio (1-4): 4 Cdigo hexadecimal (digite L para listar os cdigos): 8e O tipo da partio 4 foi alterado para 8e (Linux LVM) Comando (m para ajuda): p Disk /dev/hdd: 20.0 GB, 20060135424 bytes 16 heads, 63 sectors/track, 38869 cylinders Units = cilindros of 1008 * 512 = 516096 bytes Dispositivo Boot /dev/hdd1 /dev/hdd2 /dev/hdd3 /dev/hdd4 Start 1 9690 19379 29068 End 9689 19378 29067 38756 Blocks 4883224+ 4883256 4883256 4883256 8e 8e 8e 8e Id System Linux LVM Linux LVM Linux LVM Linux LVM

Comando (m para ajuda): w A tabela de parties foi alterada! Chamando ioctl() para reler tabela de parties. Sincronizando discos. [root@server root]# </prompt> Notem que alteramos o tipo da partio para "Linux LVM". *Acima voc pode notar como i sso foi feito no fdisk, para maiores informaes digite 'h' no fdisk ou consulte o m anual. Agora vamos dizer ao LVM oque (quais PVs) temos disponivel pra ele. Criando os PVs.

[root@server root]# pvcreate /dev/hdd1 No physical volume label read from /dev/hdd1 Physical volume "/dev/hdd1" successfully created [root@server root]# pvcreate /dev/hdd2 No physical volume label read from /dev/hdd2 Physical volume "/dev/hdd2" successfully created [root@server root]# pvcreate /dev/hdd3 No physical volume label read from /dev/hdd3 Physical volume "/dev/hdd3" successfully created [root@server root]# pvcreate /dev/hdd4 No physical volume label read from /dev/hdd4 Physical volume "/dev/hdd4" successfully created [root@server root]# </prompt>

Pronto, j mostramos para o LVM que ele tem 4 PVs disponiveis... Mas como sei se e le sabe disso ??? Use o comando.. #pvdisplay

[root@server root]# pvdisplay --- NEW Physical volume --PV Name /dev/hdd1 VG Name PV Size 4,66 GB Allocatable NO PE Size (KByte) 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID RiWHqR-gyYe-jlIQ-pjku-cdI8-cQ8M-Lkj2Y4 --- NEW Physical volume --PV Name /dev/hdd2 VG Name PV Size 4,66 GB Allocatable NO PE Size (KByte) 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID oEcEui-mhig-RF06-fBd5-opAK-1Psf-bV1FLp --- NEW Physical volume --PV Name /dev/hdd3 VG Name PV Size 4,66 GB Allocatable NO PE Size (KByte) 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID SwPpNo-Q1NR-OYPU-Tkah-y3ps-GsRs-3W4pSG --- NEW Physical volume --PV Name /dev/hdd4 VG Name PV Size 4,66 GB Allocatable NO PE Size (KByte) 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0

Criamos 4 PVs (Phisical Volume) em um disco... *Vale lembrar que esses PVs podem (e o comum) estarem em discos separados, estamos fazendo em um mesmo disco por no poder utilizar mais que um disco aqui (o servidor de produo!). ;-) Vamos criar 2 VGs... cada um com 2 PVs, usando o comando #vgcreate

[root@server root]# vgcreate VG01 /dev/hdd1 /dev/hdd2 Volume group "VG01" successfully created [root@server root]# vgcreate VG02 /dev/hdd3 /dev/hdd4 Volume group "VG02" successfully created [root@server root]#

Com o comando #vgcreate , criei 2 VGs, com o nome de VG01 e VG02 * O nome pode s er qualquer um, eu fao com VG01 e VG02, por ficar mais facil de identificar mas v oc pode criar por exemplo com nome 'bancodedados','email','www' e por ai vai... Vamos verificar se os VGs foram criados com o comando #vgdisplay.

[root@server root]# vgdisplay --- Volume group --VG Name VG02 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 255 Cur LV 0 Open LV 0 Max PV 255 Cur PV 2 Act PV 2 VG Size 9,31 GB PE Size 4,00 MB Total PE 2384 Alloc PE / Size 0 / 0 Free PE / Size 2384 / 9,31 GB VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN --- Volume group --VG Name System ID Format Metadata Areas Metadata Sequence No VG Access VG Status MAX LV Cur LV Open LV Max PV Cur PV Act PV VG Size PE Size Total PE Alloc PE / Size Free PE / Size VG UUID VG01 lvm2 2 1 read/write resizable 255 0 0 255 2 2 9,31 GB 4,00 MB 2384 0 / 0 2384 / 9,31 GB B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Podemos ver que realmente criamos 2 VG, cada um com 2 PV... Vamos agora explicar algumas linhas (as mais importantes) da saida do comando #v gdisplay Nome do VG: VG Name Acesso: VG Access Status: VG Status VG02 read/write resizable

Numero maximo de LVs (Logical Volume) : MAX LV 255 Numero de LVs no VG : Cur LV 0

Numero de LVs montados : Open LV 0 Numero maximo de PVs no VG : Max PV 255 Numero atual de PVs no VG : Cur PV 2 Tamanho do VG em GB/MB : VG Size 9,31 GB Tamanho de cada PE no VG (padro 4MB) : PE Size 4,00 MB Quantidade de PEs no VG. (multiplique este numero por 4 para saber o tamanho do VG) : Total PE 2384 Numero de PEs alocados : Alloc PE / Size 0 / 0 Numero de PEs livres : Free PE / Size 2384 / 9,31 GB Acima explicamos a saida do #vgdisplay, atentem bastante para os valores em PE, que geralmente so os mais importantes. Agora que j temos os VGs, temos que criar os LVs (LVOL), vamos utilizar o comando #lvcreate.

[root@server root]# lvcreate -l 1000 -n LV01 VG01 Logical volume "LV01" created

Para verificar oque voc fez, use o comando #lvdisplay Explicando o comando... lvcreate -l <numero de PEs> -n <nome do LV> <Nome do VG que voc quer criar o LV> Dica : Voc tambm pode usar o L (Maisculo) para determinar o tamanho em MB, para mai ores informaes #man lvcreate .

[root@server root]# lvdisplay --- Logical volume --LV Name /dev/VG01/LV01 VG Name VG01 LV UUID rQw1cG-jppl-TSJj-1wVw-8kud-oE5L-Jr1c46 LV Write Access read/write LV Status available # open 0 LV Size 3,91 GB Current LE 1000 Segments 1 Allocation next free (default) Read ahead sectors 0 Block device 253:0

Criamos um LV com 3.91GB, mas como se eu no informei o tamanho ? Informamos sim o tamanho, mas em PE, e vamos lembrar que cada PE equivale a 4MB... Logo 1000 x 4 = 4gb , que em miudos deu 3.91GB. S a titulo de curiosidade, vou novamente executar o comando vgdisplay, para ver o que mudou...

[root@server root]# vgdisplay VG01 --- Volume group --VG Name VG01 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 2 VG Access read/write VG Status resizable MAX LV 255 Cur LV 1 Open LV 0 Max PV 255 Cur PV 2 Act PV 2 VG Size 9,31 GB PE Size 4,00 MB Total PE 2384 Alloc PE / Size 1000 / 3,91 GB Free PE / Size 1384 / 5,41 GB VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Notem as linhas: Cur LV Alloc PE / Size Free PE / Size 1 1000 / 3,91 GB 1384 / 5,41 GB

Dispensa explicaes, visto que j falamos sobre o assunto um pouco acima... Dica : Us e o comando #vgdisplay com a opo '-v' para ter maiores informaes sobre o VG. J criamos um VG, um LV mas ainda no estamos utilizando eles. Agora basta formatar o mesmo com o filesystem desejado e comear a utilizar. Por exemplo, vamos formatar ele com ext2. Vamos formatar onde ? /dev/hdd1, /dev/hdd2 ??? No..! Lembra do comando lvdisplay, l temos o local que devemos usar agora, que nada mais do que uma partio (lgica) do LVM. Vamos formatar este com o sistema de arquivos ext2. Ele est em /dev/<nome_do_VG>/<nome_do_LV>

[root@server root]# mke2fs /dev/VG01/LV01 mke2fs 1.35 (28-Feb-2004) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 768544 inodes, 1536000 blocks 76800 blocks (5.00%) reserved for the super user First data block=0 47 block groups 32768 blocks per group, 32768 fragments per group 16352 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 25 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.

Agora vamos montar o sistema de arquivos....

[root@server root]# mkdir /LVM1 [root@server root]# mount /dev/VG01/LV01 /LVM1

[root@server root]# df -h Sist. Arq. Tam Usad Disp Uso% Montado em /dev/hda2 28G 16G 10G 62% / /dev/hda1 145M 5,9M 132M 5% /boot none 507M 0 507M 0% /dev/shm /dev/mapper/VG01-LV01 3,9G 33M 3,7G 1% /LVM1

Pronto, o seu LVM est pronto pra usar... Mas ainda no conseguimos ver a principal utilidade do LVM com os exemplos acima.. A principal utilidade do LVM que voc pod e aumentar ou diminuir seu LV... Como exemplo vamos aumentar o nosso primeiro LV. Ele tem 3.9GB Usaremos o comando #lvextend

[root@server root]# umount /LVM1 [root@server root]# lvextend -l+500 /dev/VG01/LV01 Extending logical volume LV01 to 5,86 GB Logical volume LV01 successfully resized [root@server root]# mount /dev/VG01/LV01 /LVM1/ [root@server root]# df -h Sist. Arq. Tam Usad Disp Uso% Montado em /dev/hda2 28G 16G 10G 62% / /dev/hda1 145M 5,9M 132M 5% /boot none 507M 0 507M 0% /dev/shm /dev/mapper/VG01-LV01 5,8G 20K 5,5G 1% /LVM1

Aumentamos o nosso LV01 em mais 500 PEs, totalizando agora 5,86GB (antes 3,9GB). Mas no aumentamos ainda o sistema de arquivos nos novos PEs.. Para isso usaremos o #resize2fs. Desmonte o seu LV antes.

[root@server root]# umount /LVM1 [root@server root]# resize2fs /dev/VG01/LV01 resize2fs 1.35 (28-Feb-2004) The filesystem is already 1536000 blocks long. Nothing to do!

Nota.. Para sistemas de arquivos reiserfs, utilize o comando #resize_reiserfs Pronto, agora j aumentamos um determinado LV, mas e como reduzi-lo ???

Essa opo tambm bastante comum, visto que as vezes podemos ter necessidade de mais e spao em disco e no temos a opo de comprar ou colocar mais um disco, oque podemos faz er diminuir um determinado LV para poder alocar mais PEs em outro LV. Vale lembr ar que eles devem estar no mesmo VG. Utilizaremos o comando #lvreduce. *Neste caso, faa backup, pois voc VAI perder seus dados.. O Backup importante tant o pra aumentar o LV quanto para diminuir, mas no caso de aumentar, voc s perde dad os se der algum problema 'anormal' (ex: queda de energia durante o processo), ma s mesmo assim bastante importante fazer backup, nunca se sabe !

[root@server root]# umount /LVM1/ [root@server root]# lvreduce -l-800 /dev/VG01/LV01 WARNING: Reducing active logical volume to 2,73 GB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce LV01? [y/n]: y Logical volume LV01 successfully resized [root@server root]# mke2fs /dev/VG01/LV01 mke2fs 1.35 (28-Feb-2004) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 359040 inodes, 716800 blocks 35840 blocks (5.00%) reserved for the super user First data block=0 22 block groups 32768 blocks per group, 32768 fragments per group 16320 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 27 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@server root]# mount /dev/VG01/LV01 /LVM1/ [root@server root]# df -h Sist. Arq. Tam Usad Disp Uso% Montado em /dev/hda2 28G 16G 10G 62% / /dev/hda1 145M 5,9M 132M 5% /boot none 507M 0 507M 0% /dev/shm /dev/mapper/VG01-LV01 2,7G 20K 2,6G 1% /LVM1

Utilizamos o #lvreduce para diminuir o tamanho de um LV. Mas existem casos tambm que temos que aumentar o tamano de um VG, e como fariamos ? Como temos 4 PVs, vamos tirar um do VG02 e colocar no VG01.

Vamos criar um segundo LV (LV02) no VG01 para preencher todo o espao do VG01 (par a ilustrar um caso real), para que quando adcionar o novo PV, ele aumente o espao em PE que de 0 (zero). *Relembrando - lvcreate -l <numero de PEs> -n <nome do LV> <Nome do VG>

[root@server root]# lvcreate -l 1684 -n LV02 VG01 Logical volume "LV02" created [root@server root]# mkfs.ext2 /dev/VG01/LV02 mke2fs 1.35 (28-Feb-2004) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) 863264 inodes, 1724416 blocks 86220 blocks (5.00%) reserved for the super user First data block=0 53 block groups 32768 blocks per group, 32768 fragments per group 16288 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Writing inode tables: done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@server root]# vgdisplay VG01 --- Volume group --VG Name VG01 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 7 VG Access read/write VG Status resizable MAX LV 255 Cur LV 2 Open LV 1 Max PV 255 Cur PV 2 Act PV 2 VG Size 9,31 GB PE Size 4,00 MB Total PE 2384 Alloc PE / Size 2384 / 9,31 GB Free PE / Size 0 / 0 VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh

Podemos notar que agora o VG01 no tem mais nenhum PE livre. Free PE / Size 0 / 0 Abaixo vamos conferir o resultado de um #df e do comando vgdisplay, agora com os

dois LVs

[root@server root]# mkdir /LVM2 [root@server root]# mount /dev/VG01/LV02 /LVM2 [root@server root]# df -h Sist. Arq. Tam Usad Disp Uso% Montado em /dev/hda2 28G 16G 10G 62% / /dev/hda1 145M 5,9M 132M 5% /boot none 507M 0 507M 0% /dev/shm /dev/mapper/VG01-LV01 2,7G 20K 2,6G 1% /LVM1 /dev/mapper/VG01-LV02 6,5G 20K 6,2G 1% /LVM2

Podemos notar agora que o nosso VG est com todos os seus PEs alocados, mas temos a situao que preciso aumentar a partio LV01, como fao ? [root@server root]# vgdisplay -v VG01 Using volume group(s) on command line Finding volume group "VG01" --- Volume group --VG Name VG01 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 7 VG Access read/write VG Status resizable MAX LV 255 Cur LV 2 Open LV 2 Max PV 255 Cur PV 2 Act PV 2 VG Size 9,31 GB PE Size 4,00 MB Total PE 2384 Alloc PE / Size 2384 / 9,31 GB Free PE / Size 0 / 0 VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh --- Logical volume --LV Name /dev/VG01/LV01 VG Name VG01 LV UUID rQw1cG-jppl-TSJj-1wVw-8kud-oE5L-Jr1c46 LV Write Access read/write LV Status available # open 1 LV Size 2,73 GB Current LE 700 Segments 1 Allocation next free (default) Read ahead sectors 0 Block device 253:0

--- Logical volume --LV Name /dev/VG01/LV02 VG Name VG01 LV UUID SXgnqF-GZrH-dEax-LKno-4y44-SRp3-Q9rFU4 LV Write Access read/write LV Status available # open 1 LV Size 6,58 GB Current LE 1684 Segments 2 Allocation next free (default) Read ahead sectors 0 Block device 253:1 --- Physical volumes PV Name PV UUID PV Status Total PE / Free PE PV Name PV UUID PV Status Total PE / Free PE --/dev/hdd1 RiWHqR-gyYe-jlIQ-pjku-cdI8-cQ8M-Lkj2Y4 allocatable 1192 / 0 /dev/hdd2 oEcEui-mhig-RF06-fBd5-opAK-1Psf-bV1FLp allocatable 1192 / 0

No tenho mais discos, apenas tenho PV sobrando no VG02, por isso vou tirar ele de l e colocar no VG01 para depois aumentar o espao daquela partio. Utilizaremos o comando #vgreduce.

[root@server root]# vgreduce VG02 /dev/hdd3 Removed "/dev/hdd3" from volume group "VG02" [root@server root]# vgdisplay -v VG02 Using volume group(s) on command line Finding volume group "VG02" --- Volume group --VG Name VG02 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 2 VG Access read/write VG Status resizable MAX LV 255 Cur LV 0 Open LV 0 Max PV 255 Cur PV 1 Act PV 1 VG Size 4,66 GB PE Size 4,00 MB Total PE 1192 Alloc PE / Size 0 / 0 Free PE / Size 1192 / 4,66 GB VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN --- Physical volumes ---

PV Name PV UUID PV Status Total PE / Free PE

/dev/hdd4 BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0 allocatable 1192 / 1192

Notamos que o PV /dev/hdd3 no est mais no VG02. Agora vamos adciona-lo ao nosso VG01 que est necessitando de espao. [root@server root]# vgextend VG01 /dev/hdd3 Volume group "VG01" successfully extended Agora vamos verificar que o nosso VG01 tem mais PEs livres (no tinha, estava com 0, lembra ?), devido a nossa ao de adcionar mais um PV neste VG. Comando #vgdisplay [root@server root]# vgdisplay VG01 --- Volume group --VG Name VG01 System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 8 VG Access read/write VG Status resizable MAX LV 255 Cur LV 2 Open LV 2 Max PV 255 Cur PV 3 Act PV 3 VG Size 13,96 GB PE Size 4,00 MB Total PE 3575 Alloc PE / Size 2384 / 9,31 GB Free PE / Size 1191 / 4,65 GB VG UUID B0o0rf-zvO1-uYT0-GW9L-kOez-H37z-0RzHIh Agora o nosso VG01 tem mais 1191 PEs disponiveis, e vou adcionar ele ao LV01 Abaixo a sequencia de comandos para verificar e para adcionar. [root@server root]# lvextend -l+1191 /dev/VG01/LV01 Extending logical volume LV01 to 7,39 GB Logical volume LV01 successfully resized [root@server root]# resize2fs /dev/VG01/LV01 resize2fs 1.35 (28-Feb-2004) Please run 'e2fsck -f /dev/VG01/LV01' first. [root@server root]# e2fsck -f /dev/VG01/LV01 e2fsck 1.35 (28-Feb-2004) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information

/dev/VG01/LV01: 11/359040 files (0.0% non-contiguous), 11281/716800 blocks [root@server root]# resize2fs /dev/VG01/LV01 resize2fs 1.35 (28-Feb-2004) Resizing the filesystem on /dev/VG01/LV01 to 1936384 (4k) blocks. The filesystem on /dev/VG01/LV01 is now 1936384 blocks long. [root@server root]# mount /dev/VG01/LV01 /LVM1 [root@server root]# df -h Sist. Arq. Tam Usad Disp Uso% Montado em /dev/hda2 28G 16G 10G 62% / /dev/hda1 145M 5,9M 132M 5% /boot none 507M 0 507M 0% /dev/shm /dev/mapper/VG01-LV02 6,5G 20K 6,2G 1% /LVM2 /dev/mapper/VG01-LV01 7,3G 20K 7,0G 1% /LVM1 Notem que a nossa partio LVM1 (LV01) j est redimensionada. Abaixo a titulo didtico, vou apagar o VG02, j que no o utilizamos, criamos ele apen as para fins didticos, e vamos apaga-lo para demonstrar mais alguns comandos do p acote LVM Vou criar um LV no VG02 apenas para demonstrar como deleta-lo. [root@server root]# lvcreate -l1000 -n LV03 VG02 Logical volume "LV03" created [root@server root]# vgdisplay -v VG02 Using volume group(s) on command line Finding volume group "VG02" --- Volume group --VG Name VG02 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 255 Cur LV 1 Open LV 0 Max PV 255 Cur PV 1 Act PV 1 VG Size 4,66 GB PE Size 4,00 MB Total PE 1192 Alloc PE / Size 1000 / 3,91 GB Free PE / Size 192 / 768,00 MB VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN --- Logical volume --LV Name /dev/VG02/LV03 VG Name VG02 LV UUID PPAHOG-v4d2-hClM-nUKy-crnG-0V3A-kwb6pw LV Write Access read/write LV Status available # open 0

LV Size Current LE Segments Allocation Read ahead sectors Block device --- Physical volumes PV Name PV UUID PV Status Total PE / Free PE

3,91 GB 1000 1 next free (default) 0 253:2 --/dev/hdd4 BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0 allocatable 1192 / 192

Deletando o LV (LV03) que acabamos de criar. [root@server root]# lvremove /dev/VG02/LV03 Do you really want to remove active logical volume "LV03"? [y/n]: y Logical volume "LV03" successfully removed [root@server root]# vgdisplay -v VG02 Using volume group(s) on command line Finding volume group "VG02" --- Volume group --VG Name VG02 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 255 Cur LV 0 Open LV 0 Max PV 255 Cur PV 1 Act PV 1 VG Size 4,66 GB PE Size 4,00 MB Total PE 1192 Alloc PE / Size 0 / 0 Free PE / Size 1192 / 4,66 GB VG UUID iWiIv6-L0FT-K0gV-JzJh-a8l5-1ouZ-H4r3yN --- Physical volumes PV Name PV UUID PV Status Total PE / Free PE Deletando o VG02 [root@server root]# vgremove VG02 Volume group "VG02" successfully removed Deletando o PV do LVM, vamos supor que este disco tenha dado problemas fisicos, e voc vi tirar este disco (neste caso uma partio), mas em produo seria um disco. comando #pvremove [root@server root]# pvremove /dev/hdd4 --/dev/hdd4 BFGFCi-2rKb-As0v-ucBy-ghkn-y869-yXcIm0 allocatable 1192 / 1192

Labels on physical volume "/dev/hdd4" successfully wiped You have new mail in /var/spool/mail/root Coloque outro disco, particione, formate pra LVM, crie o PV, adcione ele a um VG , e depois a um LV... Bem vindo ao LVM. :-) *Dica: caso algum VG esteja inativo, ative-o com o comando #vgchange -ay , isso ativar todos os VGs disponiveis. Veja a relao completa dos artigos de Rodrigo Klein Santos Referncias Adicionais Referncias adicionais sobre os assuntos abordados neste site podem ser encontrada s em nossa Bibliografia.

You might also like